Mo *_*Dev 1 android android-intent android-image
我想从图库中选择一张图像并获取它的路径。这是我用来打开画廊的代码
Intent intent = new Intent();
intent.setType("image/*");
intent.setAction(Intent.ACTION_GET_CONTENT);
startActivityForResult(Intent.createChooser(intent,
"Select Picture"), 1111);
Run Code Online (Sandbox Code Playgroud)
和onActivityResult
protected void onActivityResult(int requestCode, int resultCode, Intent imageReturnedIntent) {
super.onActivityResult(requestCode, resultCode, imageReturnedIntent);
if (resultCode == RESULT_OK) {
Uri selectedImageUri = imageReturnedIntent.getData();
String[] filePathColumn = {MediaStore.Images.Media.DATA};
Cursor cursor = getContentResolver().query(selectedImageUri, filePathColumn, null, null, null);
cursor.moveToFirst();
int columnIndex = cursor.getColumnIndex(filePathColumn[0]);
String filePath = cursor.getString(columnIndex);
cursor.close();
Log.d("TAG", "onActivityResult: " + filePath);
}
}
Run Code Online (Sandbox Code Playgroud)
filePathnull如果我从默认系统图像选择器中选择图像,则总是如此,尽管如果从图库应用程序中选择图像,它工作正常。我的代码有什么问题?
不需要从 the或 a 中ACTION_GET_CONTENT返回 a ,否则具有列。UriMediaStoreUriDATA
另请注意,您无权访问Android 10 及更高版本上的DATA值列MediaStore Uri,因此“工作正常”只是暂时有效。
我想从图库中选择一张图像并获取它的路径
没有路。用户可以从云存储提供商(例如 Google Drive)中选择一段内容。
也可以看看:
| 归档时间: |
|
| 查看次数: |
2814 次 |
| 最近记录: |