【发布时间】:2012-02-27 16:27:58
【问题描述】:
我收到来自 android 市场的崩溃报告:
android.content.res.Resources$NotFoundException: Resource ID #0x....
我每周会收到大约 17 个。它指向我的代码中的以下内容:
context.getResources().getDrawable(R.drawable.foo);
该资源肯定存在于我的 /drawable 文件夹中。我有几十万次安装,我不确定这对某些用户来说是如何失败的,但对绝大多数用户来说都是如此。我想知道发生了什么,因为他们无法在这种状态下使用该应用程序。有什么想法吗?
谢谢
--------- 更新 ----------
我还可以在我的 R.java 文件中看到相关可绘制对象的条目,如下所示:
public static final int foo=0x7f020034;
我对项目进行了干净的构建,然后直接进行发布构建(中间没有代码修改以提供自动 eclipse 构建的东西可能会让 R 文件出错)
谢谢
【问题讨论】:
-
这很明显,但是您是否选择了 Eclipse 中的“自动构建”检查?如果不使用Eclipse,修改资源类后是否重新生成?你能告诉我们你的 R 课吗?
-
嗨,是的,我确实检查了“自动构建”,但我确保在每次发布之前都进行干净的构建。我可以在 R.java 中看到该可绘制对象的资源条目(粘贴在上面)谢谢
-
我没有看到任何粘贴的内容,但是如果您说条目在那里... R 中显示的包是否正确(与您的 Activity 相同)?
-
嘿,同一个包。如果包错误或 R 文件中缺少条目,我认为所有其他安装也会崩溃。发生在少数用户身上,不明白为什么,很沮丧!
-
我现在每周大约有 80 个。我不明白为什么!这是由我的所有和任何活动的负载引起的,而不仅仅是一个特定的资源。显然,我们在发布前进行了全面的回归测试,从未发现过这个问题。它可能来自哪里?这是android中的错误吗?在所有类型的设备和支持的操作系统 (2.2+) 上都可以看到它。
标签: android