Fresco使用及問題 1. Android Studio使用遠程依賴時下載不了jar包的解決方法 // 須要添加如下maven庫,不然使用遠程依賴時,可能沒法下載fresco數據:compile ('com.facebook.fresco:fresco:0.4.0+') // Error:(126, 14) Failed to resolve: com.facebook.fresco:fresco:0.4.0+ allprojects { repositories { mavenCentral() } } 2. Execution failed for task ':imagepipeline:ndk_build_gifimage'. 若是你遇到這個錯誤,多半是找不到ndk環境致使的。配置了NDK環境變量就能夠解決了。 3. Multiple dex files define Landroid/support/v4/accessibilityservice/AccessibilityServiceInfoCompat // 因爲com.facebook.fresco:imagepipeline模塊引用了support-v4.jar, // 若是項目中的其餘模塊也引用了support-v4.jar, 那麼須要去掉其中一個模塊對support-v4.jar的引用(exclude module: 'support-v4') // 不然將會出現沒法正確引用目標support_v4.jar的狀況,或者報如下異常: // com.android.dex.DexException: // Multiple dex files define Landroid/support/v4/accessibilityservice/AccessibilityServiceInfoCompatIcs;compile ('com.facebook.fresco:fresco:0.4.0+') { exclude module: 'support-v4' } 4. 自定義網絡加載:OkHttp Image pipeline 默認使用HttpURLConnection。應用能夠根據本身需求使用不一樣的網絡庫。 OkHttp OkHttp 是一個流行的開源網絡請求庫。Image pipeline有一個使用OkHttp替換掉了Android默認的網絡請求的補充。 若是須要使用OkHttp, 不要使用這個下載頁面的gradle依賴配置,應該使用下面的依賴配置 dependencies { // your project's other dependencies compile 'com.facebook.fresco:drawee:0.4.0+' compile 'com.facebook.fresco:imagepipeline-okhttp:0.4.0+' }配置Image pipeline這時也有一些不一樣,再也不使用ImagePipelineConfig.newBuilder,而是使用OkHttpImagePipelineConfigFactory: Context context; OkHttpClient okHttpClient; // build on your ownImagePipelineConfig config = OkHttpImagePipelineConfigFactory .newBuilder(context, okHttpClient) . // other setters . // setNetworkFetchProducer is already called for you .build(); Fresco.initialize(context, config); 5. java.lang.UnsatisfiedLinkError: dalvik.system.PathClassLoader[...] couldn't find "libmemchunk.so" 64位機器暫時還有問題:Fresco does not put any libraries in "lib/arm64", it will be fixed by #176 soon.(已解決) Working on version 0.5.1!