некоторые изображения не загружаются из FireBase из-за разного размера байта в Android - PullRequest
0 голосов
/ 05 июля 2019

У меня есть база данных firebase, в которой хранятся несколько URL-адресов изображений, все изображения имеют разный размер в байтах, но Пикассо загружает не все изображения, а только некоторые изображения. я сохраняю все изображения после обрезки, как я могу исправить проблему?

                Picasso.get()
                    .load(user_pic)
                    .networkPolicy(NetworkPolicy.OFFLINE) // for offline
                    .placeholder(R.drawable.default_profile_image)
                    .error(R.drawable.default_profile_image)
                    .into(dpImage);

        <de.hdodenhof.circleimageview.CircleImageView
        android:id="@+id/profileImage"
        android:layout_width="170dp"
        android:layout_height="170dp"
        android:maxWidth="170dp"
        android:maxHeight="170dp"
        android:src="@drawable/default_profile_image"
        app:civ_border_color="@color/colorPrimary"
        app:civ_border_width="0.5dp"
        />

Ответы [ 2 ]

1 голос
/ 06 июля 2019

Вы можете включить вход в Picasso, чтобы увидеть, что происходит.

Вы можете найти больше информации здесь: https://futurestud.io/tutorials/picasso-cache-indicators-logging-stats

В любом случае, исходя из моего личного опыта, я рекомендую перейти на Glide: https://github.com/bumptech/glide

0 голосов
/ 05 июля 2019
//Setting it to (6MB)..change it as per requirement
long cacheSize =  1024 * 1024 * 6;

Picasso picasso = new Picasso.Builder(context)
                              .memoryCache(new LruCache(cacheSize))
                              .build();

Вы можете попробовать увеличить размер кэша picasso, если он все еще не работает, используйте Glide, чтобы он лучше обрабатывал изображения различных форматов.

...