我正在使用以下代码启动相机意图:
val takePictureIntent = Intent(MediaStore.ACTION_IMAGE_CAPTURE)
takePictureIntent.addFlags(Intent.FLAG_GRANT_WRITE_URI_PERMISSION)
takePictureIntent.addFlags(Intent.FLAG_GRANT_READ_URI_PERMISSION)
val file = viewModel.createImageFile(context, "somefile.jpg")
viewModel.destinationImageFile = file
val photoUri = FileProvider.getUriForFile(context, "${BuildConfig.APPLICATION_ID}.provider", file)//"${applicationId}.provider"
takePictureIntent.putExtra(MediaStore.EXTRA_OUTPUT, photoUri)
startActivityForResult(takePictureIntent, TAKE_PICTURE_RESULT_CODE)
但是,当我收到并处理意图时,它看起来像这样:
为什么我不找回保存图像的网址?
最佳答案
为什么我不找回保存图像的网址?
因为它不应该。文档没有说ACTION_IMAGE_CAPTURE
返回Uri
。
就您而言,您要提供EXTRA_OUTPUT
。在这种情况下,ACTION_IMAGE_CAPTURE
应该不返回任何内容(结果代码除外)。您知道图像应该在哪里:为EXTRA_OUTPUT
提供的值。因此,在那寻找图像。