【问题标题】:Lollipop optimized app compiling on Kitkat - LayoutInflaterCompatHC NoClassDefFoundError在 Kitkat 上编译 Lollipop 优化的应用程序 - LayoutInflaterCompatHC NoClassDefFoundError
【发布时间】:2023-03-28 19:00:02
【问题描述】:

我为 Api 21 (Lollipop) 开发了一个应用程序,我希望这个应用程序在 Api 19 (Kitkat+) 设备上运行。

很遗憾我收到了这个错误:

E/AndroidRuntime﹕ FATAL EXCEPTION: main
Process: com.myurl.myapp , PID: 14398
java.lang.NoClassDefFoundError: android.support.v4.view.LayoutInflaterCompatHC
  at android.support.v4.view.LayoutInflaterCompat$LayoutInflaterCompatImplV11.setFactory(LayoutInflaterCompat.java:42)
  at android.support.v4.view.LayoutInflaterCompat.setFactory(LayoutInflaterCompat.java:79)
  at android.support.v7.app.AppCompatDelegateImplV7.installViewFactory(AppCompatDelegateImplV7.java:790)
  at android.support.v7.app.AppCompatActivity.onCreate(AppCompatActivity.java:57)
  at com.myurl.myapp.FeedActivity.onCreate(FeedActivity.java:194)

这发生在 onCreate() 方法的第一行:

super.onCreate(savedInstanceState);

这些是我的导入:

dependencies {
  compile fileTree(dir: 'libs', include: ['*.jar'])
  compile 'com.android.support:support-v4:21.+'
  compile "com.android.support:appcompat-v7:21.0.+"
  compile 'com.android.support:cardview-v7:21.+'
  compile 'com.android.support:recyclerview-v7:21.+'
}

有人知道如何解决这个问题吗?

【问题讨论】:

  • 您的应用中是否启用了 multidex ?
  • 我尝试了不启用 multidex 和使用 playservises:identitty libs 的解决方案,但它不起作用。
  • @gomino 是的,多索引已启用

标签: android android-4.4-kitkat android-appcompat


【解决方案1】:

如果有最新的buildToolsVersion,你运行哪个设备都没有关系。

android {
    compileSdkVersion 23
    buildToolsVersion "23.0.2"

    defaultConfig {
        applicationId "your.app.id"
        minSdkVersion 16
        targetSdkVersion 21
        versionCode 1
        versionName "1.0"
    }
}

ext {
    supportLibVersion = '23.1.1'
    playServiceVersion = '8.3.0'
}

dependencies {
    compile "com.android.support:design:${supportLibVersion}"
    compile "com.android.support:cardview-v7:${supportLibVersion}"
    compile "com.android.support:appcompat-v7:${supportLibVersion}"
    compile "com.android.support:recyclerview-v7:${supportLibVersion}"
    compile "com.google.android.gms:play-services:${playServiceVersion}"
}

【讨论】:

    猜你喜欢
    • 2023-04-11
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2018-11-30
    • 1970-01-01
    • 1970-01-01
    • 2023-03-08
    相关资源
    最近更新 更多