[更新gradle插件3.6后,Android App运行时崩溃

问题描述 投票:0回答:1

Android App正常运行,没有崩溃,将Gradle插件更新为版本[[3.6后,遇到了以下运行时崩溃:

E/AndroidRuntime: FATAL EXCEPTION: main Process: my.package.app, PID: 9420 java.lang.NoClassDefFoundError: Failed resolution of: Landroidx/appcompat/R$drawable; at androidx.appcompat.widget.AppCompatDrawableManager.<clinit>(AppCompatDrawableManager.java:113) at androidx.appcompat.widget.AppCompatDrawableManager.get(Unknown Source:0) at androidx.appcompat.widget.TintTypedArray.getDrawableIfKnown(TintTypedArray.java:86) at androidx.appcompat.app.AppCompatDelegateImpl.<init>(AppCompatDelegateImpl.java:260) at androidx.appcompat.app.AppCompatDelegate.create(AppCompatDelegate.java:182) at androidx.appcompat.app.AppCompatActivity.getDelegate(AppCompatActivity.java:520) at androidx.appcompat.app.AppCompatActivity.onCreate(AppCompatActivity.java:71) at my.package.app.abstracts.BaseActivity.onCreate(BaseActivity.java:94) at my.package.app.ui.activity_splash.SplashActivity.onCreate(SplashActivity.java:48) at android.app.Activity.performCreate(Activity.java:7335) at android.app.Activity.performCreate(Activity.java:7326) at android.app.Instrumentation.callActivityOnCreate(Instrumentation.java:1275) at android.app.ActivityThread.performLaunchActivity(ActivityThread.java:3119) at android.app.ActivityThread.handleLaunchActivity(ActivityThread.java:3282) at android.app.servertransaction.LaunchActivityItem.execute(LaunchActivityItem.java:78) at android.app.servertransaction.TransactionExecutor.executeCallbacks(TransactionExecutor.java:108) at android.app.servertransaction.TransactionExecutor.execute(TransactionExecutor.java:68) at android.app.ActivityThread$H.handleMessage(ActivityThread.java:1970) at android.os.Handler.dispatchMessage(Handler.java:106) at android.os.Looper.loop(Looper.java:214) at android.app.ActivityThread.main(ActivityThread.java:7156) at java.lang.reflect.Method.invoke(Native Method) at com.android.internal.os.RuntimeInit$MethodAndArgsCaller.run(RuntimeInit.java:494) at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:975) Caused by: java.lang.ClassNotFoundException: Didn't find class "androidx.appcompat.R$drawable" on path: DexPathList[[zip file "/data/app/my.package.app-ubNE5Y0S9Ec7hNJGohi9Sw==/base.apk"],nativeLibraryDirectories=[/data/app/my.package.app-ubNE5Y0S9Ec7hNJGohi9Sw==/lib/arm, /data/app/my.package.app-ubNE5Y0S9Ec7hNJGohi9Sw==/base.apk!/lib/armeabi-v7a, /system/lib, /system/vendor/lib]] at dalvik.system.BaseDexClassLoader.findClass(BaseDexClassLoader.java:134) at java.lang.ClassLoader.loadClass(ClassLoader.java:379) at java.lang.ClassLoader.loadClass(ClassLoader.java:312) at androidx.appcompat.widget.AppCompatDrawableManager.<clinit>(AppCompatDrawableManager.java:113)  at androidx.appcompat.widget.AppCompatDrawableManager.get(Unknown Source:0)  at androidx.appcompat.widget.TintTypedArray.getDrawableIfKnown(TintTypedArray.java:86)  at androidx.appcompat.app.AppCompatDelegateImpl.<init>(AppCompatDelegateImpl.java:260)  at androidx.appcompat.app.AppCompatDelegate.create(AppCompatDelegate.java:182)  at androidx.appcompat.app.AppCompatActivity.getDelegate(AppCompatActivity.java:520)  at androidx.appcompat.app.AppCompatActivity.onCreate(AppCompatActivity.java:71)  at my.package.app.abstracts.BaseActivity.onCreate(BaseActivity.java:94)  at my.package.app.ui.activity_splash.SplashActivity.onCreate(SplashActivity.java:48)  at android.app.Activity.performCreate(Activity.java:7335)  at android.app.Activity.performCreate(Activity.java:7326)  at android.app.Instrumentation.callActivityOnCreate(Instrumentation.java:1275)  at android.app.ActivityThread.performLaunchActivity(ActivityThread.java:3119)  at android.app.ActivityThread.handleLaunchActivity(ActivityThread.java:3282)  at android.app.servertransaction.LaunchActivityItem.execute(LaunchActivityItem.java:78)  at android.app.servertransaction.TransactionExecutor.executeCallbacks(TransactionExecutor.java:108)  at android.app.servertransaction.TransactionExecutor.execute(TransactionExecutor.java:68)  at android.app.ActivityThread$H.handleMessage(ActivityThread.java:1970)  at android.os.Handler.dispatchMessage(Handler.java:106)  at android.os.Looper.loop(Looper.java:214)  at android.app.ActivityThread.main(ActivityThread.java:7156)  at java.lang.reflect.Method.invoke(Native Method)  at com.android.internal.os.RuntimeInit$MethodAndArgsCaller.run(RuntimeInit.java:494)  at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:975)  ext.gradlVersion = '3.6.0' ... classpath "com.android.tools.build:gradle:$gradlVersion" distributionUrl=https\://services.gradle.org/distributions/gradle-5.6.4-all.zip
android gradle android-gradle-plugin runtimeexception
1个回答
0
投票

在AndroidX中迁移项目后,首先备份项目

1)转到工具栏,进入

重构

2)转到底部选项,然后选择迁移到androidX并在检查是否此错误之后迁移它。
© www.soinside.com 2019 - 2024. All rights reserved.