SecurityException при загрузке изображений с помощью Universal-Image-Downloader
В моем приложении я использовал универсальный загрузчик изображений BaseImageDownloader class для синхронной загрузки содержимого галереи. Для того же содержимого из Imageloader.getInstance (). LoadImage Асинхронная функция не дает никаких исключений безопасности и загружает изображение в том виде, в каком оно есть, но когда Я пытаюсь загрузить его синхронно, используя BaseImageDownloader (также Imageloader.getInstance (). LoadImage () делает то же самое), я получаю это исключение безопасности
09-02 18:49:43.971: W/System.err(4244): java.lang.SecurityException: Permission Denial: reading com.android.gallery3d.provider.GalleryProvider uri content://com.google.android.gallery3d.provider/picasa/item/5879964074642783474 from pid=4244, uid=10064 requires com.google.android.gallery3d.permission.GALLERY_PROVIDER, or grantUriPermission()
09-02 18:49:43.971: W/System.err(4244): at android.os.Parcel.readException(Parcel.java:1425)
09-02 18:49:43.971: W/System.err(4244): at android.database.DatabaseUtils.readExceptionFromParcel(DatabaseUtils.java:185)
09-02 18:49:43.971: W/System.err(4244): at android.database.DatabaseUtils.readExceptionWithFileNotFoundExceptionFromParcel(DatabaseUtils.java:148)
09-02 18:49:43.971: W/System.err(4244): at android.content.ContentProviderProxy.openTypedAssetFile(ContentProviderNative.java:617)
09-02 18:49:43.971: W/System.err(4244): at android.content.ContentResolver.openTypedAssetFileDescriptor(ContentResolver.java:717)
09-02 18:49:44.011: W/System.err(4244): at android.content.ContentResolver.openAssetFileDescriptor(ContentResolver.java:614)
09-02 18:49:44.011: W/System.err(4244): at android.content.ContentResolver.openInputStream(ContentResolver.java:449)
09-02 18:49:44.011: W/System.err(4244): at com.nostra13.universalimageloader.core.download.BaseImageDownloader.getStreamFromContent(BaseImageDownloader.java:156)
09-02 18:49:44.011: W/System.err(4244): at com.nostra13.universalimageloader.core.download.BaseImageDownloader.getStream(BaseImageDownloader.java:88)
09-02 18:49:44.011: W/System.err(4244): at com.uploader.data.UploadImageData.decodeSampledBitmapFromStream(UploadImageData.java:80)
Также я искал код, и вы не принимаете никаких разрешений для этого на конфигурации или где-то еще, что будет причиной?
public Bitmap decodeSampledBitmapFromStream(String path, int reqWidth, int reqHeight) throws IOException {
BaseImageDownloader downloader = new BaseImageDownloader(getApplicationContext());
InputStream stream = downloader.getStream(path, null);
final BitmapFactory.Options options = new BitmapFactory.Options();
options.inJustDecodeBounds = true;
BitmapFactory.decodeStream(stream, new Rect(-1,-1,-1,-1), options);
stream.close();
options.inSampleSize = calculateInSampleSize(options, reqWidth, reqHeight);
options.inJustDecodeBounds = false;
stream = downloader.getStream(path, null);
Bitmap bitmap = BitmapFactory.decodeStream(stream, new Rect(-1,-1,-1,-1), options);
stream.close();
return bitmap;
}