我刚刚发布了一个更新,并在有人更新了之前正在运行的应用程序之后获得了一个异常报告。
相同的代码适用于我的手机,资源是原始文件,不依赖于设备,本地相关或任何东西。
我在开发更新之前发生了类似的事情,我清理了项目并解决了它。
然而,这似乎不是一个好的解决方案,因为我无法验证修复,不想只是推出一个版本,以防它解决问题。
任何关于原因或解决方案的建议都会受到大力赞赏!
java.lang.RuntimeException: Unable to create service com.beltane.apppro.TickerService:
android.content.res.Resources$NotFoundException: Resource ID #0x7f040005 at
android.app.ActivityThread.handleCreateService(ActivityThread.java:2969) at
android.app.ActivityThread.access$3300(ActivityThread.java:125) at
android.app.ActivityThread$H.handleMessage(ActivityThread.java:2087) at
android.os.Handler.dispatchMessage(Handler.java:99) at
android.os.Looper.loop(Looper.java:123) at
android.app.ActivityThread.main(ActivityThread.java:4627)
at java.lang.reflect.Method.invokeNative(Native Method) at
java.lang.reflect.Method.invoke(Method.java:521) at
com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:858) at
com.android.internal.os.ZygoteInit.main(ZygoteInit.java:616) at
dalvik.system.NativeStart.main(Native Method) Caused by:
android.content.res.Resources$NotFoundException: Resource ID #0x7f040005 at
android.content.res.Resources.getValue(Resources.java:892) at
android.content.res.Resources.openRawResourceFd(Resources.java:854) at
android.media.MediaPlayer.create(MediaPlayer.java:647) at
com.beltane.apppro.TickerService.onCreate(TickerService.java:42) at
android.app.ActivityThread.handleCreateService(ActivityThread.java:2959) ... 10 more
答案 0 :(得分:0)
对于任何面临类似问题的人,我的解决方案都是如此可怕:
准备新版本,删除所有中间生成的文件,执行干净构建并重新发布。
我在try catch块中捕获了所有媒体播放器创建代码,找不到资源未找到的异常,并弹出一个toast向用户解释发生了什么以及联系以获得解决方案。
这是非常令人讨厌的,但鉴于这绝不会发生......
我没有听到退回崩溃报告的用户的任何一种方式,我有其他好的反馈,因为如果我进一步听到,我会更新。