【问题标题】:An intent to invoke a camera, shot a picture and receive the uri?意图调用相机、拍摄照片并接收 uri?
【发布时间】:2013-02-12 08:16:08
【问题描述】:

我的应用程序使用Camera API 从相机拍照。

但是,我更愿意调用stock Camera application 并接收已保存图片的Uri

(我更喜欢这种方式,因为相机应用程序有许多现成的可用功能,否则我必须在我的应用程序中编写代码)。

您是否知道以这种方式调用 stock Camera 的意图?

【问题讨论】:

    标签: android android-intent camera


    【解决方案1】:

    要利用默认Camera API并取回保存的图片URI,您可以使用此answer

    【讨论】:

      【解决方案2】:

      试试这样的:

      Intent intent = new Intent(MediaStore.ACTION_IMAGE_CAPTURE);
      startActivityForResult(intent, 100);
      

      并尝试检索图像:

      protected void onActivityResult(int requestCode, int resultCode, Intent data) {
      super.onActivityResult(requestCode, resultCode, data);
      Bitmap bitmap = null;
          if (requestCode == IMAGE_CAPTURE_REQUEST_CODE) {
            if (resultCode == Activity.RESULT_OK) {
              try {
                bitmap = (Bitmap) intent.getExtras().get("data");
              } catch (Exception e) {
                e.printStackTrace();
              }
            }
          }
      }
      

      【讨论】:

        【解决方案3】:

        使用相机捕捉图像调用这个意图

        Intent cameraIntent = new Intent(android.provider.MediaStore.ACTION_IMAGE_CAPTURE);
        startActivityForResult(cameraIntent, requestCode);
        

        并使用 onActivityResult 函数处理回调

        protected void onActivityResult(int requestCode, int resultCode, Intent data) {
        
        Bitmap mImageBitmap;
                    Bundle extras = data.getExtras();
                    mImageBitmap = Bitmap.createScaledBitmap(
                            (Bitmap) extras.get("data"), 100, 100, false);
        }
        

        mImageBitmap 将保存您捕获的图像

        【讨论】:

          猜你喜欢
          • 2011-05-22
          • 1970-01-01
          • 1970-01-01
          • 1970-01-01
          • 1970-01-01
          • 1970-01-01
          • 1970-01-01
          • 1970-01-01
          • 1970-01-01
          相关资源
          最近更新 更多