![](/img/trans.png)
[英]Java.Lang.ClassNotFoundException: Didn't find class “android.view.CoordinatorLayout”
[英]AndroidRuntime Caused by: java.lang.ClassNotFoundException: Didn't find class “android.support.multidex.MultiDexApplication”
我在发布模式下启动我的应用程序时遇到问题。
我已经为调试和发布模式启用了MultiDex。 在Debug模式下进行部署时,我的应用程序运行正常,一切正常。 但是当我启动它的发布模式时,它在启动时崩溃。 这是设备日志:
Android清单:
<?xml version="1.0" encoding="utf-8"?>
<manifest xmlns:android="http://schemas.android.com/apk/res/android"
android:versionName="17.2" android:versionCode="1"
android:installLocation="auto" package="com.myapp">
<uses-sdk android:minSdkVersion="19" android:targetSdkVersion="28" />
<uses-permission android:name="android.permission.WRITE_EXTERNAL_STORAGE" />
<uses-permission android:name="android.permission.INTERNET" />
<uses-permission android:name="android.permission.ACCESS_NETWORK_STATE" />
<application android:label="Test Application" android:largeHeap="true" android:icon="@drawable/AppIcon" android:supportsRtl="true">
<provider android:name="android.support.v4.content.FileProvider" android:authorities="${applicationId}.provider" android:exported="false" android:grantUriPermissions="true">
<meta-data android:name="android.support.FILE_PROVIDER_PATHS" android:resource="@xml/provider_paths" />
</provider>
</application>
</manifest>
使您的应用程序扩展MultiDexApplication。 如果还没有,请像下面这样创建一个BaseApplication类:
public class BaseApplication extends MultiDexApplication {
@Override
public void onCreate() {
super.onCreate();
}
@Override
protected void attachBaseContext(Context base) {
super.attachBaseContext(base);
MultiDex.install(this);
}
}
另外,将以下内容添加到您的build.gradle中:
multiDexEnabled true
对于您的依赖项:
dependencies {
implementation 'androidx.multidex:multidex:2.0.1'
}
或者如果不使用AndroidX
dependencies {
implementation 'com.android.support:multidex:1.0.3'
}
最后,在清单中的application标签内添加:
android:name="android.support.multidex.MultiDexApplication"
要么
android:name="androidx.multidex.MultiDexApplication"
如果您已迁移到AndroidX
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.