gpt4 book ai didi

android-proguard - ANDROID : java. util.MissingResourceException : Can't find resource for bundle 'org.eclipse.paho.client.mqttv3.internal.nls.logcat_en_US' , 键 ''

转载 作者:行者123 更新时间:2023-12-05 08:07:13 34 4
gpt4 key购买 nike

在 Stack Overflow 中似乎有无数关于此错误的报告。这些建议都没有奏效。在我的例子中,它几乎与这个堆栈溢出报告相同 SPRING

除了这种情况是在 Android Studio 中构建的 Android 中。它只发生在带有 proguard 的 Release模式中。 Proguard 以某种方式破坏了它。是的,我在混淆器中做了以下操作:

-keep class org.eclipse.paho.client.mqttv3.logging.JSR47Logger { *; }
-keep class org.eclipse.paho.** { *; }

gradle下载的jar我也解析过了。我无法更新到 1.2.1,因为它只适用于最新版本的 Android……根据开发人员的评论。如果我可以获得 1.1.0 的源代码,也许我可以阻止它调用不存在的资源。

有人解决了这个问题还是 proguard/paho 中的错误?

最佳答案

查看由发布构建(使用混淆器)和调试构建(无混淆器)生成的 apk 表明混淆器正在获取属性的 org.eclipse.... 包名称并更改'org' 到像 'c' 这样的字母。 mqtt paho 客户端正在使用完整的包名称查找属性文件,因此无论您在 proguard 中包含或排除什么,都找不到它。我查看了几个月前制作的 apk(我没有对 paho 客户端或使用 paho 客户端的那部分代码做任何事情......它运行良好,我不需要更改它)。我在那个旧版本的 apk 中看到“org”应该在那里。

所以问题出在proguard。为了继续前进,我所能做的就是获取 1.1.0 的源文件,创建一个新的 java 项目模块,然后乏味地注释掉源代码中的每个“日志”和 getLogger。这是一个临时且令人不快的修复,但它确实有效。当 proguard (R8) 解决这个问题时,我就可以回到原来的状态。

所以我想唯一真正的解决方法是向 R8 提交错误。我还没有做过。

关于android-proguard - ANDROID : java. util.MissingResourceException : Can't find resource for bundle 'org.eclipse.paho.client.mqttv3.internal.nls.logcat_en_US' , 键 '',我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/55909102/

34 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com