对接SDK遇到的java.lang.IllegalArgumentException: Unable to find native library: main一个大坑

对接SDK遇到的java.lang.IllegalArgumentException: Unable to find native library: main一个大坑(对新手来说),记录一下

在把对接好的SDK和SDK接入到游戏母包时遇到了这一个异常
06-03 14:52:15.882 11644-11644/? V/libMaster: @@default@@[ main: MasterSDK.java:78 initApplication ] - sdk初始化成功
06-03 14:52:15.891 11644-11644/? D/AndroidRuntime: Shutting down VM
06-03 14:52:15.892 11644-11644/? E/libMaster: @@default@@[ main: CrashHandler.java:1090 uncaughtException ] - 未知异常:1559544735@@@@@@@@@java.lang.RuntimeException: Unable to start activity ComponentInfo{com.taoqiwan.tmcs.taoqiwangame/com.yeahworld.fyqj.MainActivity}: java.lang.IllegalArgumentException: Unable to find native library: main
at android.app.ActivityThread.performLaunchActivity(ActivityThread.java:2327)
at android.app.ActivityThread.handleLaunchActivity(ActivityThread.java:2392)
at android.app.ActivityThread.access 800 ( A c t i v i t y T h r e a d . j a v a : 153 ) a t a n d r o i d . a p p . A c t i v i t y T h r e a d 800(ActivityThread.java:153) at android.app.ActivityThread 800(ActivityThread.java:153)atandroid.app.ActivityThreadH.handleMessage(ActivityThread.java:1305)
at android.os.Handler.dispatchMessage(Handler.java:102)
at android.os.Looper.loop(Looper.java:135)
at android.app.ActivityThread.main(ActivityThread.java:5293)
at java.lang.reflect.Method.invoke(Native Method)
at java.lang.reflect.Method.invoke(Method.java:372)
at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:903)
at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:698)
Caused by: java.lang.IllegalArgumentException: Unable to find native library: main
at android.app.NativeActivity.onCreate(NativeActivity.java:170)
at com.unity3d.player.UnityPlayerNativeActivity.onCreate(UnityPlayerNativeActivity.java:21)
at com.yeahworld.fyqj.MainActivity.onCreate(MainActivity.java:74)
at android.app.Activity.performCreate(Activity.java:5990)
at android.app.Instrumentation.callActivityOnCreate(Instrumentation.java:1106)
at android.app.ActivityThread.performLaunchActivity(ActivityThread.java:2280)
at android.app.ActivityThread.handleLaunchActivity(ActivityThread.java:2392)
at android.app.ActivityThread.access 800 ( A c t i v i t y T h r e a d . j a v a : 153 ) a t a n d r o i d . a p p . A c t i v i t y T h r e a d 800(ActivityThread.java:153) at android.app.ActivityThread 800(ActivityThread.java:153)atandroid.app.ActivityThreadH.handleMessage(ActivityThread.java:1305)
at android.os.Handler.dispatchMessage(Handler.java:102)
at android.os.Looper.loop(Looper.java:135)
at android.app.ActivityThread.main(ActivityThread.java:5293)
at java.lang.reflect.Method.invoke(Native Method)
at java.lang.reflect.Method.invoke(Method.java:372)
at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:903)
at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:698)
java.lang.IllegalArgumentException: Unable to find native library: main
at android.app.NativeActivity.onCreate(NativeActivity.java:170)
at com.unity3d.player.UnityPlayerNativeActivity.onCreate(UnityPlayerNativeActivity.java:21)
at com.yeahworld.fyqj.MainActivity.onCreate(MainActivity.java:74)
at android.app.Activity.performCreate(Activity.java:5990)
at android.app.Instrumentation.callActivityOnCreate(Instrumentation.java:1106)
at android.app.ActivityThread.performLaunchActivity(ActivityThread.java:2280)
at android.app.ActivityThread.handleLaunchActivity(ActivityThread.java:2392)
at android.app.ActivityThread.access 800 ( A c t i v i t y T h r e a d . j a v a : 153 ) a t a n d r o i d . a p p . A c t i v i t y T h r e a d 800(ActivityThread.java:153) at android.app.ActivityThread 800(ActivityThread.java:153)atandroid.app.ActivityThreadH.handleMessage(ActivityThread.java:1305)
at android.os.Handler.dispatchMessage(Handler.java:102)
at android.os.Looper.loop(Looper.java:135)
at android.app.ActivityThread.main(ActivityThread.java:5293)
at java.lang.reflect.Method.invoke(Native Method)
at java.lang.reflect.Method.invoke(Method.java:372)
at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:903)
at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:698)

                                          [ 06-03 14:52:16.015 11644:11666 D/         ]
                                          HostConnection::get() New Host Connection established 0xb3f0d290, tid 11666

06-03 14:52:17.896 11644-11644/? I/art: System.exit called, status: 0
06-03 14:52:17.896 11644-11644/? I/AndroidRuntime: VM exiting with result code 0, cleanup skipped.

这个问题就是libman.os的文件找不到报的错,我开始时就想无头苍蝇一样撞了好久终于在大佬的一针见血的提醒下找到了原因,原来是SDK给的jni文件有两份,一份是
armeabi的一份是armeabi-v7a。
开始我把两份jni文件都合并到游戏里面打包,结果打出来的apk只能在很小一部分手机才可以运行成功,然后在大佬的提醒下把armeabi-v7a这个文件夹移除了再打包就好了
其实就是一件很容易解决的事情,结果因为不了解so文件吃了这么大的一个亏。。。

  • 1
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 2
    评论
评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值