当前位置:   article > 正文

android v7几种报错NoClassDefFoundError: Failed resolution of: Landroid/support/v7/appcompat/R$styleable_android failed resolution of: br;

android failed resolution of: br;

使用v7 包注意事项:

 

第一种报错:

AndroidRuntime: java.lang.NoClassDefFoundError: Failed resolution of: Landroid/support/v7/appcompat/R$styleable;

11-24 11:01:16.642  2040  2040 E AndroidRuntime: Process: com.qinggan.airtrip, PID: 2040
11-24 11:01:16.642  2040  2040 E AndroidRuntime: java.lang.NoClassDefFoundError: Failed resolution of: Landroid/support/v7/appcompat/R$styleable;
11-24 11:01:16.642  2040  2040 E AndroidRuntime:        at android.support.v7.app.AppCompatDelegateImplV7.createSubDecor(AppCompatDelegateImplV7.java:327)
11-24 11:01:16.642  2040  2040 E AndroidRuntime:        at android.support.v7.app.AppCompatDelegateImplV7.ensureSubDecor(AppCompatDelegateImplV7.java:300)
11-24 11:01:16.642  2040  2040 E AndroidRuntime:        at android.support.v7.app.AppCompatDelegateImplV7.setContentView(AppCompatDelegateImplV7.java:264)
11-24 11:01:16.642  2040  2040 E AndroidRuntime:        at android.support.v7.app.AppCompatActivity.setContentView(AppCompatActivity.java:129)
11-24 11:01:16.642  2040  2040 E AndroidRuntime:        at com.qinggan.app.airtrip.ui.home.AirTripMainActivity.onQGPreCreate(AirTripMainActivity.java:134)
11-24 11:01:16.642  2040  2040 E AndroidRuntime:        at com.qinggan.app.airtrip.PreLoaderActivity.onCreate(PreLoaderActivity.java:29)
11-24 11:01:16.642  2040  2040 E AndroidRuntime:        at android.app.Activity.performCreate(Activity.java:6264)
11-24 11:01:16.642  2040  2040 E AndroidRuntime:        at android.app.Instrumentation.callActivityOnCreate(Instrumentation.java:1107)
11-24 11:01:16.642  2040  2040 E AndroidRuntime:        at android.app.ActivityThread.performLaunchActivity(ActivityThread.java:2369)
11-24 11:01:16.642  2040  2040 E AndroidRuntime:        at android.app.ActivityThread.handleLaunchActivity(ActivityThread.java:2478)
11-24 11:01:16.642  2040  2040 E AndroidRuntime:        at android.app.ActivityThread.-wrap11(ActivityThread.java)
11-24 11:01:16.642  2040  2040 E AndroidRuntime:        at android.app.ActivityThread$H.handleMessage(ActivityThread.java:1344)
11-24 11:01:16.642  2040  2040 E AndroidRuntime:        at android.os.Handler.dispatchMessage(Handler.java:102)
11-24 11:01:16.642  2040  2040 E AndroidRuntime:        at android.os.Looper.loop(Looper.java:148)
11-24 11:01:16.642  2040  2040 E AndroidRuntime:        at android.app.ActivityThread.main(ActivityThread.java:5447)
11-24 11:01:16.642  2040  2040 E AndroidRuntime:        at java.lang.reflect.Method.invoke(Native Method)
11-24 11:01:16.642  2040  2040 E AndroidRuntime:        at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:839)
11-24 11:01:16.642  2040  2040 E AndroidRuntime:        at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:729)
11-24 11:01:16.642  2040  2040 E AndroidRuntime: Caused by: java.lang.ClassNotFoundException: Didn't find class "android.support.v7.appcompat.R$styleable" on path: DexPathList[[zip file "/data/app/com.qing]
11-24 11:01:16.642  2040  2040 E AndroidRuntime:        at dalvik.system.BaseDexClassLoader.findClass(BaseDexClassLoader.java:56)
11-24 11:01:16.642  2040  2040 E AndroidRuntime:        at java.lang.ClassLoader.loadClass(ClassLoader.java:511)
11-24 11:01:16.642  2040  2040 E AndroidRuntime:        at java.lang.ClassLoader.loadClass(ClassLoader.java:469)
11-24 11:01:16.642  2040  2040 E AndroidRuntime:        ... 18 more
11-24 11:01:16.642  2040  2040 E AndroidRuntime:        Suppressed: java.lang.ClassNotFoundException: android.support.v7.appcompat.R$styleable
11-24 11:01:16.642  2040  2040 E AndroidRuntime:                at java.lang.Class.classForName(Native Method)
11-24 11:01:16.642  2040  2040 E AndroidRuntime:                at java.lang.BootClassLoader.findClass(ClassLoader.java:781)
11-24 11:01:16.642  2040  2040 E AndroidRuntime:                at java.lang.BootClassLoader.loadClass(ClassLoader.java:841)
11-24 11:01:16.642  2040  2040 E AndroidRuntime:                at java.lang.ClassLoader.loadClass(ClassLoader.java:504)
11-24 11:01:16.642  2040  2040 E AndroidRuntime:                ... 19 more
11-24 11:01:16.642  2040  2040 E AndroidRuntime:        Caused by: java.lang.NoClassDefFoundError: Class not found using the boot class loader; no stack trace available
[  181.120425] bootwatch: system boot normal, exit watch.

 

原因是:找不到pat/R$styleable;   style是资源文件。找不到资源文件。如果想要有资源文件,需要是aar 。 看build.gradle 中:

compile files('libs/android-support-v7-appcompat.jar')

引用的是v7 jar包。所以没有资源文件导致crash。

改正:

compile 'com.android.support:appcompat-v7:25.0.0'

 

第二种:

Fragment  引用的v4 包下的, 获取FragmentTransaction 也是使用的 getSupportFragmentManager 。但是一直报错,找不到

getSupportFragmentManager  。 原因是 activity 没有使用 AppCompatActivity而是使用的Activity ,所以getSupportFragmentManager 找不到。

第三种:

主题配置错误,引用v7后,AppCompatActivity , Application 配置主题,需要使用Theme.AppCompat.Light.NoActionBar

否则会crash。

 

 

声明:本文内容由网友自发贡献,不代表【wpsshop博客】立场,版权归原作者所有,本站不承担相应法律责任。如您发现有侵权的内容,请联系我们。转载请注明出处:https://www.wpsshop.cn/w/爱喝兽奶帝天荒/article/detail/915094
推荐阅读
相关标签
  

闽ICP备14008679号