我正在使用以下代码挑选照片:
Intent intent =new Intent(Intent.ACTION_GET_CONTENT);
intent.setType("image/*");
startActivityForResult(intent, 100);
并返回以下结果:
InputStream inputStream = getContentResolver().openInputStream(data.getData());
Bitmap bmp1 = BitmapFactory.decodeStream(inputStream);
这对前棒棒糖效果很好,但它说棒棒糖及以上的“不幸的是应用程序停止了”。我是否需要棒棒糖及以上的任何权限?自棒棒糖以来有什么变化吗?请指导我/建议一个简单的方法来挑选棒棒糖及以上的照片。
答案 0 :(得分:1)
使用以下方式
Intent intent = new Intent(Intent.ACTION_GET_CONTENT, android.provider.MediaStore.Images.Media.EXTERNAL_CONTENT_URI);
intent.setType("image/*");
startActivityForResult(intent, Const.PICK_IMAGE_REQUEST);
或使用自定义布局和活动
我已经开发了它。请检查以下所有Android 4.0或更高版本的链接。你不需要请求许可,因为它的目标版本是22。 https://github.com/rajscet/Photo_Picker_Git
答案 1 :(得分:0)
我是否需要棒棒糖及以上的任何权限?
您应该暂停READ_EXTERNAL_STORAGE
或WRITE_EXTERNAL_STORAGE
。请注意,在Android 6.0及更高版本中,如果您的targetSdkVersion
为23或更高,则需要使用运行时权限向用户请求此权限,因为这些权限为dangerous
。