Unity 接入第三方SDK打包閃退

在接入穿山甲sdk的時候,打包apk的時候出現適配部分機型,部分機型閃退,出現如下錯誤

圖中可以看出是.so文件引起的問題。

接入第三方sdk的時候,有時候常常需要導入第三方jar包以及aar包,有些還需要依賴一些.so文件,.當依賴於.so文件的時候就需要做好.so文件的管理

常見.so文件有以下幾個平臺

當把所有平臺一股腦導進Unity的時候,在打包APK的時候是會報錯的,因爲這幾種.so文件並不能共存(原因以下闡述),報如下的錯誤

我們打開Unity安裝包(或者通過打包空的Android平臺的APK),可以發現APK內部只有兩個平臺的.so文件

通過觀察,我們得到Unity在打包apk的時候會把Unity安裝路徑下的.so文件打進apk,這也是我們把全平臺的.so文件丟進Unity在打包apk時候報錯的原因。綜上我們知道了在平時開發apk的時候只需要上圖中的兩個平臺.so文件即可。

綜上分析,我在排查問題的時候發現穿山甲第三方sdk提供的aar包。內部如下(觀察路徑可知)

在aar內部存在與Unity不兼容的平臺.so文件,刪除不兼容的兩個平臺後,打出apk可以正常適配所有機型。

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