UnsatisfiedLinkError:libwebviewchromium.so is 32-bit instead of 64-bit

友盟後臺收集到的錯誤
Caused by java.lang.UnsatisfiedLinkError: dlopen failed: “/data/app/com.google.android.webview-1/lib/arm/libwebviewchromium.so” is 32-bit instead of 64-bit

Android System WebView的一個bug,參見:https://bugs.chromium.org/p/chromium/issues/detail?id=547842
在某些第三方應用市場把這個組件更新就會發生一樣的報錯

觸發場景:在應用匯更新安裝了最新版的Android System Webview;
觸發系統:CPU爲arm64。

應用匯在9月7號發佈了新版的Android System Webview,這是爲什麼從9月7號開始不斷的收到崩潰信息的原因。其實google play上9月5號也發佈了新版,但是更新google play上的版本不會出現問題,估計是應用匯上的版本對arm64沒有做適配導致的。

解決方法
辦法1:讓用戶在設置裏面把Android System Webview卸載更新
辦法2:讓你的應用做適配添加這個 ndk {abiFilters “armeabi”, “armeabi-v7a”, “x86”, “mips”}
已試過,完美解決。如此一來打包的時候只打包了32位的.so文件,打包出來的apk也小了一些。只是性能方面不知道影響會怎樣。

so相關介紹的文章 參考 http://www.jianshu.com/p/cb05698a1968

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