解決Android引用多個庫的jni架構平臺支援衝突的問題
今天在自己寫Demo時, 引用了兩個庫: Realm 和高德地圖.
接著時開開心心地碼程式碼,順利地編譯apk.然後一執行掛了!!!
異常如下:java.lang.UnsatisfiedLinkError
檢視了程式碼,找到了異常原因:
高德地圖只有一個 armeabi 的so檔案,而 Realm 帶有全平臺的so檔案.執行時由於手機是 armeabi-v8a ,所以一執行就掛了!
怎麼解決呢?本來想下載Realm的原始碼重新編譯aar然後去除其他平臺的so檔案,但又在群裡問了一下,找到了簡單的方法.
解決辦法
在module的build.gradle檔案新增如下設定:
buildTypes {
release {
ndk {
abiFilters = [“armeabi”]
}
minifyEnabled false
proguardFiles getDefaultProguardFile(‘proguard-android.txt’), ‘proguard-rules.pro’
}
debug {
ndk {
abiFilters = [“armeabi”]
}
minifyEnabled false
proguardFiles getDefaultProguardFile(‘proguard-android.txt’), ‘proguard-rules.pro’
}
}
相關文章
- JAR衝突問題的解決JAR
- 解決app中多語音出現的衝突問題APP
- Android 解決BottomSheetDialog 拖曳衝突問題Android
- git 解決版本衝突問題Git
- Maven中解決依賴衝突的問題Maven
- GO 問題之多版本衝突解決Go
- HTML中兩個tabs導航衝突問題的解決方法HTML
- 如解決jquery與原生js衝突的問題jQueryJS
- android studio 引用module 導致的v4包衝突的解決Android
- 解決jquery和其他庫的衝突jQuery
- jQuery.noConflict() 方法—— jquery庫與其他庫衝突的問題解決jQuery
- 解決echsop相容jquery(transport.js的衝突)的問題jQueryJS
- Git Worktree:解決分支依賴衝突的問題Git
- less中解決CSS3的calc衝突問題CSSS3
- weblogic+axis jar包衝突問題的另一個解決方法WebJAR
- 解決動態庫的符號衝突符號
- Android Studio 包衝突的解決方法Android
- 解決gerrit commit後pull發生衝突的問題MIT
- 關於 OkHttp 依賴衝突問題的解決過程HTTP
- 利用觸發器解決更新主鍵衝突的問題觸發器
- jQuery多庫衝突jQuery
- 徹底解決SLF4J的日誌衝突的問題
- 一個網路IP地址衝突的問題
- com.android.support衝突的解決辦法Android
- Android com.android.support衝突解決Android
- Android Studio中架包打包和依賴衝突解決Android
- 如何解決jQuery的美元$符號衝突問題jQuery符號
- jquery如何解決版本之間衝突的問題jQuery
- RAC平臺的全域性熱塊衝突
- android NestedScrollView和ListView衝突問題AndroidView
- 研究顯示多屏裝置解決體育賽事直播衝突問題
- Android的平臺架構及特性Android架構
- SACC 2018:各大直播平臺的架構設計與問題解決架構
- 解決ScrollView巢狀ViewPager出現的滑動衝突問題巢狀Viewpager
- git pull衝突的解決方案Git
- 關於hash衝突的解決
- android父子控制元件手勢衝突的解決Android控制元件
- Git 解決衝突Git