【问题标题】:Result for MediaStore.ACTION_IMAGE_CAPTURE is always -1 but no data is returnedMediaStore.ACTION_IMAGE_CAPTURE 的结果始终为 -1,但不返回任何数据
【发布时间】:2020-03-24 15:24:25
【问题描述】:

我正在尝试使用以下代码(分别)从画廊/相机中选择/捕获图像:

val pickIntent = Intent()
        pickIntent.type = "image/*"
        pickIntent.action = Intent.ACTION_GET_CONTENT
        val takePhotoIntent = Intent(MediaStore.ACTION_IMAGE_CAPTURE)
        val pickTitle = "Select or take a new Picture"
        val chooserIntent = Intent.createChooser(pickIntent, pickTitle)
        chooserIntent.putExtra(
            Intent.EXTRA_INITIAL_INTENTS, arrayOf(takePhotoIntent)
        )
        startActivityForResult(chooserIntent, REQUEST_IMAGE_CAPTURE)

但是,当调用 onActivityResult 函数时,我总是得到活动的结果代码为 -1。调用相机时,如果没有使用图库选项,我似乎有数据。

我没有任何异常要返回,也不知道要调试什么。

我正在使用模拟器来测试我的应用程序。

【问题讨论】:

标签: android android-camera mediastore


【解决方案1】:

此“活动结果代码为 -1”表示RESULT_OK。 使用 '.getData()' 检索结果,并决定你想用它做什么。

    switch (requestCode) {
      case REQUEST_IMAGE_CAPTURE: {
        if (resultCode == RESULT_OK) {
          try {
            Uri uri = data.getData();
            Log.d(TAG, uri.toString());
          } catch (Exception e) { e.printStackTrace(); }
        }
      } break;
      default: break;
    }

【讨论】:

  • 但是我没有从相机返回的数据
  • 向问题添加了更多信息
猜你喜欢
  • 1970-01-01
  • 2011-04-01
  • 2022-09-14
  • 1970-01-01
  • 2021-08-07
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多