android.content.res.Resources$NotFoundException:无法找到资源 ID #0xffffffff?

问题描述 投票:0回答:0

我正在尝试修复我已经使用多年的旧 android 应用程序(不是原始开发人员)。我已经解决了所有其他问题(是的!几乎完全靠运气),我遇到了这个问题,它似乎在获取 ResourceEntryName 时遇到了问题?不幸的是,我无法弄清楚它到底出了什么问题,除了给定的行引用之外,它在哪里抛出错误,我也不是特别熟悉 java/android dalvik,所以我可能不了解这个。

我已经仔细检查了我在特定参考方面可以找到的许多明显的资源问题(演习等,因为它旨在从地图通知中获取数据并将它们显示在 Pebble Watch 上),并且还尝试重新排序为了它的 getID 和 getResources,因为其他一些问题与执行顺序有关,因为应用程序解析通知数据然后显示在手表上 - 这里没有实际区别,并且取决于它们的加载顺序它返回了致命错误,所以我使用备份文件将它们恢复为原始状态。还尝试注释掉该行,导致应用程序崩溃和致命错误,同样删除括号中的整数。另一个线程建议将可绘制对象移动到基本可绘制对象文件夹中,而不是特定于版本的文件夹中,例如。 drawable-v23 但这也没有什么不同。

如果您能提供任何帮助/建议,我们将不胜感激! 我确实对类似的错误进行了搜索,原因似乎范围很广而且特定于应用程序,所以我认为最好还是问我自己的问题。我已经附上了抛出错误的 LogCat(似乎在日志中经常重复,但似乎根本不影响功能?)以及有问题的 .smali 文件中的代码。

提前致谢! :)

04-08 21:43:14.890 25573 27081 E corp.pebble.nav: No package ID ff found for ID 0xffffffff.
04-08 21:43:14.890 25573 27081 D NotificationHandler: getResources failed
04-08 21:43:14.890 25573 27081 D NotificationHandler: android.content.res.Resources$NotFoundException: Unable to find resource ID #0xffffffff
04-08 21:43:14.890 25573 27081 D NotificationHandler:   at android.content.res.ResourcesImpl.getResourceEntryName(ResourcesImpl.java:289)
04-08 21:43:14.890 25573 27081 D NotificationHandler:   at android.content.res.Resources.getResourceEntryName(Resources.java:2335)
04-08 21:43:14.890 25573 27081 D NotificationHandler:   at com.batescorp.pebble.nav.lib.NotificationHandler.a(SourceFile:259)
04-08 21:43:14.890 25573 27081 D NotificationHandler:   at com.batescorp.pebble.nav.lib.NotificationHandler.a(SourceFile:333)
04-08 21:43:14.890 25573 27081 D NotificationHandler:   at com.batescorp.pebble.nav.lib.NotificationHandler.a(SourceFile:333)
04-08 21:43:14.890 25573 27081 D NotificationHandler:   at com.batescorp.pebble.nav.lib.NotificationHandler.a(SourceFile:333)
04-08 21:43:14.890 25573 27081 D NotificationHandler:   at com.batescorp.pebble.nav.lib.NotificationHandler.a(SourceFile:27)
04-08 21:43:14.890 25573 27081 D NotificationHandler:   at com.batescorp.pebble.nav.lib.NotificationHandler$1.run(SourceFile:210)
04-08 21:43:14.890 25573 27081 D NotificationHandler:   at java.lang.Thread.run(Thread.java:1012)
# instance fields
.field private a:Ljava/lang/String;
.line 67
    const-string v0, ""

    iput-object v0, p0, Lcom/batescorp/pebble/nav/lib/NotificationHandler;->a:Ljava/lang/String;
.line 259
    :try_start_1
    invoke-virtual {p2}, Landroid/content/Context;->getResources()Landroid/content/res/Resources;

    move-result-object v4

    invoke-virtual {v1}, Landroid/view/View;->getId()I

    move-result v5

    invoke-virtual {v4, v5}, Landroid/content/res/Resources;->getResourceEntryName(I)Ljava/lang/String;
    :try_end_1
    .catch Ljava/lang/Exception; {:try_start_1 .. :try_end_1} :catch_0

    move-result-object v0

    move-object v4, v0
.line 333
    check-cast v1, Landroid/view/ViewGroup;

    invoke-direct {p0, p1, p2, v1}, Lcom/batescorp/pebble/nav/lib/NotificationHandler;->a(Landroid/content/Context;Landroid/content/Context;Landroid/view/ViewGroup;)Ljava/lang/String;

    goto/16 :goto_1
java android dalvik smali
© www.soinside.com 2019 - 2024. All rights reserved.