# ![Logo](https://github.com/nostra13/Android-Universal-Image-Loader/raw/master/sample/res/drawable-mdpi/ic_launcher.png) Universal Image Loader
Android library **[#1](https://www.gitrep.com/search?utf8=✓&omni_search=&public_tags%5B%5D=android&description=&search=true&sort=star_count&commit=Search)** on GitHub.
UIL aims to provide a powerful, flexible and highly customizable instrument for image loading, caching and displaying. It provides a lot of configuration options and good control over the image loading and caching process.
![Screenshot](https://github.com/nostra13/Android-Universal-Image-Loader/raw/master/UniversalImageLoader.png)
## Project News
* Really have no time for development but anyway UIL is still alive :)
**Upcoming changes in new UIL version (1.9.4+)**
* Memory Cache redesign
* Video file thumbnail support via `file:///sdcard/video.mp4`
* **New API:** `DisplayImageOptions.targetSize(ImageSize)`
* HTTP cache support
* Consider `BitmapFactory.Options.inBitmap`
* Time-to-live option for files in LruDiskCache
## Features
* Multithread image loading (async or sync)
* Wide customization of ImageLoader's configuration (thread executors, downloader, decoder, memory and disk cache, display image options, etc.)
* Many customization options for every display image call (stub images, caching switch, decoding options, Bitmap processing and displaying, etc.)
* Image caching in memory and/or on disk (device's file system or SD card)
* Listening loading process (including downloading progress)
Android 2.0+ support
## Downloads
* **[universal-image-loader-1.9.3.jar](https://github.com/nostra13/Android-Universal-Image-Loader/raw/master/downloads/universal-image-loader-1.9.3.jar)**
* **[universal-image-loader-1.9.3-with-sources.jar](https://github.com/nostra13/Android-Universal-Image-Loader/raw/master/downloads/universal-image-loader-1.9.3-with-sources.jar)** (for Eclipse)
* [![Demo app](https://camo.githubusercontent.com/dc1ffe0e4d25c2c28a69423c3c78000ef7ee96bf/68747470733a2f2f646576656c6f7065722e616e64726f69642e636f6d2f696d616765732f6272616e642f656e5f6170705f7267625f776f5f34352e706e67)](https://play.google.com/store/apps/details?id=com.nostra13.universalimageloader.sample) [![QR Code](https://lh3.ggpht.com/csXEddxiLgQ6FxckefjQnP1PVugbaAYOdcuTa3vVtGV1PlWbFu2dYggoH8rI1w2RdEz1=w50)](http://chart.apis.google.com/chart?chs=300x300&cht=qr&chld=|1&chl=https%3A%2F%2Fplay.google.com%2Fstore%2Fapps%2Fdetails%3Fid%3Dcom.nostra13.universalimageloader.sample) [<img src="http://mobway.in/image/apk.png" height="45px" />](https://github.com/nostra13/Android-Universal-Image-Loader/raw/master/downloads/universal-image-loader-sample-1.9.3.apk)
## [Documentation](https://github.com/nostra13/Android-Universal-Image-Loader/wiki)
* **[Quick Setup](https://github.com/nostra13/Android-Universal-Image-Loader/wiki/Quick-Setup)**
* **[Configuration](https://github.com/nostra13/Android-Universal-Image-Loader/wiki/Configuration)**
* **[Display Options](https://github.com/nostra13/Android-Universal-Image-Loader/wiki/Display-Options)**
* [Useful Info](https://github.com/nostra13/Android-Universal-Image-Loader/wiki/Useful-Info) - Read it before asking a question
* [User Support](https://github.com/nostra13/Android-Universal-Image-Loader/wiki/User-Support) - Read it before creating new issue
* [Sample project](https://github.com/nostra13/Android-Universal-Image-Loader/tree/master/sample) - Learn it to understand the right way of library usage
* [ChangeLog](https://github.com/nostra13/Android-Universal-Image-Loader/blob/master/CHANGELOG.md) - Info about API changes is here
## Usage
### Acceptable URIs examples
``` java
"http://site.com/image.png" // from Web
"file:///mnt/sdcard/image.png" // from SD card
"file:///mnt/sdcard/video.mp4" // from SD card (video thumbnail)
"content://media/external/images/media/13" // from content provider
"content://media/external/video/media/13" // from content provider (video thumbnail)
"assets://image.png" // from assets
"drawable://" + R.drawable.img // from drawables (non-9patch images)
```
**NOTE:** Use `drawable://` only if you really need it! Always **consider the native way** to load drawables - `ImageView.setImageResource(...)` instead of using of `ImageLoader`.
### Simple
``` java
// Load image, decode it to Bitmap and display Bitmap in ImageView (or any other view
// which implements ImageAware interface)
imageLoader.displayImage(imageUri, imageView);
```
``` java
// Load image, decode it to Bitmap and return Bitmap to callback
imageLoader.loadImage(imageUri, new SimpleImageLoadingListener() {
@Override
public void onLoadingComplete(String imageUri, View view, Bitmap loadedImage) {
// Do whatever you want with Bitmap
}
});
```
``` java
// Load image, decode it to Bitmap and return Bitmap synchronously
Bitmap bmp = imageLoader.loadImageSync(imageUri);
```
### Complete
``` java
// Load image, decode it to Bitmap and display Bitmap in ImageView (or any other view
// which implements ImageAware interface)
imageLoader.displayImage(imageUri, imageView, options, new ImageLoadingListener() {
@Override
public void onLoadingStarted(String imageUri, View view) {
...
}
@Override
public void onLoadingFailed(String imageUri, View view, FailReason failReason) {
...
}
@Override
public void onLoadingComplete(String imageUri, View view, Bitmap loadedImage) {
...
}
@Override
public void onLoadingCancelled(String imageUri, View view) {
...
}
}, new ImageLoadingProgressListener() {
@Override
public void onProgressUpdate(String imageUri, View view, int current, int total) {
...
}
});
```
``` java
// Load image, decode it to Bitmap and return Bitmap to callback
ImageSize targetSize = new ImageSize(80, 50); // result Bitmap will be fit to this size
imageLoader.loadImage(imageUri, targetSize, options, new SimpleImageLoadingListener() {
@Override
public void onLoadingComplete(String imageUri, View view, Bitmap loadedImage) {
// Do whatever you want with Bitmap
}
});
```
``` java
// Load image, decode it to Bitmap and return Bitmap synchronously
ImageSize targetSize = new ImageSize(80, 50); // result Bitmap will be fit to this size
Bitmap bmp = imageLoader.loadImageSync(imageUri, targetSize, options);
```
## Load & Display Task Flow
![Task Flow](https://github.com/nostra13/Android-Universal-Image-Loader/raw/master/wiki/UIL_Flow.png)
## Applications using Universal Image Loader
**[MediaHouse, UPnP/DLNA Browser](https://play.google.com/store/apps/details?id=com.dbapp.android.mediahouse)** | **[Prezzi Benzina (AndroidFuel)](https://play.google.com/store/apps/details?id=org.vernazza.androidfuel)** | **[ROM Toolbox Lite](https://play.google.com/store/apps/details?id=com.jrummy.liberty.toolbox)**, [Pro](https://play.google.com/store/apps/details?id=com.jrummy.liberty.toolboxpro) | [Stadium Astro](https://play.google.com/store/apps/details?id=com.astro.stadium.activities) | [Chef Astro](https://play.google.com/store/apps/details?id=com.sencha.test) | [Sporee - Live Soccer Scores](https://play.google.com/store/apps/details?id=com.sporee.android) | **[EyeEm - Photo Filter Camera](https://play.google.com/store/apps/details?id=com.baseapp.eyeem)** | [PhotoDownloader for Facebook](https://play.google.com/store/apps/details?id=com.giannz.photodownloader) | **[Topface - meeting is easy](https://play.google.com/store/apps/details?id=com.topface.topface)** | **[reddit is fun](https://play.google.com/store/apps/details?id=com.andrewshu.android.reddit)** | **[Diaro - personal diary](https://play.google.com/store/apps/details?id=com.pixelcrater.Diaro)** | [WebMoney Keeper Mobile](https://play.google.com/store/apps/details?id=ru.webmoney.keeper.mobile) | **[LoL Memento League of Legends](https://play.google.com/store/apps/details?id=com.buchland.lolmemento)** | **[Meetup](https://play.google.com/store/apps/details?id=com.meetup)** | [Vingle - Magazines by Fans](https://play.google.com/store/apps/details?id=com.
没有合适的资源?快使用搜索试试~ 我知道了~
资源推荐
资源详情
资源评论
收起资源包目录
ImageLoader 最新Jar (141个子文件)
universal-image-loader-sample-1.9.3.apk 832KB
.gitignore 263B
build.gradle 516B
universal-image-loader-1.9.3-javadoc.jar 550KB
android-support-v4.jar 377KB
universal-image-loader-1.9.3-with-sources.jar 285KB
universal-image-loader-1.9.3.jar 157KB
universal-image-loader-1.9.3.jar 157KB
universal-image-loader-1.9.3-sources.jar 132KB
ImageLoader.java 37KB
LinkedBlockingDeque.java 36KB
DiskLruCache.java 29KB
BlockingDeque.java 25KB
ImageLoaderConfiguration.java 25KB
Deque.java 22KB
DisplayImageOptions.java 17KB
LoadAndDisplayImageTask.java 17KB
Constants.java 16KB
BaseImageDownloader.java 12KB
BaseImageDecoder.java 9KB
ImageSizeUtils.java 8KB
ImageSizeTest.java 8KB
DefaultConfigurationFactory.java 8KB
LruDiskCache.java 7KB
ImageLoaderEngine.java 7KB
StrictLineReader.java 7KB
ViewAware.java 6KB
BaseDiskCache.java 6KB
StorageUtils.java 6KB
ImageAware.java 5KB
ImageDecodingInfo.java 5KB
ImagePagerFragment.java 5KB
ImageListFragment.java 5KB
ImageViewAware.java 5KB
ImageGridFragment.java 5KB
LimitedAgeDiskCache.java 4KB
IoUtils.java 4KB
MemoryCacheUtils.java 4KB
HomeActivity.java 4KB
ImageScaleType.java 4KB
RoundedBitmapDisplayer.java 4KB
UsingFreqLimitedMemoryCache.java 4KB
PauseOnScrollListener.java 4KB
LruMemoryCache.java 4KB
ImageGalleryFragment.java 4KB
LimitedMemoryCache.java 3KB
DisplayBitmapTask.java 3KB
LargestLimitedMemoryCache.java 3KB
L.java 3KB
FadeInBitmapDisplayer.java 3KB
LRULimitedMemoryCache.java 3KB
UILWidgetProvider.java 3KB
AbsListViewBaseFragment.java 3KB
ImageDownloader.java 3KB
SimpleImageActivity.java 3KB
RoundedVignetteBitmapDisplayer.java 3KB
DiskCache.java 3KB
NonViewAware.java 3KB
ComplexImageActivity.java 3KB
LimitedAgeMemoryCache.java 3KB
UILApplication.java 3KB
FIFOLimitedMemoryCache.java 2KB
ImageLoadingListener.java 2KB
ViewScaleType.java 2KB
FuzzyKeyMemoryCache.java 2KB
ProcessAndDisplayImageTask.java 2KB
ImageLoadingInfo.java 2KB
BaseMemoryCache.java 2KB
FailReason.java 2KB
ContentLengthInputStream.java 2KB
UnlimitedDiskCache.java 2KB
Util.java 2KB
ImageSize.java 2KB
BitmapDisplayer.java 2KB
BaseImageDownloaderTest.java 2KB
DiskCacheUtils.java 2KB
BaseFragment.java 2KB
SimpleImageLoadingListener.java 2KB
Md5FileNameGenerator.java 2KB
BitmapProcessor.java 2KB
LIFOLinkedBlockingDeque.java 1KB
MemoryCache.java 1KB
WeakMemoryCache.java 1KB
SimpleBitmapDisplayer.java 1KB
ImageLoadingProgressListener.java 1KB
ImageDecoder.java 1KB
HashCodeFileNameGenerator.java 1KB
FileNameGenerator.java 1KB
QueueProcessingType.java 1018B
FlushedInputStream.java 857B
R.java 307B
LoadedFrom.java 225B
Living Things @#&=+-_.,!()~'%20.jpg 150KB
LICENSE 11KB
CHANGELOG.md 16KB
README.md 13KB
Universal Image Loader @#&=+-_.,!()~'%20.png 390KB
UniversalImageLoader.png 372KB
UIL_Flow.png 231KB
ic_launcher.png 58KB
共 141 条
- 1
- 2
where_s
- 粉丝: 5
- 资源: 23
上传资源 快速赚钱
- 我的内容管理 展开
- 我的资源 快来上传第一个资源
- 我的收益 登录查看自己的收益
- 我的积分 登录查看自己的积分
- 我的C币 登录后查看C币余额
- 我的收藏
- 我的下载
- 下载帮助
最新资源
- 记录了贪心,动态规划等算法基本思想与设计.zip
- 基于菲阿里基本模型,以及MACD RSI BooL 等技术指标 构建一套基于贪心算法策略的智能投顾模型.zip
- oj算法代码-贪心算法.zip
- 基于yolov8行人检测源码+模型.zip
- 公开整理-地级市-绿色专利申请、授权数据集(2000-2022年).xlsx
- 基于Transformer模型的图像质量评分模型实现源码+详细说明文档.zip
- CST电磁场仿真+线性螺旋电感+建模步骤细节和RLC端口配置+CST高级建模操作
- 大数据库实验的报告材料材料(word文档良心出品).doc
- AIS2024 valid
- 最入门的爬虫代码 python.docx
资源上传下载、课程学习等过程中有任何疑问或建议,欢迎提出宝贵意见哦~我们会及时处理!
点击此处反馈
安全验证
文档复制为VIP权益,开通VIP直接复制
信息提交成功
- 1
- 2
- 3
- 4
前往页