发布版本上没有类定义的错误?

时间:2018-09-11 14:44:15

标签: android exoplayer

我似乎遇到了一个问题,其中只有发布版本因错误$command="Path to Command / Bat file" (Get-ChildItem -Path .\ -Force).Name | % { &"$command" ".\$_" `"`|`" "..\<SomePath>\$_.html"} 而崩溃。该类无关紧要,因为它在发布版本中也没有解决其他类。但是,这没有出现在Debug版本中,这根本没有任何意义。我发现当我包括这两个依赖项时:

java.lang.NoClassDefFoundError: Failed resolution of: Lretrofit2/Retrofit$Builder;

该应用程序崩溃。但是,当我排除其中之一时,该发行版便可以正常工作。有人遇到过吗?

构建配置如下:

implementation 'com.google.android.gms:play-services-ads:12.0.0'
implementation 'com.google.ads.interactivemedia.v3:interactivemedia:3.8.5'

1 个答案:

答案 0 :(得分:0)

更新您的gradle

targetSdkVersion 27

compileSdkVersion 27

buildtoolsVersion to 27.0.1或将其删除(将其保留为默认设置。gradle将始终在此版本27中寻找最新版本)

以上也解决了我的问题。虽然,我不使用multiDexEnabled true,因为我认为没有理由包括谷歌播放服务库。

尝试删除multiDexEnabled true并重新构建gradle。

除非您是扩展应用程序类的类,否则您可以使用multiDexEnable true

@Override
protected void attachBaseContext(Context context) {
    super.attachBaseContext(context);
    MultiDex.install(this);
}

check this question for possible solution