android - 获取异常 : java. lang.NoClassDefFoundError : android. support.v7.app.AppCompatDelegateImplV14

标签 android android-appcompat android-design-library androiddesignsupport appcompatactivity

我最近更新了 Android Studio 和 android 设计库,之后出现异常 java.lang.NoClassDefFoundError: android.support.v7.app.AppCompatDelegateImplV14

不确定是什么问题,我几乎尝试了所有方法,它在 lollipop 5.1 设备(nexus 4)中工作,但在 Android 4.4 设备和 4.02 设备中不起作用。它在所有版本的更新之前都在工作。

我尝试了 stackoverflow 中提到的所有解决方案,但没有任何效果。

还尝试删除 build.gradle 中的 compile 'com.android.support:support-v4:22.2.0' 行,但它也没有用。

还尝试了清理和重建,但还是没有用。

07-13 18:51:26.702: E/AndroidRuntime(1105): FATAL EXCEPTION: main
07-13 18:51:26.702: E/AndroidRuntime(1105): Process: com.stackoverflow.ranjith.androidprojdel, PID: 1105
07-13 18:51:26.702: E/AndroidRuntime(1105): java.lang.NoClassDefFoundError: android.support.v7.app.AppCompatDelegateImplV14
07-13 18:51:26.702: E/AndroidRuntime(1105):     at android.support.v7.app.AppCompatDelegate.create(AppCompatDelegate.java:93)
07-13 18:51:26.702: E/AndroidRuntime(1105):     at android.support.v7.app.AppCompatDelegate.create(AppCompatDelegate.java:77)
07-13 18:51:26.702: E/AndroidRuntime(1105):     at android.support.v7.app.AppCompatActivity.getDelegate(AppCompatActivity.java:429)
07-13 18:51:26.702: E/AndroidRuntime(1105):     at android.support.v7.app.AppCompatActivity.onCreate(AppCompatActivity.java:57)
07-13 18:51:26.702: E/AndroidRuntime(1105):     at com.stackoverflow.ranjith.androidprojdel.AppCompActivity.onCreate(AppCompActivity.java:34)
07-13 18:51:26.702: E/AndroidRuntime(1105):     at android.app.Activity.performCreate(Activity.java:5231)
07-13 18:51:26.702: E/AndroidRuntime(1105):     at android.app.Instrumentation.callActivityOnCreate(Instrumentation.java:1087)
07-13 18:51:26.702: E/AndroidRuntime(1105):     at android.app.ActivityThread.performLaunchActivity(ActivityThread.java:2148)
07-13 18:51:26.702: E/AndroidRuntime(1105):     at android.app.ActivityThread.handleLaunchActivity(ActivityThread.java:2233)
07-13 18:51:26.702: E/AndroidRuntime(1105):     at android.app.ActivityThread.access$800(ActivityThread.java:135)
07-13 18:51:26.702: E/AndroidRuntime(1105):     at android.app.ActivityThread$H.handleMessage(ActivityThread.java:1196)
07-13 18:51:26.702: E/AndroidRuntime(1105):     at android.os.Handler.dispatchMessage(Handler.java:102)
07-13 18:51:26.702: E/AndroidRuntime(1105):     at android.os.Looper.loop(Looper.java:136)
07-13 18:51:26.702: E/AndroidRuntime(1105):     at android.app.ActivityThread.main(ActivityThread.java:5001)
07-13 18:51:26.702: E/AndroidRuntime(1105):     at java.lang.reflect.Method.invokeNative(Native Method)
07-13 18:51:26.702: E/AndroidRuntime(1105):     at java.lang.reflect.Method.invoke(Method.java:515)
07-13 18:51:26.702: E/AndroidRuntime(1105):     at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:785)
07-13 18:51:26.702: E/AndroidRuntime(1105):     at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:601)
07-13 18:51:26.702: E/AndroidRuntime(1105):     at dalvik.system.NativeStart.main(Native Method)

build.gradle:

buildscript {
    repositories {
        maven { url 'https://maven.fabric.io/public' }
    }

    dependencies {
        classpath 'io.fabric.tools:gradle:1.+'
    }
}
apply plugin: 'com.android.application'
apply plugin: 'io.fabric'

android {
    compileSdkVersion 22
    buildToolsVersion "22.0.1"

    defaultConfig {
        applicationId "com.stackoverflow.ranjith.androidprojdel"
        minSdkVersion 15
        targetSdkVersion 22
        versionCode 1
        versionName "1.0"
        multiDexEnabled true
    }
}
repositories {
    maven { url "https://oss.sonatype.org/content/repositories/snapshots/" }
    maven { url 'https://maven.fabric.io/public' }
}

dependencies {
    compile fileTree(dir: 'libs', include: ['*.jar'])
    compile 'com.android.support:appcompat-v7:22.2.0'
    compile 'com.parse.bolts:bolts-android:1.+'
    compile 'com.android.support:cardview-v7:22.2.0'
    compile 'com.android.support:recyclerview-v7:22.2.0'
    compile 'com.android.support:support-v4:22.2.0'
    compile 'com.google.android.gms:play-services:7.5.0'
    compile 'com.android.support:design:22.2.0'
    compile 'com.github.flavienlaurent.datetimepicker:library:0.0.2'
    compile 'joda-time:joda-time:2.8'
    compile 'com.github.ranjithnair02:simplecontactmview:0.6-SNAPSHOT'
    compile 'com.github.alamkanak:android-week-view:1.2.3'
    compile('com.crashlytics.sdk.android:crashlytics:2.4.0@aar') {
        transitive = true;
    }
    compile('com.digits.sdk.android:digits:1.6.1@aar') {
        transitive = true;
    }
}

我的 style.xml

<resources>
    <style name="AppTheme" parent="Theme.AppCompat.Light.NoActionBar">
        <item name="colorPrimary">#673AB7</item>
        <item name="colorPrimaryDark">#512DA8</item>
        <item name="colorAccent">#4400b0</item>
    </style>
<resources>

最佳答案

我解决了这个问题,如果有人遇到这个问题,请尝试这些选项(第 3 点解决了我的问题):

  1. 在build.gradle的defaultConfig中添加multiDexEnabled true

    默认配置{ applicationId“com.something.ranjith.androidprojdel” minSdkVersion 15 targetSdk版本 22 版本代码 1 版本名称“1.0” multiDexEnabled 真 }

  2. 如果您的 Activity 扩展了“AppcompatActivity”,请移除 android 支持库

    compile 'com.android.support:support-v4:22.+'//删除这个

  3. 如果您的应用程序中有 PlayServices,请移除 PlayServices 并添加单独的 API。 例如:-如果您使用 PlayServices 来转换广告,则只需添加 compile com.google.android.gms:play-services-ads:7.5.0 而不是 compile com.google.android.gms:play-services:7.5.0

PlayService 的各个 API 列表:

  • Google+ com.google.android.gms:play-services-plus:7.5.0
  • Google 帐户登录 com.google.android.gms:play-services-identity:7.5.0
  • Google Actions,基本客户端库 com.google.android.gms:play-services-base:7.5.0
  • Google App Indexing com.google.android.gms:play-services-appindexing:7.5.0
  • Google App Invites com.google.android.gms:play-services-appinvite:7.5.0
  • 谷歌分析 com.google.android.gms:play-services-analytics:7.5.0
  • Google Cast com.google.android.gms:play-services-cast:7.5.0
  • Google 云消息传递 com.google.android.gms:play-services-gcm:7.5.0
  • Google 云端硬盘 com.google.android.gms:play-services-drive:7.5.0
  • Google 健身 com.google.android.gms:play-services-fitness:7.5.0
  • Google 位置、 Activity 识别和地点
    com.google.android.gms:play-services-location:7.5.0
  • 谷歌地图 com.google.android.gms:play-services-maps:7.5.0
  • 移动广告 com.google.android.gms:play-services-ads:7.5.0
  • 谷歌附近 com.google.android.gms:play-services-nearby:7.5.0
  • Google 全景查看器 `com.google.android.gms:play-services-panorama:7.5.0
  • Google Play 游戏服务 com.google.android.gms:play-services-games:7.5.0
  • 安全网 com.google.android.gms:play-services-safetynet:7.5.0
  • Google 钱包 com.google.android.gms:play-services-wallet:7.5.0
  • Android Wear com.google.android.gms:play-services-wearable:7.5.0

关于android - 获取异常 : java. lang.NoClassDefFoundError : android. support.v7.app.AppCompatDelegateImplV14,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/31384935/

相关文章:

android - RuntimeException 内容具有 id 属性为 'android.R.id.list_container' 的 View ,该 View 不是 ViewGroup 类

android - AppCompatEditText 安卓 :digits not working?

android - CoordinatorLayout 内的 ViewPager 中的非滚动 fragment

android - TabLayout(Android 设计库)文本颜色

java - 如何在不损失质量的情况下缩放屏幕截图?

android - 如何使用 RxJava-Android 等待多个嵌套异步调用?

java - 有人请解释一下错误

android - Kotlin 使用 Gson 将 json 字符串转换为对象列表

android - 带有 colorAcent 的主题( Material 支持 appcompat)不适用于自定义小部件

android - 显示 snackbar 时,来自设计支持库的 FAB 不会向上移动