我在实时应用程序中遇到了很多崩溃。
Fatal Exception: android.content.res.Resources$NotFoundException
Resource ID #0x7f080389
资源存在。 这是一个PNG,并且使用来设置。
icon.setImageResource(a.icon);
其中a.icon是带有所需图像ID的int。我100%肯定这里的值还可以。
关于设备和操作系统,没有明显的模式。使用相同的手机和OS版本进行测试,并且大多数实时用户都可以使用。 该应用使用软件包在Play商店中分发。 我目前的理论是,有些人是从其他地方获得该应用程序的(该应用程序并非到处都有),而他们尝试使用的APK与手机的屏幕密度不匹配。 这是否合理(我可以防止这种情况发生)还是还有其他可能性? 干杯。
答案 0 :(得分:0)
即将出现此异常是因为存在图像,但并非所有分辨率都存在。 设备将检查所有可绘制文件夹中等于或小于当前设备分辨率的图像。 各种屏幕分辨率为mdpi,hdpi,xhdpi,xxhdpi,xxxhdpi。 示例:如果图像存在于drawable-xxhdpi文件夹中,并且设备的分辨率为xhdpi。然后它将仅在drawable-xhdpi,drawable-hdpi,drawable-mdpi和默认drawable文件夹中检查图像,并且可能会导致找不到资源异常。 因此,您应该根据质量将图像添加到所有各种分辨率文件夹中。 xxxhdpi应具有清晰和高质量的图像。 另外,建议在默认的可绘制文件夹中添加默认图像,以避免任何找不到资源的异常。 希望对您有所帮助。
答案 1 :(得分:0)
将应用程序发布为APK。完全没有问题。肯定有一些与软件包拆分不符的事情。