Android-DJI UX SDK和Espresso-VerifyError

时间:2019-03-13 11:26:32

标签: gradle android-espresso dji-sdk

为了消除以下错误,我必须在build.gradle文件中排除哪些模块:

java.lang.VerifyError: Verifier rejected class dji.keysdk.CameraKey due to bad method void dji.keysdk.CameraKey.<init>(dji.sdksharedlib.keycatalog.DJISDKCacheKey) (declaration of 'dji.keysdk.CameraKey' appears in /data/app/pl.company.dev.test-1/base.apk:classes3.dex)
at dji.ux.widget.FPVOverlayWidget.<clinit>(Unknown Source)
at java.lang.reflect.Constructor.newInstance(Native Method)
at java.lang.reflect.Constructor.newInstance(Constructor.java:288)
at android.view.LayoutInflater.createView(LayoutInflater.java:607)
at android.view.LayoutInflater.createViewFromTag(LayoutInflater.java:743)
at android.view.LayoutInflater.rInflate(LayoutInflater.java:806)
at android.view.LayoutInflater.rInflate(LayoutInflater.java:809)

我的build.gradle文件包含以下DJI依赖项:

implementation 'com.dji:dji-uxsdk:4.9'
compileOnly 'com.dji:dji-sdk-provided:4.9'
androidTestImplementation 'com.dji:dji-uxsdk:4.9'

我想为使用DJI UX SDK的活动编写一些Espresso测试 我已经尝试但没有用的东西:

  • 重建应用程序
  • 使缓存无效并在Android Studio中重新启动
  • 删除文件夹:build.idea.gradle
  • 另一台PC上的整个过程
  • 从DJI SDK中排除一些不需要的依赖项

1 个答案:

答案 0 :(得分:0)

您不应在应用程序和测试中包含相同的依赖项。

应用程序中的所有内容都已经在仪器测试的类路径中。

在您的特定情况下,删除  androidTestImplementation 'com.dji:dji-uxsdk:4.9'