获取android.content.res.Resources$NotFoundException:但在大多数手机上都可以使用

获取android.content.res.Resources$NotFoundException:但在大多数手机上都可以使用,android,android-layout,exception,android-resources,Android,Android Layout,Exception,Android Resources,我在playstore上有一个活动应用程序,最近一部智能手机遇到了一个异常。但我实际上不知道如何调试它,因为只给出了一个资源id 这些资源都在那里,并且为99%的其他手机工作。我应该从哪里开始寻找 Caused by android.content.res.Resources$NotFoundException: Resource ID #0x7f070036 at android.content.res.Resources.getValue + 1118(Resources.ja

我在playstore上有一个活动应用程序,最近一部智能手机遇到了一个异常。但我实际上不知道如何调试它,因为只给出了一个资源id

这些资源都在那里,并且为99%的其他手机工作。我应该从哪里开始寻找

Caused by android.content.res.Resources$NotFoundException: Resource ID #0x7f070036
       at android.content.res.Resources.getValue + 1118(Resources.java:1118)
       at androidx.appcompat.widget.AppCompatDrawableManager.loadDrawableFromDelegates + 4(AppCompatDrawableManager.java:4)
       at androidx.appcompat.widget.AppCompatDrawableManager.addDelegate(AppCompatDrawableManager.java)
       at androidx.appcompat.widget.VectorEnabledTintResources.getDrawable(VectorEnabledTintResources.java)
       at android.graphics.drawable.StateListDrawable.inflate + 173(StateListDrawable.java:173)
       at android.graphics.drawable.Drawable.createFromXmlInner + 901(Drawable.java:901)
       at android.graphics.drawable.Drawable.createFromXml + 837(Drawable.java:837)
       at android.content.res.Resources.loadDrawable + 2092(Resources.java:2092)
       at android.content.res.TypedArray.getDrawable + 601(TypedArray.java:601)
       at android.view.View.<init> + 3364(View.java:3364)
       at android.widget.ImageView.<init> + 121(ImageView.java:121)
       at android.widget.ImageButton.<init> + 87(ImageButton.java:87)
       at androidx.appcompat.widget.AppCompatImageButton.<init>(AppCompatImageButton.java)
       at androidx.appcompat.widget.Toolbar.ensureNavButtonView(Toolbar.java)
       at androidx.appcompat.widget.Toolbar.setNavigationContentDescription(Toolbar.java)
       at androidx.appcompat.widget.Toolbar.<init> + 3(Toolbar.java:3)
       at androidx.appcompat.widget.Toolbar.<init>(Toolbar.java)
       at java.lang.reflect.Constructor.constructNative(Constructor.java)
       at java.lang.reflect.Constructor.newInstance + 417(Constructor.java:417)
       at android.view.LayoutInflater.createView + 594(LayoutInflater.java:594)
       at android.view.LayoutInflater.createViewFromTag + 696(LayoutInflater.java:696)
       at android.view.LayoutInflater.rInflate + 755(LayoutInflater.java:755)
       at android.view.LayoutInflater.rInflate + 758(LayoutInflater.java:758)
       at android.view.LayoutInflater.inflate + 492(LayoutInflater.java:492)
       at android.view.LayoutInflater.inflate + 397(LayoutInflater.java:397)
       at android.view.LayoutInflater.inflate + 353(LayoutInflater.java:353)
       at androidx.appcompat.app.AppCompatDelegateImpl.createSubDecor + 1(AppCompatDelegateImpl.java:1)
       at androidx.appcompat.app.AppCompatDelegateImpl.checkCloseActionMenu(AppCompatDelegateImpl.java)
       at androidx.appcompat.app.AppCompatActivity.setContentView(AppCompatActivity.java)
       at com.peter.trainer.Preferences.<init>(Preferences.java)
       at android.app.Activity.performCreate + 5133(Activity.java:5133)
       at android.app.Instrumentation.callActivityOnCreate + 1087(Instrumentation.java:1087)
       at android.app.ActivityThread.performLaunchActivity + 2175(ActivityThread.java:2175)
       at android.app.ActivityThread.handleLaunchActivity + 2261(ActivityThread.java:2261)
       at android.app.ActivityThread.access$600 + 141(ActivityThread.java:141)
       at android.app.ActivityThread$H.handleMessage + 1256(ActivityThread.java:1256)
       at android.os.Handler.dispatchMessage + 99(Handler.java:99)
       at android.os.Looper.loop + 137(Looper.java:137)
       at android.app.ActivityThread.main + 5103(ActivityThread.java:5103)
       at java.lang.reflect.Method.invokeNative(Method.java)
       at java.lang.reflect.Method.invoke + 525(Method.java:525)
       at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run + 737(ZygoteInit.java:737)
       at com.android.internal.os.ZygoteInit.main + 553(ZygoteInit.java:553)
       at com.android.internal.os.ZygoteInit.main(ZygoteInit.java)
       at dalvik.system.NativeStart.main(NativeStart.java)
由android.content.res.Resources$NotFoundException引起:资源ID#0x7f070036
位于android.content.res.Resources.getValue+1118(Resources.java:1118)
在androidx.appcompat.widget.appcompatidrawablemanager.loadDrawableFromDelegates+4(appcompatidrawablemanager.java:4)
在androidx.appcompat.widget.appcompatidDrawableManager.addDelegate(appcompatidDrawableManager.java)中
位于androidx.appcompat.widget.vectoreEnabledTintResources.getDrawable(vectoreEnabledTintResources.java)
在android.graphics.drawable.StateListDrawable.充气+173(StateListDrawable.java:173)
位于android.graphics.drawable.drawable.createFromXmlInner+901(drawable.java:901)
位于android.graphics.drawable.drawable.createFromXml+837(drawable.java:837)
位于android.content.res.Resources.loadDrawable+2092(Resources.java:2092)
位于android.content.res.TypedArray.getDrawable+601(TypedArray.java:601)
在android.view.view+3364(View.java:3364)
在android.widget.ImageView+121(ImageView.java:121)
在android.widget.ImageButton上+87(ImageButton.java:87)
在androidx.appcompat.widget.AppCompatImageButton.(AppCompatImageButton.java)
位于androidx.appcompat.widget.Toolbar.ensureNavButtonView(Toolbar.java)
位于androidx.appcompat.widget.Toolbar.setNavigationContentDescription(Toolbar.java)
在androidx.appcompat.widget.Toolbar+3(Toolbar.java:3)
位于androidx.appcompat.widget.Toolbar.(Toolbar.java)
位于java.lang.reflect.Constructor.constructNative(Constructor.java)
位于java.lang.reflect.Constructor.newInstance+417(Constructor.java:417)
位于android.view.LayoutInflater.createView+594(LayoutInflater.java:594)
位于android.view.LayoutInflater.createViewFromTag+696(LayoutInflater.java:696)
位于android.view.LayoutInflater.rInflate+755(LayoutInflater.java:755)
位于android.view.LayoutInflater.rInflate+758(LayoutInflater.java:758)
在android.view.LayoutInflater.inflate+492处(LayoutInflater.java:492)
在android.view.LayoutInflater.inflate+397(LayoutInflater.java:397)
在android.view.LayoutInflater.inflate+353处(LayoutInflater.java:353)
位于androidx.appcompat.app.appcompatedelegateimpl.createSubDecor+1(appcompatedelegateimpl.java:1)
在androidx.appcompat.app.AppCompateDelegateImpl.checkCloseActionMenu(AppCompateDelegateImpl.java)中
位于androidx.appcompat.app.AppCompatActivity.setContentView(AppCompatActivity.java)
访问com.peter.trainer.Preferences.(Preferences.java)
位于android.app.Activity.performCreate+5133(Activity.java:5133)
位于android.app.Instrumentation.callActivityOnCreate+1087(Instrumentation.java:1087)
在android.app.ActivityThread.performLaunchActivity+2175(ActivityThread.java:2175)
android.app.ActivityThread.handleLaunchActivity+2261(ActivityThread.java:2261)
在android.app.ActivityThread.access$600+141(ActivityThread.java:141)
在android.app.ActivityThread$H.handleMessage+1256(ActivityThread.java:1256)
位于android.os.Handler.dispatchMessage+99(Handler.java:99)
在android.os.Looper.loop+137处(Looper.java:137)
位于android.app.ActivityThread.main+5103(ActivityThread.java:5103)
位于java.lang.reflect.Method.Invokenactive(Method.java)
在java.lang.reflect.Method.invoke+525处(Method.java:525)
在com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run+737(ZygoteInit.java:737)
位于com.android.internal.os.ZygoteInit.main+553(ZygoteInit.java:553)
位于com.android.internal.os.ZygoteInit.main(ZygoteInit.java)
位于dalvik.system.NativeStart.main(NativeStart.java)
按照建议检查生成的ID后,文件为:
abc_列表_选择器_背景_过渡_全息_黑暗,它是android.support.design.R.drawable的一部分。那么这是谷歌支持库中的一个错误吗?

请检查您将可绘图文件放在何处。如果已将其放置在特定于版本的文件夹(如drawable-21)中,则将其移动到drawable文件夹

有时,资源ID在生成时无法正确重新生成。这主要发生在我们试图将资源设置为
int
值时

例如,这个
ContextCompat.getDrawable(mContext,R.drawable.your_image)
可能会在某些手机上导致
Resources$NotFoundException
,因此我必须像下面这样捕捉它:

试试看{
setImageDrawable(ContextCompat.getDrawable(mContext,R.drawable.your_image));
}catch(Resources.notfounde异常){
mImage.setImageResource(R.drawable.your_图像);

}
您可以从查看生成的文件中哪个资源具有特定的资源id开始。感谢您提供有关生成id的提示。引用的ID指向abc_list_selector_background_transition_holo_dark,它是android.support.design.R.drawable的一部分。所以这应该是一个支持库错误?是的,我已经尝试了很多答案。到目前为止,我所看到的,很可能是gradle或图书馆中的某个地方的一个bug。这个问题也出现在Eclipse Buld中。因此,请尝试更新所有库和sdk包,然后再次清理和重建项目。另外,如果你解决了这个问题,请随时告诉我。很遗憾,即使在更新库之后,错误仍然存在。唯一引发这种异常的手机是motorla defy mini。我真的不知道如何才能阻止这种情况发生你能给我你的应用程序的链接吗?通过在几部手机上进行测试,我也许能想出一个解决方案。此问题发生在api较低版本上