添加權限:
<application/>在這個控件里加入屬性:android:name=".MyApp"
import android.app.Application; import android.os.Environment; import com.nostra13.universalimageloader.cache.disc.impl.UnlimitedDiskCache; import com.nostra13.universalimageloader.cache.disc.naming.HashCodeFileNameGenerator; import com.nostra13.universalimageloader.cache.memory.impl.LruMemoryCache; import com.nostra13.universalimageloader.core.DisplayImageOptions; import com.nostra13.universalimageloader.core.ImageLoader; import com.nostra13.universalimageloader.core.ImageLoaderConfiguration; import com.nostra13.universalimageloader.core.assist.QueueProcessingType; import java.io.File; public class MyApp extends Application{ File cacheFile = new File(Environment.getExternalStorageDirectory() + "/" + "image"); @Override public void onCreate() { super.onCreate(); //初始化組件,鏈式開發思想,整個框架的參數初始化配置 //imageLoader的全局配置 ImageLoaderConfiguration configuration = new ImageLoaderConfiguration.Builder(this) .memoryCacheExtraOptions(480, 800) // default = device screen dimensions 內存緩存文件的最大長寬 .diskCacheExtraOptions(480, 800, null) // 本地緩存的詳細信息(緩存的最大長寬),最好不要設置這個 .tasksProcessingOrder(QueueProcessingType.FIFO) // default .denyCacheImageMultipleSizesInMemory() .memoryCache(new LruMemoryCache(2 * 1024 * 1024)) //能夠經過本身的內存緩存實現 .memoryCacheSize(2 * 1024 * 1024) // 內存緩存的最大值 .memoryCacheSizePercentage(13) // default .diskCacheSize(50 * 1024 * 1024) // 50 Mb sd卡(本地)緩存的最大值 .diskCacheFileCount(100) // 能夠緩存的文件數量 .diskCache(new UnlimitedDiskCache(cacheFile))//自定義緩存目錄 // default爲使用HASHCODE對UIL進行加密命名, 還能夠用MD5(new Md5FileNameGenerator())加密 .diskCacheFileNameGenerator(new HashCodeFileNameGenerator()) .defaultDisplayImageOptions(DisplayImageOptions.createSimple()) // default .writeDebugLogs() // 打印debug log .build(); ImageLoader.getInstance().init(configuration); } }