更新到 Android Studio 3.6 后,应用程序在 运行 时间内崩溃

App crashes during run-time after updating to Android Studio 3.6

我已经尝试过使缓存失效、清理项目、重新安装应用程序。 我没有使用数据绑定。

我正在使用 Realm 插件 io.realm:realm-gradle-plugin:5.3.1

以下是来自 build.gradle 的一些相关信息:

compileSdkVersion 29
buildToolsVersion 29.0.3

implementation "androidx.appcompat:appcompat:1.1.0"

Android Gradle 插件: 3.6.0
Gradle: 5.6.4

这是日志:

java.lang.NoClassDefFoundError: Failed resolution of: Landroidx/appcompat/R$drawable;
    at androidx.appcompat.widget.AppCompatDrawableManager.<init>(AppCompatDrawableManager.java:63)
    at androidx.appcompat.widget.AppCompatDrawableManager.preload(AppCompatDrawableManager.java:57)
    at androidx.appcompat.app.AppCompatDelegateImpl.<init>(AppCompatDelegateImpl.java:328)
    at androidx.appcompat.app.AppCompatDelegateImpl.<init>(AppCompatDelegateImpl.java:278)
    at androidx.appcompat.app.AppCompatDelegate.create(AppCompatDelegate.java:221)
    at androidx.appcompat.app.AppCompatActivity.getDelegate(AppCompatActivity.java:543)
    at androidx.appcompat.app.AppCompatActivity.attachBaseContext(AppCompatActivity.java:98)
    at android.app.Activity.attach(Activity.java:6909)
    at android.app.ActivityThread.performLaunchActivity(ActivityThread.java:2759)
    at android.app.ActivityThread.handleLaunchActivity(ActivityThread.java:2904)
    at android.app.ActivityThread.-wrap11(Unknown Source:0)
    at android.app.ActivityThread$H.handleMessage(ActivityThread.java:1596)
    at android.os.Handler.dispatchMessage(Handler.java:105)
    at android.os.Looper.loop(Looper.java:164)
    at android.app.ActivityThread.main(ActivityThread.java:6600)
    at java.lang.reflect.Method.invoke(Native Method)
    at com.android.internal.os.Zygote$MethodAndArgsCaller.run(Zygote.java:240)
    at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:772)
 Caused by: java.lang.ClassNotFoundException: Didn't find class "androidx.appcompat.R$drawable" on path: DexPathList[[zip file "/data/app/com.develop-dkwyyr2-QVmFBqzVHNDZtQ==/base.apk"],nativeLibraryDirectories=[/data/app/com.develop-dkwyyr2-QVmFBqzVHNDZtQ==/lib/arm64, /data/app/com.develop-dkwyyr2-QVmFBqzVHNDZtQ==/base.apk!/lib/arm64-v8a, /system/lib64, /vendor/lib64]]
    at dalvik.system.BaseDexClassLoader.findClass(BaseDexClassLoader.java:93)
    at java.lang.ClassLoader.loadClass(ClassLoader.java:379)
    at java.lang.ClassLoader.loadClass(ClassLoader.java:312)
    at androidx.appcompat.widget.AppCompatDrawableManager.<init>(AppCompatDrawableManager.java:63) 
    at androidx.appcompat.widget.AppCompatDrawableManager.preload(AppCompatDrawableManager.java:57) 
    at androidx.appcompat.app.AppCompatDelegateImpl.<init>(AppCompatDelegateImpl.java:328) 
    at androidx.appcompat.app.AppCompatDelegateImpl.<init>(AppCompatDelegateImpl.java:278) 
    at androidx.appcompat.app.AppCompatDelegate.create(AppCompatDelegate.java:221) 
    at androidx.appcompat.app.AppCompatActivity.getDelegate(AppCompatActivity.java:543) 
    at androidx.appcompat.app.AppCompatActivity.attachBaseContext(AppCompatActivity.java:98) 
    at android.app.Activity.attach(Activity.java:6909) 
    at android.app.ActivityThread.performLaunchActivity(ActivityThread.java:2759) 
    at android.app.ActivityThread.handleLaunchActivity(ActivityThread.java:2904) 
    at android.app.ActivityThread.-wrap11(Unknown Source:0) 
    at android.app.ActivityThread$H.handleMessage(ActivityThread.java:1596) 
    at android.os.Handler.dispatchMessage(Handler.java:105) 
    at android.os.Looper.loop(Looper.java:164) 
    at android.app.ActivityThread.main(ActivityThread.java:6600) 
    at java.lang.reflect.Method.invoke(Native Method) 
    at com.android.internal.os.Zygote$MethodAndArgsCaller.run(Zygote.java:240) 
    at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:772) 

您在项目中使用 Realm 吗?我遇到了同样的问题并通过将我的 Realm 依赖项升级到最新的稳定版本来修复它,因为我发现 this related issue.

在 build.gradle(项目)上:

dependencies {

    classpath 'io.realm:realm-gradle-plugin:6.0.2'
}

之后,我清理并重建了项目(以防万一)。