0

Я работаю над приложением, где я слушаю запросы об обращении к изображениям.не удалось загрузить Glide с uri

 <intent-filter> 
      <action android:name="android.intent.action.SEND"/> 
      <category android:name="android.intent.category.DEFAULT" /> 
      <data android:mimeType="image/*"/> 
     </intent-filter> 
     <intent-filter> 
      <action android:name="android.intent.action.SEND_MULTIPLE"/> 
      <category android:name="android.intent.category.DEFAULT" /> 
      <data android:mimeType="image/*"/> 
     </intent-filter> 

Я могу получить Uri (s) изображений общего пользования.

частный ArrayList mGalleryImagesList;

if(recievedAction == Intent.ACTION_SEND){ 
    mSelectedImages.add(Uri.parse(extras.get(Intent.EXTRA_STREAM).toString())); 
       } 
       else if(recievedAction == Intent.ACTION_SEND_MULTIPLE){ 
        ArrayList<Parcelable> fileList = getIntent().getParcelableArrayListExtra(Intent.EXTRA_STREAM); 

        for (Parcelable file: 
         fileList) { 
         mSelectedImages.add(Uri.parse(file.toString())); 
        } 
       } 

}

Однако, когда я пытаюсь загрузить ImageView, используя Glide, он не загружается, я вижу только обладателю место.

...

@Override общественности недействительным onBindViewHolder (держатель ViewHolder, конечное положение INT) {

Glide.with (mContext) 
      .load(mGalleryImagesList.get(position)) 
      .centerCrop() 
      .placeholder(R.drawable.image_loading) 
      .crossFade() 
      .into(holder.imgAlbum); 

}

Пример Ури, который я получил, когда я поделился фотографией с помощью Приложение «Фотографии» для моего приложения. содержание: //com.google.android.apps.photos.contentprovider/-1/1/content%3A%2F%2Fmedia%2Fexternal%2Ffile%2F3924/ORIGINAL/NONE/1472614544

Никаких исключений, проблема только в том, что ImageView не загружен.

ответ

0

Изображение может быть слишком большим, попробуйте изменить его размер.

Glide.with (mContext) 
     .load(mGalleryImagesList.get(position)) 
     .centerCrop() 
     .placeholder(R.drawable.image_loading) 
     .resize(holder.imgAlbum.getLayoutParams().width, holder.imgAlbum.getLayoutParams().height) 
     .crossFade() 
     .into(holder.imgAlbum);