Android Samsung ACTION_IMAGE_CAPTURE 未保存为正确的文件名
Android Samsung ACTION_IMAGE_CAPTURE does not save to correct filename
经过几个小时的调试,我无法将三星 Android phone 上的图片 Intent 保存到正确的文件中。以下代码 (Kotlin):
val filename=File(getExternalStorageDirectory()?.toString()+"/test.jpg")
if (filename != null) {
val takePictureIntent=Intent(MediaStore.ACTION_IMAGE_CAPTURE)
takePictureIntent.putExtra(MediaStore.EXTRA_OUTPUT, filename)
startActivityForResult(takePictureIntent, REQUEST_IMAGE_CAPTURE)
}
它将始终保存在 sdcard/DCIM/Camera/20181104_181922.jpg(即日期和时间)文件名的文件夹中。
有人知道为什么吗?
此外,onActivityResult 的 return 值不显示文件名,仅显示 "null"。请参阅以下代码:我做错了什么?
override fun onActivityResult(requestCode:Int, resultCode:Int, data:Intent?) {
...
val returnedFilename = data?.getData()
...
}
Does anyone have an idea why?
EXTRA_OUTPUT
是提示,不是命令。理想情况下,所有相机应用程序都会将其作为 ACTION_IMAGE_CAPTURE
处理的一部分。没有要求他们这样做,许多相机应用程序有 ACTION_IMAGE_CAPTURE
没有实现。
Also the return value of onActivityResult does not show the filename but only "null"
ACTION_IMAGE_CAPTURE
未记录到 return 到 Uri
到 onActivityResult()
。所以,它应该是 null
.
经过几个小时的调试,我无法将三星 Android phone 上的图片 Intent 保存到正确的文件中。以下代码 (Kotlin):
val filename=File(getExternalStorageDirectory()?.toString()+"/test.jpg")
if (filename != null) {
val takePictureIntent=Intent(MediaStore.ACTION_IMAGE_CAPTURE)
takePictureIntent.putExtra(MediaStore.EXTRA_OUTPUT, filename)
startActivityForResult(takePictureIntent, REQUEST_IMAGE_CAPTURE)
}
它将始终保存在 sdcard/DCIM/Camera/20181104_181922.jpg(即日期和时间)文件名的文件夹中。
有人知道为什么吗?
此外,onActivityResult 的 return 值不显示文件名,仅显示 "null"。请参阅以下代码:我做错了什么?
override fun onActivityResult(requestCode:Int, resultCode:Int, data:Intent?) {
...
val returnedFilename = data?.getData()
...
}
Does anyone have an idea why?
EXTRA_OUTPUT
是提示,不是命令。理想情况下,所有相机应用程序都会将其作为 ACTION_IMAGE_CAPTURE
处理的一部分。没有要求他们这样做,许多相机应用程序有 ACTION_IMAGE_CAPTURE
没有实现。
Also the return value of onActivityResult does not show the filename but only "null"
ACTION_IMAGE_CAPTURE
未记录到 return 到 Uri
到 onActivityResult()
。所以,它应该是 null
.