android – UnsatisfiedLinkError:找不到byte []的实现dji.midware.natives.SDKRelativeJNI.native_getXXX(…)

描述:
android sdk更新到版本28并将DJI sdk从版本4.6更新到4.9后,应用程序在任何模拟器上运行都会出现问题.在DJI sdk注册应用程序崩溃期间.

> DJI sdk:4.9
> Android sdk(compileSdkVersion):28
> Android系统版:每一个
> Android设备:模拟器

崩溃堆栈跟踪:

java.lang.UnsatisfiedLinkError: No implementation found for byte[] dji.midware.natives.SDKRelativeJNI.native_getXXXX(java.lang.String) (tried Java_dji_midware_natives_SDKRelativeJNI_native_1getXXXX and Java_dji_midware_natives_SDKRelativeJNI_native_1getXXXX__Ljava_lang_String_2)
at dji.midware.natives.SDKRelativeJNI.native_getXXXX(Native Method)
at com.dji.h.a.a.c.b(Unknown Source)
at dji.midware.e.b(Unknown Source)
at dji.sdk.sdkmanager.DJISDKManager.(Unknown Source)
at dji.sdk.sdkmanager.DJISDKManager.getInstance(Unknown Source)
at PACKAGE_NAME.dji.DJIProvider$registerTask$1.run(DJIProvider.kt:39)
at PACKAGE_NAME.dji.DJIProvider.startSDKRegistration(DJIProvider.kt:127)
at PACKAGE_NAME.MainActivity$registerDJISDK$1.onExecutorReady(MainActivity.kt:595)
at PACKAGE_NAME..helpers.ui.SimpleDelayedExecutor$executeDelayed$1.run(DelayedExecutor.kt:20)
at android.os.Handler.handleCallback(Handler.java:739)
at android.os.Handler.dispatchMessage(Handler.java:95)
at android.os.Looper.loop(Looper.java:148)
at android.app.ActivityThread.main(ActivityThread.java:5417)
at java.lang.reflect.Method.invoke(Native Method)
at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:726)
at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:616)

解决方法:

DJI需要在这个问题上采取行动:

1)在Android Studio中,当您创建新的虚拟设备时,当您转到选择系统映像时,请转到其他图像选项卡.从那里选择任何’手臂’图像并使用它.使用此选项时,模拟器将非常慢,如果您的计算机是旧的或慢的,则可能根本不运行.

2)在启用调试模式的情况下将真正的Android设备连接到您的计算机并在其上运行演示.

3)在build.gradle文件中,将compileSdkVersion和targetSdkVersion设置为22,这是DJI提供的libffmpeg.so文件将加载的最新版本.这是最糟糕的选择,因为谷歌不允许任何人发布这个低版本的SDK版本的应用程序.该版本现在必须为26或以上:https://support.google.com/googleplay/android-developer/answer/113469#targetsdk

4)回滚到4.6:P

上一篇:java-将我的Eclipse项目正确导出为可运行的jar


下一篇:java调用dll报错Exception in thread "main" java.lang.UnsatisfiedLinkError: demo.TestJNI.DLL_ADD