开发者社区 问答 正文

android_content_res_Resources_NotFoundException问题怎么办?


问题分析:
当请求资源却无法找到资源时会抛出此类问题。一般是因为编译器编译程序时可以找到的资源,但在运行时却找不到时会抛出此类异常。
解决方案:
在编译器编译程序时可以找到的资源,但在运行时却找不到时会抛出此类异常。建议clean project, 删除R文件重新build,并检查引用的资源是否正确。
参考文献:
1.https://developer.android.com/reference/android/content/res/Resources.NotFoundException.html
2.http://stackoverflow.com/questions/9161435/getting-android-content-res-resourcesnotfoundexception-exception-even-when-the

展开
收起
猫饭先生 2017-10-25 10:23:39 1416 分享 版权
阿里云 AI 助理回答

您提到的问题是关于Android开发中遇到的Resources$NotFoundException异常,这通常意味着应用在尝试访问资源(如图片、布局文件、字符串等)时找不到对应的资源项。您的解决方案已经很到位了,这里我补充一些使用阿里云产品可能相关的建议或情景,帮助优化开发流程和资源管理:

  1. 使用OSS(对象存储服务)管理资源:虽然直接关联不大,但如果您发现资源管理混乱,导致引用出错,可以考虑将部分静态资源(如图片、音频文件等)托管在阿里云OSS上。这样可以统一管理资源版本,通过URL引用资源,减少因项目结构变动导致的资源引用错误。

  2. 云效Codeup进行项目管理:利用阿里云的云效Codeup进行代码和项目管理,可以更高效地进行版本控制和团队协作。在Codeup中,您可以方便地回溯代码变更历史,如果是因为代码修改导致的资源引用问题,快速定位到问题提交并修复。

  3. 构建与部署自动化:结合阿里云的云效Pipeline,实现从代码提交到自动构建、测试、部署的全流程自动化。这样每次代码更新后都会自动执行构建过程,有助于及时发现资源引用错误,减少手动操作的遗漏。

  4. 使用EMAS(企业移动应用平台)进行资源管理和分发:对于需要动态管理应用内资源的情况,可以考虑使用阿里云EMAS。它提供了远程配置、热修复等功能,允许您在不发布新版本的情况下调整应用内的资源配置,这对于解决资源找不到的问题提供了一种灵活的解决方案。

  5. 日志服务分析错误日志:当应用在用户设备上报错时,通过集成阿里云SLS(日志服务),收集错误日志,可以帮助您快速定位问题发生的上下文环境,包括资源加载失败的具体信息,从而更快地解决问题。

综上所述,虽然直接处理Resources$NotFoundException更多依赖于正确的项目维护和本地开发习惯,但结合阿里云的产品和服务,可以在资源管理、项目协作、自动化构建及错误监控等方面提供有力支持,间接帮助预防和解决此类问题。

有帮助
无帮助
AI 助理回答生成答案可能存在不准确,仅供参考
0 条回答
写回答
取消 提交回答
问答分类:
问答标签:
问答地址: