検索

ホームページ  >  に質問  >  本文

android - fresco库加载图片出现OOM,求使用过的大神解决

有没有人使用过fresco库加载图片解决OOM问题的?因为我的项目需要大量加载图片,用了fresco库主要就是想解决GC相关OOM问题,但是发现项目在AS中使用fresco库运行在21安卓版本以下还是会出现OOM问题,运行在21及以上的版本不会出现任何问题,gradle一些相关语句如下:
compileSdkVersion 23
buildToolsVersion '23.0.3'
minSdkVersion 15
targetSdkVersion 23
compile 'com.facebook.fresco:fresco:0.9.0+'
报错图片:

ringa_leeringa_lee2771日前1617

全員に返信(14)返信します

  • 怪我咯

    怪我咯2017-04-17 17:54:31

    glide をお勧めできますか
    https://github.com/bumptech/g...

    返事
    0
  • 迷茫

    迷茫2017-04-17 17:54:31

    グライドを使用する

    返事
    0
  • 黄舟

    黄舟2017-04-17 17:54:31

    1. システムに大量のメモリを使用するコードや無限ループがないか確認します。
    2. JVM 起動パラメータを追加してメモリ使用量を制限できます: -XX:-UseGCOverheadLimit

    1. フレスコ画に属性を追加したり、画像のサイズを変更したりできます

    返事
    0
  • 高洛峰

    高洛峰2017-04-17 17:54:31

    グライドもおすすめです。コードはシンプルで、キャッシュされた画像を自動的に圧縮します

    5.0 より前のシステム (つまり API21) では、Fresco は画像を特別なメモリ領域に配置します。もちろん、画像が表示されなくなった場合、占有メモリは自動的に解放されます。これにより、APP がよりスムーズになり、画像メモリの使用量によって引き起こされる OOM が軽減されます。中国の文献の壁画に書かれています

    最新のものは 'com.facebook.fresco:fresco:0.13.0' をコンパイルします。試してみてください

    返事
    0
  • 伊谢尔伦

    伊谢尔伦2017-04-17 17:54:31

    まず第一に、私はあなたをサポートするためにここにいます。

    その人たちが Glide の使用についてどう思っているかわかりません。 Glide を使用する理由も教えていただけますか (私はいつも Glide を使用していますが)

    問題が発生した場合は、ライブラリを変更することも 1 つの方法ですが、変更する前に少なくとも試して失敗する必要があります。

    質問があるのですが、なぜフレスコ画が浮き上がるのですか?業界で一番人気だと言われてるのではないでしょうか?

    私の考えを述べさせてください:
    投稿者が本当にこのライブラリを OOM から取り出しているのであれば、それは非常に強力だと思います。コードをチェックして何が不合理なのかを確認した方がよいでしょう。自分の考えが正しいと思うなら、問題を github に送信した方がよいでしょう

    返事
    0
  • 迷茫

    迷茫2017-04-17 17:54:31

    以前、Fresco を使用していたときにこの問題に遭遇したことがあります。その時は、Fresco 自体の問題ではないかと思いましたが、通常の状況では、Fresco 自体には問題がないことがわかりました。 OOM をトリガーするには、まず自分のコードを確認することをお勧めします。

    返事
    0
  • 天蓬老师

    天蓬老师2017-04-17 17:54:31

    同時グライド

    返事
    0
  • 巴扎黑

    巴扎黑2017-04-17 17:54:31

    これはランタイム oom ではなくコンパイル プロセス oom であり、使用されるライブラリとは関係ありません。
    @wordplat が言ったように、コンパイル プロセスでは OOM が生成され、コンパイル パラメーターを調整する必要があります

    リーリー

    返事
    0
  • 高洛峰

    高洛峰2017-04-17 17:54:31

    問題は実際にはコードのコンパイル中に生成される OOM であり、フレームワーク自体によって引き起こされる問題ではないため、JVM ヒープ メモリのサイズを調整するだけで済みます。

    リーリー

    返事
    0
  • 怪我咯

    怪我咯2017-04-17 17:54:31

    コードを投稿するだけで便利な場合もあります

    返事
    0
  • キャンセル返事