1. XenForo 1.5.14 中文版——支持中文搜索!现已发布!查看详情
  2. Xenforo 爱好者讨论群:215909318 XenForo专区

新闻 Glide 3.4.0 发布,Android 的媒体管理库 下载

本帖由 漂亮的石头2014-11-08 发布。版面名称:软件资讯

  1. 漂亮的石头

    漂亮的石头 版主 管理成员

    注册:
    2012-02-10
    帖子:
    485,985
    赞:
    46
    Glide 是一个 Android 上的图片加载和缓存库,其目的是实现平滑的图片列表滚动效果。

    Glide 3.4.0 发布,此版本现已提供下载,包括大量新特性和 bug 修复。此版本最值得关注的是动态 GIFs,可以通过 GifDecoder 来对 GIFs 进行解码,修复了相关的一些小问题,比如渲染和解码通道的问题。

    更多内容请看 milestone

    完整改进记录:

    新特性


    • Allow RequestBuilders to be re-used for multiple loads by introducing the .from() and .clone() APIs. These APIs allow users to set options on a request builder once, pass the builder to their adapters, and then start multiple loads with the single builder (#182).

    // In your Activity/Fragment@Overridepublic void onCreate(Bundle savedInstanceState) { DrawableRequestBuilder requestBuilder =
    Glide.with(this)
    .from(String.class)
    .placeholder(R.drawable.spinner)
    .centerCrop()
    .crossFade();
    mAdapter = new MyAdapter(requestBuilder);
    }// In your Adapter@Overridepublic View getView(int position, View convertView, ViewGroupParent parent) { ...
    mRequestBuilder.load(myUrls.get(position)).into(convertView);
    }

    Glide.setup(new GlideBuilder(context)
    .setDecodeFormat(DecodeFormat.ALWAYS_ARGB_8888));

    • Add a .preload() API to allow preloading media into memory (#169).

    Glide.with(fragment)
    .load(url)
    .preload(width, height);

    • Add a .signature() API to allow users to easily mix in additional data to cache keys, giving users more control over cache invalidation (#178, #179), see the cache invalidation wiki.

    Glide.with(fragment)
    .load(url)
    .signature(new StringSignature("Version1"))
    .into(view);

    • Add a Glide.preFillBitmapPool() API to allow pre-filling the BitmapPool to avoid jank from allocations after app startup (#93).

    Glide.get(context)
    .preFillBitmapPool(new PreFillType.Builder(mySize));

    • Allow recursive calls to thumbnail() to load an arbitrary number of different sized thumbnails for a single Target (#149).

    Glide.with(fragment)
    .load(myUrl)
    .thumbnail(Glide.with(fragment)
    .load(myUrl)
    .override(200, 200)
    .thumbnail(Glide.with(fragment)
    .load(myUrl)
    .override(50, 50)))
    .into(myView);

    • Allow thumbnail() to load model and data types that are different than those of the parent (#107).


    • Transformations are now only applied once and no longer have to be idempotent (#112).
    Build/Infrastructure


    • PMD/Findbugs (#164)


    • Jacoco/Coveralls with 85% test coverage (34f797b).


    • Standard import order (f7a6d65).
    Bugs 修复

    性能


    • Avoid allocating large byte arrays in BufferedInputStream (#225).


    • Use downsampled image size when obtaining Bitmaps from the pool (#224).
    GIFs


    • Avoid a crash causing race decoding multiple frames with the same GifDecoder (#212).


    • Always use ARGB_8888 to prevent null GIF frames on some versions of Android that don’t support ARGB_4444 (#216).


    • Fix partially decoded GIF frames (appears as grey or transparent noise in frames) (#207, #204).


    • Set a default frame delay for GIFs which do not specify a frame delay, or specify an overly short frame delay (#205).


    • More robust GIF decoding logic, including a fix for decoding only the first few rows of certain GIFs (#203).


    • Allow fade in/cross fade animations by ensuring that the first frame of GIFs is decoded before the GIF is returned (#159).


    • Fix GIFs always appearing transparent pre KitKat (#199).
    Memory


    • Fix a memory leak when Glide is first called in an Activity (#210).
    Transformations


    • Fix underdraw in FitCenter causing noise along the sides of certain images (#195).


    • Maintain transparency during bitmap transformations (#156).
    Caching


    • Fixed Drawables being cached only be integer resource id which can change and/or overlap after subsequent compilations (#172).
    Uris


    • Fix failure to detect certain types of file Uris (#161).
    其他


    • Fix concurrency bugs resulting in incorrect assertions being thrown when loads were started on multiple threads (#191, #181).


    • Fix BitmapRequestBuilder not setting the decode format on the cache decoder when format() is called (#187).


    • Fix an assertion in ViewTarget related to restarting requests (#167).


    • Fix Glide.with() throwing pre Honeycomb when given non-support Activities (#158).


    • Avoid using Closeable interface when loading ParcelFileDescriptors on 4.1.1 or earlier (#157).


    • Fix an NPE in Bitmap#getAllocationByteCount() due to a framework bug in the initial release of KitKat (#148).
    Glide 3.4.0 发布,Android 的媒体管理库下载地址
     
正在加载...