【问题标题】:Firebase Crashlytics reports InflateException: ResourceNotFoundException for a Trend TaintArt for 4x6Firebase Crashlytics 报告 InflateException: ResourceNotFoundException for a Trend TaintArt for 4x6
【发布时间】:2020-06-19 21:36:14
【问题描述】:

当我的应用程序尝试扩展包含 ImageView 的布局时,它在运行 Android 7.1.2 的 x86 的 Trend TaintArt 上失败。崩溃报告 Drawable 不存在:

然而,Drawable (ic_list_white) 存在:

奇怪的是,这似乎是唯一有问题的设备。有人遇到过这个问题吗?

【问题讨论】:

  • 你用的是app bandle(.aab)还是(.apk)?
  • .aab。为什么要问?
  • 这有什么更新吗?我也看到了这个问题。

标签: android android-imageview android-inflate inflate-exception firebase-crash-reporting


【解决方案1】:

事实证明这个设备,Trend TaintArt for x86,是假的;没有这样的设备。此后,其他几份 Crashlytics 报告也出现了,也针对假冒设备,包括运行 Android 4.3.1 的 Batmobile Defy Mini 和 Huawei Enjoy 9S(真正的 Enjoy 9S came out in 2019 并附带 Android 9)。我向 Firebase 支持团队报告了这一情况,正在等待他们的回复。我怀疑有人试图对我的应用进行逆向工程。

【讨论】:

  • 这里有同样的问题。有消息吗?
  • @pauminku 见我上面的评论。您可以像我一样尝试混淆您的代码,但这样就更难调试错误了。
【解决方案2】:

我怀疑这个问题只发生在用于自动测试的谷歌设备上(Play protectPre-launch report 等)。

我得出这个结论是因为,在我们的应用中,此错误仅发生在少数设备(2 或 3)上,并且仅在将应用发布到 google play 后的最初几个小时内发生。

所以我认为在类似情况下我们可以放心地忽略这个问题。

【讨论】:

    【解决方案3】:

    我们在迁移到 app bundle 后遇到了同样的问题。我不确定,但似乎设备没有得到所有必需的拆分。当您的应用不是从 Google Play 安装时,似乎会发生这种情况。

    我们在 Application#onCreate() 中像这样使用 smt

    fun onCreate() {
        MissingSplitsManagerFactory.create(this).let { splitFactory -> 
                    if(splitFactory.isMissingRequiredSplits) {
                        logEventToFirebaseMissingRequiredSplits()
                        splitFactory.disableAppIfMissingRequiredSplits()
                    }
         }
    }
    

    看看known_issuesMissingSplitsManager

    【讨论】:

      【解决方案4】:

      我在 crashlytics 中也时常看到此类崩溃。 最后一次是来自我什至还没有发布的版本。 但我已将文件上传到 virustotal.com

      因此,我认为这些消息是在病毒扫描期间生成的。 病毒扫描程序在受保护的环境中启动应用程序,以查看它是否会做一些有害的事情。有时这会导致崩溃。

      【讨论】:

        猜你喜欢
        • 1970-01-01
        • 1970-01-01
        • 2019-04-18
        • 1970-01-01
        • 2021-06-30
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        相关资源
        最近更新 更多