Android Resources$NotFoundException:无法找到资源 ID

2024-04-21

我从 Firebase 收到一份活动报告,由于找不到我的资源而导致活动失败。我真的很困惑为什么找不到它,因为我相信所有文件都在正确的目录中,并且用户使用的是 Android v8.1,它并不古老,应该能够处理我认为有的东西自 v1.1 以来一直存在于 Android 中。

以下是异常链的最后几个堆栈:

Caused by android.content.res.Resources$NotFoundException: File res/drawable/button_close_24dp.xml from drawable resource ID #0x7f08006d
       at android.content.res.ResourcesImpl.loadDrawableForCookie(ResourcesImpl.java:820)
       at android.content.res.ResourcesImpl.loadDrawable(ResourcesImpl.java:630)
       at android.content.res.Resources.getDrawableForDensity(Resources.java:877)
       at ...

Caused by android.content.res.Resources$NotFoundException: Drawable (missing name) with resource ID #0x7f08006e


Caused by android.content.res.Resources$NotFoundException: Unable to find resource ID #0x7f08006e
       at android.content.res.ResourcesImpl.getResourceName(ResourcesImpl.java:253)
       at android.content.res.ResourcesImpl.loadDrawableForCookie(ResourcesImpl.java:760)
       at android.content.res.ResourcesImpl.loadDrawable(ResourcesImpl.java:630)
       at ...

我认为这是在抱怨res/drawable/button_close_24dp.xml丢失或找不到。我已经验证过res/drawable/button_close_24dp.xml项目中确实存在(并且它为我们拥有的数千名其他用户加载)。该 xml 文件只是一个简单的选择器文件:

<?xml version="1.0" encoding="utf-8"?>
<selector xmlns:android="http://schemas.android.com/apk/res/android">

    <item android:state_pressed="true" android:drawable="@drawable/button_close_grey_24dp" />
    <item android:drawable="@drawable/button_close_white_24dp" />
</selector>

@drawable/button_close_grey_24dp有两个可能的版本:

  • /res/drawable/button_close_grey_24dp.png
  • /res/drawable-nodpi/button_close_grey_24dp.xml

The nodpifile 是一个矢量绘图,其中包含:

<vector xmlns:android="http://schemas.android.com/apk/res/android"
    android:width="24dp"
    android:height="24dp"
    android:viewportWidth="24"
    android:viewportHeight="24">
  <path
      android:pathData="M19,6.41L17.59,5 12,10.59 6.41,5 5,6.41 10.59,12 5,17.59 6.41,19 12,13.41 17.59,19 19,17.59 13.41,12z"
      android:fillColor="#ffffff"/>
</vector>

Firebase 崩溃报告称用户在 LGE Nexus 5X 上运行 Android 8.1.0。应该从 Android 5 开始支持矢量绘图,但即使该用户的手机由于某种原因不支持它们,也有一个简单的 png 可供使用。

所以,我真的很困惑为什么这不能普遍适用。我不想只是结束这次崩溃,因为它只发生在一个用户身上......至少在没有通过询问你们进行一些尽职调查的情况下是这样。 :)


None

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

Android Resources$NotFoundException:无法找到资源 ID 的相关文章

随机推荐

  • Nexus 工件删除命令

    我已使用以下命令从命令行将工件上传到 Sonatype Nexus MAVEN maven bin mvn X e 部署 部署文件 Durl http maven nexus com nexus content repositories x
  • 将公钥添加到 ~/.ssh/authorized_keys 不会自动登录

    我将公共 SSH 密钥添加到授权密钥 file ssh localhost应该让我登录而不询问密码 我这样做并尝试输入ssh localhost 但它仍然要求我输入密码 我还需要进行其他设置才能使其正常工作吗 我已按照更改权限的说明进行操作
  • MASM32 中令人困惑的括号

    我正在尝试掌握 MASM32 但对以下内容感到困惑 我认为括号用于间接 所以如果我有预定义的变量 data item dd 42 then mov ebx item 会将 item 的内容 即数字 42 放入 ebx 中并 mov ebx
  • 来自卸载事件的同步 AJAX 发布:如何确保用户在下一页加载时看到来自数据库的最新信息

    当用户请求编辑 CMS 中的条目时 我们会 锁定 它 以便其他人无法同时编辑它 当他们提交更改时 我们会释放锁定 然而 我们需要处理用户通过其他链接离开页面的情况 我的第一次尝试是使用 jQuery 来触发同步 ajax 呼吁 window
  • 通过Entity类名动态获取一个DbSet

    我正在尝试使用System Reflections得到一个DbSet
  • 如何使用批处理全屏打开窗口

    我之前用代码制作了一个批处理文件 start chrome exe profile directory Profile 1 http drive google com 它会以配置文件 1 用户的身份打开 google chrome 页面 D
  • 尝试从故事板初始化视图控制器

    我有一个视图控制器放置在主故事板中 但是当我尝试初始化并加载视图控制器时 我的应用程序崩溃了 我使用的 xcode 版本并没有真正告诉我我正确得到的错误 但我确实看到它给了我一个 sigabrt 信号 我不知道为什么它不起作用 UIStor
  • 使用文档片段真的能提高性能吗?

    我对 JS 的性能有疑问 比如说 我有下一个代码 var divContainer document createElement div divContainer id container var divHeader document cr
  • Elastic Beanstalk:Amazon Linux 2 平台上的日志任务自定义

    我想知道该怎么做日志任务定制 https docs aws amazon com elasticbeanstalk latest dg using features logging html health logs extend在新的 El
  • 如何查看定位服务是否开启?

    如何检查用户是否关闭了定位服务 这样我就可以提示他 她打开它才能使用我的应用程序 谢谢 The CLLocationManager提供类方法来确定位置服务的可用性 BOOL locationServicesEnabled for lt iO
  • 在 Visual Studio 中进行嵌入式代码开发(尤其是使用 C18 的 PIC)

    我使用 Visual Studio 编写桌面应用程序 我发现它非常用户友好且易于使用 如果可能的话 我还想在Visual Studio中编写嵌入式代码 例如 是否可以使用 C18 或任何其他类似的基于 C 的语言为 PIC18Fxxx 系列
  • javax.management.InstanceAlreadyExistsException:com.zaxxer.hikari:名称= dataSource,类型= HikariDataSource

    我怎么解决这个问题 哪个是最好的选择以及如何做到这一点 设置唯一的池名称 销毁之前的连接池 org apache catalina core ApplicationContext log Initializing Spring embedd
  • 检测unicode字符串中的非ascii字符[重复]

    这个问题在这里已经有答案了 给定一个文本文件 或 unicode 字符串 检测 ASCII 编码之外的字符的好方法是什么 我可以轻松地将每个字符迭代传递给ord 但我想知道是否有更有效 更优雅或更惯用的方法来做到这一点 这里的最终目标是编译
  • Ruby/Rails 中的夏令时开始和结束日期

    我正在开发一个 Rails 应用程序 我需要在给定特定偏移量或时区的情况下查找夏令时开始和结束日期 我基本上将从用户浏览器接收到的时区偏移保存在数据库中 3 5 并且我想在由于夏令时而改变时对其进行修改 I know Time实例变量有ds
  • 获取 OS X 中用户库文件夹的路径

    我需要打开一个 NSSavePanel 并将用户库文件夹作为目标文件夹 通常我会通过输入来做到这一点 Library in NSSavePanel beginSheetForDirectory 只要应用程序没有被沙箱化 这种方法就可以正常工
  • Android Studio 1.0.2 m2respository gradle问题

    使用Android Studio 1 0 2 并且强制使用Gradle 2 2 1 所有系统变量都是正确的 在新的更新中 旧版本的 gradle 和 m2repository 存在问题 我正在尝试导入 kickflip io android
  • 如何手动调用(查找)ReCaptcha Callback函数?

    我目前正在尝试验证码解决 并决定使用流行的 2captcha 服务来实现此目的 他们的方法是向他们发送验证码值 谷歌验证码密钥和站点线程 然后他们解决它并向我发回应该发送给谷歌的完成值 以检查验证码是否已解决 我被困在最后一步 使用返回的解
  • 包装 API 以支持依赖注入

    我正在与一个只有静态函数的 API 进行交互 并且无法打开和更改 public class WindowsNativeGraphAPI public static IEnumerable
  • 练习:网络爬虫 - 并发不起作用

    我正在经历 golang 之旅 并致力于最后的练习 以将网络爬虫更改为并行爬行而不是重复爬行 http tour golang org 73 http tour golang org 73 我所改变的只是抓取功能 var used make
  • Android Resources$NotFoundException:无法找到资源 ID

    我从 Firebase 收到一份活动报告 由于找不到我的资源而导致活动失败 我真的很困惑为什么找不到它 因为我相信所有文件都在正确的目录中 并且用户使用的是 Android v8 1 它并不古老 应该能够处理我认为有的东西自 v1 1 以来