对DJISDKManager的任何调用都会导致致命的崩溃,没有错误或异常-4.11

时间:2019-11-15 17:27:53

标签: android androidx dji-sdk

我最近将应用程序更新为使用AndroidX和DJI SDK 4.11,其中包括更新这些版本:

DJI SDK from 4.10 to 4.11
compileSdkVersion from 27 to 28
ext.kotlin_version from 1.2.61 to 1.3.41
com.android.tools.build:gradle from 3.2.1 to 3.4.1
gradle from 4.6 to 5.1.1

已添加

android.useAndroidX=true
android.enableJetifier=true

我还包含在gradle文件和清单文件中

gradle:
android {
    useLibrary 'org.apache.http.legacy'
}

manifest:
<uses-library android:name="org.apache.http.legacy" android:required="false"/>

使用旧版http调用修复DJI SDK的异常

但是,当我对DJISDKManager进行诸如getInstance()之类的任何调用时,它崩溃而没有任何错误或异常。这是在调试中,因此proguard在这一点上不应该删除任何重要的内容。我搜寻了互联网,试图找到不同的答案或可能性,并进行了上述更改以解决不同的问题,但是我很困惑。任何人都有相似的经验并想出解决方法?

编辑:我启用了Java异常断点和异常断点,并收到以下异常:android.system.ErrnoException:打开失败:ENOENT(没有此类文件或目录)

1 个答案:

答案 0 :(得分:0)

此配置有效,我可以验证...

build.gradle:3.5.1。 (如果使用3.5,则会崩溃 2)

科特琳:1.3.50

buildTools版本29.0.2

compileSdkVersion 29

还要检查packageOptions,它们是否已更改,并根据示例进行验证

您可能还需要添加RECORD_AUDIO的权限,对此有一些说明,但现在找不到。