intent.putExtra(MediaStore.EXTRA_OUTPUT, imageUri); 在onActivityResult 为获取到图片uri
时间: 2024-09-11 15:03:19 浏览: 46
`intent.putExtra(MediaStore.EXTRA_OUTPUT, imageUri);` 这行代码是在Android开发中用于Intent启动相机或相册应用拍摄照片时设置返回结果的一个常见做法。当用户完成拍照操作并选择保存,这个 Intent 将指定拍好的照片将保存到哪个 Uri(统一资源标识符),通常是一个 ContentProvider 提供的内容地址。
在 `onActivityResult` 方法中,开发者会检查相机或其他来源返回的结果,通过意图(Intent)的数据部分来获得用户的拍照结果。例如:
```java
@Override
protected void onActivityResult(int requestCode, int resultCode, Intent data) {
if (requestCode == CAMERA_REQUEST && resultCode == RESULT_OK) {
// 检查如果请求码匹配并且结果是成功的
Uri selectedImage = data.getData(); // 获取Uri,这将是新拍摄的照片URI
// ... 进行后续处理,比如显示图片、保存到数据库等
}
super.onActivityResult(requestCode, resultCode, data);
}
```
在这里,`requestCode` 和 `resultCode` 分别是请求码和结果代码,`data.getData()` 用来从 Intent 中提取 Uri。如果用户取消了操作,`resultCode` 可能不会是 RESULT_OK,这时可以做相应的错误处理。
阅读全文