[英]Open Image in default android image viewer
我正在尝试制作一个使用相机捕获图像的应用程序。
获取位图的代码是:
super.onActivityResult(requestCode, resultCode, data);
if (resultCode == RESULT_OK){
Bundle extras = data.getExtras();
bmp = (Bitmap) extras.get("data");
iv.setImageBitmap(bmp);
}
现在,我想使用android的默认图像查看器查看图像,而不将其保存到内部或外部存储中。
我该如何实现?
我尝试启动Intent.ACTION_VIEW
但这需要进行uri辩论,因为我没有保存图像,所以我没有。
现在,我想使用android的默认图像查看器查看图像,而不将其保存到内部或外部存储中。
索里它不可能还没有在Android中,
对于您的应用程序,图像查看器是第三方应用程序,并且第三方应用程序不能直接使用您的对象数据。
如果设备存储的大小确实对您很重要,那么最好将图像保存在应用程序的缓存中
要么
您可以将该图像保存在设备存储中,使用第三方应用程序查看它,然后再将其删除。
请尝试使用以下代码。
// open camera
try {
Intent action = new Intent(
"android.media.action.IMAGE_CAPTURE");
action.putExtra(
MediaStore.EXTRA_OUTPUT,
MediaStore.Images.Media.EXTERNAL_CONTENT_URI
.toString());
startActivityForResult(action,
TAKE_PICTURE_FROM_CAMERA);
} catch (Exception e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
// save image
super.onActivityResult(requestCode, resultCode, data);
if (resultCode == RESULT_OK) {
bmp = (Bitmap) data.getExtras().get("data");
iv.setImageBitmap(bmp);
}
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.