Caused by: android.content.res.Resources$NotFoundException: File res/drawable-mdpi/

9 篇文章 0 订阅
3 篇文章 0 订阅
这是我在做测试应用功能时,出现的一个bug,先晒晒看看问题吧
10-24 14:31:12.914: E/AndroidRuntime(867): FATAL EXCEPTION: main
10-24 14:31:12.914: E/AndroidRuntime(867): Process: com.android.systemui, PID: 867
10-24 14:31:12.914: E/AndroidRuntime(867): java.lang.RuntimeException: Unable to start activity ComponentInfo{com.android.systemui/com.android.systemui.usb.UsbStorageActivity}: android.content.res.Resources$NotFoundException: File res/drawable-mdpi/pointer_spot_hover_icon.xml from drawable resource ID #0x10804b6
10-24 14:31:12.914: E/AndroidRuntime(867): 	at android.app.ActivityThread.performLaunchActivity(ActivityThread.java:2338)
10-24 14:31:12.914: E/AndroidRuntime(867): 	at android.app.ActivityThread.handleLaunchActivity(ActivityThread.java:2390)
10-24 14:31:12.914: E/AndroidRuntime(867): 	at android.app.ActivityThread.access$800(ActivityThread.java:151)
10-24 14:31:12.914: E/AndroidRuntime(867): 	at android.app.ActivityThread$H.handleMessage(ActivityThread.java:1321)
10-24 14:31:12.914: E/AndroidRuntime(867): 	at android.os.Handler.dispatchMessage(Handler.java:110)
10-24 14:31:12.914: E/AndroidRuntime(867): 	at android.os.Looper.loop(Looper.java:193)
10-24 14:31:12.914: E/AndroidRuntime(867): 	at android.app.ActivityThread.main(ActivityThread.java:5299)
10-24 14:31:12.914: E/AndroidRuntime(867): 	at java.lang.reflect.Method.invokeNative(Native Method)
10-24 14:31:12.914: E/AndroidRuntime(867): 	at java.lang.reflect.Method.invoke(Method.java:515)
10-24 14:31:12.914: E/AndroidRuntime(867): 	at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:829)
10-24 14:31:12.914: E/AndroidRuntime(867): 	at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:645)
10-24 14:31:12.914: E/AndroidRuntime(867): 	at dalvik.system.NativeStart.main(Native Method)
10-24 14:31:12.914: E/AndroidRuntime(867): Caused by: android.content.res.Resources$NotFoundException: File res/drawable-mdpi/pointer_spot_hover_icon.xml from drawable resource ID #0x10804b6
10-24 14:31:12.914: E/AndroidRuntime(867): 	at android.content.res.Resources.loadDrawable(Resources.java:2152)
10-24 14:31:12.914: E/AndroidRuntime(867): 	at android.content.res.Resources.getDrawable(Resources.java:710)
10-24 14:31:12.914: E/AndroidRuntime(867): 	at com.android.internal.widget.ActionBarView.setIcon(ActionBarView.java:718)
10-24 14:31:12.914: E/AndroidRuntime(867): 	at com.android.internal.policy.impl.PhoneWindow.setDefaultIcon(PhoneWindow.java:1469)
10-24 14:31:12.914: E/AndroidRuntime(867): 	at android.app.Activity.initActionBar(Activity.java:1930)
10-24 14:31:12.914: E/AndroidRuntime(867): 	at android.app.Activity.setContentView(Activity.java:1945)
10-24 14:31:12.914: E/AndroidRuntime(867): 	at com.android.systemui.usb.UsbStorageActivity.onCreate(UsbStorageActivity.java:238)
10-24 14:31:12.914: E/AndroidRuntime(867): 	at android.app.Activity.performCreate(Activity.java:5264)
10-24 14:31:12.914: E/AndroidRuntime(867): 	at android.app.Instrumentation.callActivityOnCreate(Instrumentation.java:1088)
10-24 14:31:12.914: E/AndroidRuntime(867): 	at android.app.ActivityThread.performLaunchActivity(ActivityThread.java:2302)
10-24 14:31:12.914: E/AndroidRuntime(867): 	... 11 more
10-24 14:31:12.914: E/AndroidRuntime(867): Caused by: org.xmlpull.v1.XmlPullParserException: Binary XML file line #2: invalid drawable tag pointer-icon
10-24 14:31:12.914: E/AndroidRuntime(867): 	at android.graphics.drawable.Drawable.createFromXmlInner(Drawable.java:933)
10-24 14:31:12.914: E/AndroidRuntime(867): 	at android.graphics.drawable.Drawable.createFromXml(Drawable.java:877)
10-24 14:31:12.914: E/AndroidRuntime(867): 	at android.content.res.Resources.loadDrawable(Resources.java:2148)
10-24 14:31:12.914: E/AndroidRuntime(867): 	... 20 more
这个错误是我在测试状态栏时出现的bug,第一开始我认为哪里少了资源,下面我把我遇到的这种情况一一列出来
1.缺少我们需要的资源,只有我们在需要的文件添加就可以了
2.把我们的apk重新clean一下,原因我们的虚拟机被占用,这样就可以了
3.赋值错误,原因:比如settext(),我们却给了drawable类型,就会报错
4.framework\base\core\res添加资源时,我们需要update-api 一下,在current.txt中生成资源id
而我现在遇到的却不是以上的问题,所以我无法确定哪里出现了问题,首先我把UsbStorageActivity资源和pointer_spot_hover_icon.xml 中资源都搜索,发现资源文件都存在,那为什么会出现这种错误哪?
因为它是偶然出现的错误,复发性很低,所以无法重复出现,所以我首先在UsbStorageActivity中添加try cauch 只是为了防止出现错误时,影响用户的使用体验, 然后在drawable文件中添加pointer_spot_hover_icon.xml ,防止为适配不在标准中,像我现在就是360*360的,如果有好的建议,请回复,现在我只能这样做


  • 1
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值