android 第三方工具使用常見異常(友盟)

一.友盟統計介入異常
場景:eclispe正常運行,as上報錯NoClassDefFoundError: com.umeng.analytics

辦法如下:

出現這種情況可能有三個情況(任何一種都可能解決問題):
1.	如果集成統計5.6.4,設置編譯版本6.0,即可解決;
2.	確認開發者沒有使用kotlin(androidstudio開發工具),暫時SDK不支持kotlin開發
3.	確認開發者是否使用阿里的雲推送 cloud-push-sdk
4.	開發者如果使用com.google.android:multidex:0.1 ,
完整集成如下:

方式一:
 android {  
    compileSdkVersion 21  
    buildToolsVersion "21.1.0"  
  
    defaultConfig {  
        ...  
        minSdkVersion 14  
        targetSdkVersion 21  
        ...  
  
        // Enabling multidex support.  
        multiDexEnabled true  
    }  
    ...  
}  
  
dependencies {  
  compile 'com.android.support:multidex:1.0.0'  
    }

方式二:

 如果此時還有問題,則需要調整dex編譯選項可解決問題,如下:
android {  
    // ...  
    dexOptions {  
        preDexLibraries = false  
     }  
}  

方式三:

 此時部分用戶還是會出現沒有發現類錯誤。
此時建議application繼承android.support.multidex.MultiDexApplication類,如果你的Application已經繼承了其他類並且不想做改動,那麼還有另外一種使用方式,覆寫attachBaseContext()方法:


public class MyApplication extends FooApplication {
    @Override
    protected void attachBaseContext(Context base) {
        super.attachBaseContext(base);
        MultiDex.install(this);
    }
}
當一種方式無法解決時,配合使用以上3種辦法

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章