2016-12-20 遇到的一點小問題
項目用的第三方東西有點多,關于so文件,之前一直是給的啥都往項目里面放。一直沒出問題。然后不知道是哪里開始的,之間沒改過啥,只是重裝系統,Android Studio 升級到2.2.3,然后打包的文件就從13M變成18M了,有些機器再運行到某個第三方的東西時就出錯了。
12-13 14:13:27.210 10881-10881/? E/AndroidRuntime: FATAL EXCEPTION: main
Process: com.wannoo.wan, PID: 10881
java.lang.UnsatisfiedLinkError: com.android.tools.fd.runtime.IncrementalClassLoader$DelegateClassLoader[DexPathList[[dex file "/data/data/com.wannoo.wan/files/instant-run/dex/slice-zixing-core-3.2.0_2cecb648d0bab211f57264a2f1d933dc52dcde44-classes.dex", dex file "/data/data/com.wannoo.wan/files/instant-run/dex/slice-tbs_sdk_thirdapp_v2.3.0.1048_36801_sharewithdownload_obfs_20160829_200437_9303320e09110fe499fc3123bd50a361f5d24f96-classes.dex", dex file "/data/data/com.wannoo.wan/files/instant-run/dex/slice-support-annotations-25.0.0_904bc094887d40e9de47d377e8b532755b53c326-classes.dex", dex file "/data/data/com.wannoo.wan/files/instant-run/dex/slice-slice_9-classes.dex", dex file "/data/data/com.wannoo.wan/files/instant-run/dex/slice-slice_8-classes.dex", dex file "/data/data/com.wannoo.wan/files/instant-run/dex/slice-slice_7-classes.dex", dex file "/data/data/com.wannoo.wan/files/instant-run/dex/slice-slice_6-classes.dex", dex file "/data/data/com.wannoo.wan/files/instant-run/dex/slice-slice_5-classes.dex", dex file "/data/data/com.wannoo.wan/files/instant-run/dex/slice-slice_4-classes.dex", dex file "/data/data/com.wannoo.wan/files/instant-run/dex/slice-slice_3-classes.dex", dex file "/data/data/com.wannoo.wan/files/instant-run/dex/slice-slice_2-classes.dex", dex file "/data/data/com.wannoo.wan/files/instant-run/dex/slice-slice_1-classes.dex", dex file "/data/data/com.wannoo.wan/files/instant-run/dex/slice-slice_0-classes.dex", dex file "/data/data/com.wannoo.wan/files/instant-run/dex/slice-rxjava-1.2.1_aa891a92fd7005674dbfb16a988b401dae763c6b-classes.dex", dex file
Android錯誤放置so文件
類似這樣一堆錯誤。之前一直沒問題的,,,第一次遇到這種錯誤,網上搜的基本沒用。還好四木發了兩個鏈接過來
https://zhuanlan.zhihu.com/p/21359984
http://www.lxweimin.com/p/cb05698a1968
一直沒這方面的相關常識,這回總算大概知道了。
把其他文件夾刪掉,只保留armeabi和armeabi-v7a這兩個,且保持里面文件一樣。就可以了
so文件夾
可惜有個廠家沒提供arm64-v8a的支持文件,又不能直接從別的文件拷過去,因為會提示
java.lang.UnsatisfiedLinkError: dlopen failed: "/data/app/com.tugouzhong.micromall-1/lib/arm64/libNFC01.so" is 32-bit instead of 64-bit
性能有影響就先不管了,能用就行。不過這樣在genymotion模擬器就沒法使用了,會提示。
genymotion無法運行
因為這個需要x86的so文件夾,之前有下載兼容文件,不知道丟哪去了,先不用了,等找到再安裝在genymotion上。