如何将 URI 传递给意向?

2022-08-31 09:23:18

我正在尝试将 URI 对象传递给我的 Intent,以便在另一个活动中使用该 URI。

如何传递 URI?

private Uri imageUri;
....
Intent intent = new Intent(this, GoogleActivity.class);
intent.putExtra("imageUri", imageUri);
startActivity(intent);
this.finish();

我现在如何在其他活动中使用此 URI?

 imageUri = extras.getString("imageUri"); // I know thats wrong ...

答案 1

您可以将 uri 存储为字符串

intent.putExtra("imageUri", imageUri.toString());

然后像这样将字符串转换回uri

Uri myUri = Uri.parse(extras.getString("imageUri"));

答案 2

该类实现 ,因此您可以直接从UriParcelableIntent

// Add a Uri instance to an Intent
intent.putExtra("imageUri", uri);

// Get a Uri from an Intent
Uri uri = intent.getParcelableExtra("imageUri");

您可以对任何实现的对象使用相同的方法,如果需要,可以在自己的对象上实现。ParcelableParcelable


推荐