文档开发者中心
我的

【HIAI求助】在调用接口过程中找不到SDK中的动态库怎么办?

我在开发基于HIAI--sdk的应用过程中遇到了一些问题,论坛里有使用过此平台的朋友吗,还望指教,十分感谢!


开发工具:Android studio3.0
测试手机:huawei mate10
sdk版本:android 8.0 targetSdkVersion 26

在调用kirinaiddk.so动态库的接口时候报错提示找不到vendor.huawei.hardware.ai@1.0.so(SDK里面的某个动态库)。
kirinaiddk.so在使用ndk编译时使用了vendor.huawei.hardware.ai@1.0.so这一动态库。
我已经把vendor.huawei.hardware.ai@1.0.so放到指定目录里了,并且打开apk包分析的时候发现目录下是有这一动态库的。
但是在调用kirinaiddk.so动态库的接口时候报错提示就是找不到(错误如下),有谁知道是哪里出问题了吗?
  1. <span style="color: rgb(0, 0, 0); font-family: 宋体, &quot;Lucida Grande&quot;, &quot;Lucida Sans&quot;, Verdana, Arial, sans-serif; font-size: 13px; background-color: rgb(255, 255, 255);">E/AndroidRuntime: FATAL EXCEPTION: main </span>
  2. <span style="color: rgb(0, 0, 0); font-family: 宋体, &quot;Lucida Grande&quot;, &quot;Lucida Sans&quot;, Verdana, Arial, sans-serif; font-size: 13px; background-color: rgb(255, 255, 255);">                   Process: com.huawei.ddkexample.ui, PID: 15271 </span>
  3. <span style="color: rgb(0, 0, 0); font-family: 宋体, &quot;Lucida Grande&quot;, &quot;Lucida Sans&quot;, Verdana, Arial, sans-serif; font-size: 13px; background-color: rgb(255, 255, 255);">                   java.lang.UnsatisfiedLinkError: dlopen failed: library "vendor.huawei.hardware.ai@1.0.so" not found </span>
  4. <span style="color: rgb(0, 0, 0); font-family: 宋体, &quot;Lucida Grande&quot;, &quot;Lucida Sans&quot;, Verdana, Arial, sans-serif; font-size: 13px; background-color: rgb(255, 255, 255);">                       at java.lang.Runtime.loadLibrary0(Runtime.java:1016) </span>
  5. <span style="color: rgb(0, 0, 0); font-family: 宋体, &quot;Lucida Grande&quot;, &quot;Lucida Sans&quot;, Verdana, Arial, sans-serif; font-size: 13px; background-color: rgb(255, 255, 255);">                       at java.lang.System.loadLibrary(System.java:1660) </span>
  6. <span style="color: rgb(0, 0, 0); font-family: 宋体, &quot;Lucida Grande&quot;, &quot;Lucida Sans&quot;, Verdana, Arial, sans-serif; font-size: 13px; background-color: rgb(255, 255, 255);">                       at com.huawei.ddkexample.ui.ClassifyListActivity.<clinit>(ClassifyListActivity.java:13) </span>
  7. <span style="color: rgb(0, 0, 0); font-family: 宋体, &quot;Lucida Grande&quot;, &quot;Lucida Sans&quot;, Verdana, Arial, sans-serif; font-size: 13px; background-color: rgb(255, 255, 255);">                       at java.lang.Class.newInstance(Native Method) </span>
  8. <span style="color: rgb(0, 0, 0); font-family: 宋体, &quot;Lucida Grande&quot;, &quot;Lucida Sans&quot;, Verdana, Arial, sans-serif; font-size: 13px; background-color: rgb(255, 255, 255);">                       at android.app.Instrumentation.newActivity(Instrumentation.java:1178) </span>
  9. <span style="color: rgb(0, 0, 0); font-family: 宋体, &quot;Lucida Grande&quot;, &quot;Lucida Sans&quot;, Verdana, Arial, sans-serif; font-size: 13px; background-color: rgb(255, 255, 255);">                       at android.app.ActivityThread.performLaunchActivity(ActivityThread.java:3061) </span>
复制代码

点赞
收藏
回复
5
分享
举报
浏览1384 发布于2017-12-15 10:55未知归属地
全部评论
最多点赞
最新发布
最早发布
我也遇到了同样的问题
5楼回复于2019-02-20 07:52 未知归属地
目前出现的问题
  1. 12-28 20:22:54.684 2194-2194/? E/AndroidRuntime: FATAL EXCEPTION: main
  2.                                                  Process: com.huawei.ddkexample.ui, PID: 2194
  3.                                                  java.lang.UnsatisfiedLinkError: dlopen failed: library "vendor.huawei.hardware.ai@1.0.so" not found
  4.                                                      at java.lang.Runtime.loadLibrary0(Runtime.java:1016)
  5.                                                      at java.lang.System.loadLibrary(System.java:1660)
  6.                                                      at com.huawei.ddkexample.ui.ClassifyListActivity.<clinit>(ClassifyListActivity.java:18)
  7.                                                      at java.lang.Class.newInstance(Native Method)
  8.                                                      at android.app.Instrumentation.newActivity(Instrumentation.java:1178)
  9.                                                      at android.app.ActivityThread.performLaunchActivity(ActivityThread.java:3062)
  10.                                                      at android.app.ActivityThread.handleLaunchActivity(ActivityThread.java:3269)
  11.                                                      at android.app.ActivityThread.-wrap12(Unknown Source:0)
  12.                                                      at android.app.ActivityThread$H.handleMessage(ActivityThread.java:1881)
  13.                                                      at android.os.Handler.dispatchMessage(Handler.java:108)
  14.                                                      at android.os.Looper.loop(Looper.java:166)
  15.                                                      at android.app.ActivityThread.main(ActivityThread.java:7380)
  16.                                                      at java.lang.reflect.Method.invoke(Native Method)
  17.                                                      at com.android.internal.os.Zygote$MethodAndArgsCaller.run(Zygote.java:245)
  18.                                                      at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:926)
复制代码
4楼回复于2017-12-28 13:19 未知归属地
论坛里有使用过HIAI--SDK平台的朋友吗,如能帮我调通这一SDK,我这可以支付一些酬劳,有意向的朋友可以私信我!
3楼回复于2017-12-28 13:18 未知归属地
王大掌柜啊 发表于 2017-12-19 17:22
编译的Android.mk文件 不要把这个给添加上

十分感谢版主大人的回复!
1.首先我按照你的方法,在编译Android.mk文件的时候,把 vendor.huawei.hardware.ai@1.0.so 给去掉了,但是在调用kirinaiddk.so的时候,还是报错: java.lang.UnsatisfiedLinkError: dlopen failed: library "vendor.huawei.hardware.ai@1.0.so" not found
2.在ndk编译生成kirinaiddk.so时,是需要依赖一系列第三方动态库,这其中就包括了vendor.huawei.hardware.ai@1.0.so这一动态库。
3.在使用kirinaiddk.so的过程中,我已经把vendor.huawei.hardware.ai@1.0.so放到kirinaiddk.so所在目录里了,并且打开apk包分析的时候发现目录下是有这一动态库的。但是在调用kirinaiddk.so动态库的接口时候,其它的动态库都能找到,唯独vendor.huawei.hardware.ai@1.0.so这一动态库就是找不到。

请问版主是否还有其他解决思路啊,望指教,多谢!
2楼回复于2017-12-28 13:14 未知归属地
编译的Android.mk文件 不要把vendor.huawei.hardware.ai@1.0.so这个给添加上
1楼回复于2017-12-19 09:22 未知归属地
写回答
新增插入模板功能
一键使用模板,快速填写内容,轻松发帖~
知道了
  • 为了保障您的信息安全,请勿上传您的敏感个人信息(如您的密码等信息)和您的敏感资产信息(如关键源代码、签名私钥、调试安装包、业务日志等信息),且您需自行承担由此产生的信息泄露等安全风险。
  • 如您发布的内容为转载内容,请注明内容来源。

我要发帖子

了解社区公约,与您携手共创和谐专业的开发者社区。