5***@qq.com
5***@qq.com
  • 发布:2024-05-15 11:04
  • 更新:2025-08-16 09:41
  • 阅读:1407

【已解决】uniapp集成Android第三方SDK aar文件,无法初始化SDK,已按照官网文档编写了相关代码

分类:uni-app

使用第三方安卓SDK死活不能初始化,不能初始化就不能调用SDK的方法。因为第三方SDK需要在 Application 初始化,故建了apphooks类实现了UniAppHookProxy 接口,在uniapp项目中的package.json也已经配置了hooksClass,混淆配置也按官网中的例子添加了代码,在Android Studio打包成aar文件后再到uniapp这边打包成自定义基座,运行自定义基座后发现第三方SDK方法调用报错,前端页面无法再拿到响应,如不执行第三方的方法则是正常

2024-05-15 11:04 负责人:无 分享
已邀请:
5***@qq.com

5***@qq.com (作者) - 假如

有没有大佬帮忙看看啊

II优选

II优选 - 定制插件开发-联系QQ:770104707

原生工程下边能调用吗?

  • 5***@qq.com (作者)

    Android Studio日志可以看到报错了,也不能调用

    2024-05-15 11:21

  • II优选

    回复 5***@qq.com: 你应该按照文档好好核对一下试试

    2024-05-15 11:26

  • II优选

    回复 5***@qq.com: hooksClass执行了吗?

    2024-05-15 11:26

  • 5***@qq.com (作者)

    回复 II优选: hooksClass不确定有没有执行,按照uniapp文档描述理论上是执行了,但是调用就报错

    2024-05-15 11:45

  • II优选

    回复 5***@qq.com: 别理论上,你输出一下日志就好了啊

    2024-05-15 12:03

  • 5***@qq.com (作者)

    回复 II优选: 执行了,日志可以看到。

    2024-05-15 13:52

5***@qq.com

5***@qq.com (作者) - 假如

Android Studio日志可以看到报错了

5***@qq.com

5***@qq.com (作者) - 假如

hooksClass执行了 但是调用第三方的方法就报错了

  • II优选

    so 加载成功了吗?

    2024-05-15 14:05

  • 5***@qq.com (作者)

    回复 II优选: 控制台打印执行初始化是在EsscSDK.init(application, ApiConstants.URL_TEST)前面,在EsscSDK.init(application, ApiConstants.URL_TEST);后面打印控制台看不到,也没报错。这到底是初始化成功了还是没成功啊

    2024-05-15 14:12

  • II优选

    回复 5***@qq.com: 你要问你那边啊,看看有没有debug 之类的,看看详情信息啊

    2024-05-15 14:54

  • 5***@qq.com (作者)

    回复 II优选: 谢谢,问题解决了。SDK方法可以调用到了。整个流程是没错的,第三方SDK少引入了一个依赖包导致的报错

    2024-05-15 16:16

h***@126.com

h***@126.com

你好,请问你的第三方SDK是aar包吗?我也是要集成第三方SDK,在进入首页的时候进行SDK的初始化。在AS里面调试的时候一切正常,但是在我把module打包成aar放到uni项目的android目录下时运行时,却发现初始化不了,紧接着有个日志输出
com.hh.mylibrary.TestModule@6516ea4 Invoker initSDK exception:java.lang.reflect.InvocationTargetException
我后面反编译了一下我打的aar包,发现里面没有第三方SDK的架包。所以我现在很困惑,不知道问题出在了哪里。是Application不对?我是用的
Application appContext = (Application) mUniSDKInstance.getContext().getApplicationContext();
还是打包的问题,但我查阅资料发现:
Android Gradle Plugin (AGP)不支持在构建 AAR 时直接依赖本地的 .aar文件。
推荐使用fat:aar插件打包,但是这个插件现在已经没有维护了,一直编译报错。
还想过一种,可不可以直接把第三方的aar放到uni项目的android目录下打包?因为包超过40M,uni需要付费才能打包= =
希望有类似开发经验的大佬帮帮忙,因为使用了云插件,所以还是需要在uni端打包,不能走离线打包。

  • II优选

    com.github.kezong:fat-aar:1.3.8 这个不会报错,但是解决不了打包大于40M需要付费

    2025-08-16 11:32

要回复问题请先登录注册