更新 gradle 插件 3.6 后 Android 应用程序运行时崩溃 [重复]

2023-12-01

Android 应用程序运行正常,没有崩溃,更新后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

首先实施multidex进入你的项目然后重新启动android studio并运行您的应用程序。
如果您仍然遇到此问题,那么您需要降级android studio's稳定版3.5.3

Below Android Studio 3.5禁用即时运行:

Android Studio --> File --> Setting --> Build, execution, deploy --> Instant run.

Issue: Click Me , Click Me

希望这个我能帮助你

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

更新 gradle 插件 3.6 后 Android 应用程序运行时崩溃 [重复] 的相关文章