【问题标题】:Samsung / Android 8.0 Oreo update causing app(s) to crash? (Xamarin.Forms app)Samsung / Android 8.0 Oreo 更新导致应用程序崩溃? (Xamarin.Forms 应用程序)
【发布时间】:2019-02-19 22:42:05
【问题描述】:

有没有其他人经历过三星/Android 8.0 Oreo 更新导致大量应用崩溃的情况?

我们发现运行 Android 8.0 Oreo 的三星设备的崩溃数量激增,在谷歌上搜索后,这似乎是一个常见问题(搜索:Samsung Oreo app crash

要解决此问题,用户必须重新启动设备、执行软重置或清除应用的缓存数据。

有没有办法防止这些崩溃?我考虑过以务实的方式尝试清除缓存,看看是否有帮助。

仅供参考 - 我在 Xamarin.Forms 上发布了同样的问题:Xamarin.Forms Link

欢迎任何想法或解决方案! ????

【问题讨论】:

  • 缓存数据 100% 是您应用的数据,因此您应该知道其中的内容是否会导致问题(即包含不再有效的序列化对象的文件等...)
  • 我认为你没有抓住重点。 Oreo 更新影响了许多应用程序(Instagram、FB、Snap Chat 等),并且仅针对三星。我们在 Android 7.0、7.1 或 8.1 上看不到此问题,它特定于更新到 Oreo 8.0 的用户。有数十篇关于如何修复崩溃的应用程序(针对用户)的文章,告诉他们重新启动设备、重新安装应用程序和清除应用程序缓存。我与一些用户交谈过,他们说清除缓存可以解决问题,因此我认为解决方案是在应用退出/启动或更新时务实地清除缓存?
  • 我明白这一点,我之前处理过许多 OEM/设备特定问题(不同的 OEM 版本和 ASOP 之间可能存在很多差异,三星是一个对ASOP 源),例如,如果您有序列化数据,您正在缓存它,并且 OEM 更新更改了一些使您的序列化数据无效的内容,您的应用程序现在可能在该设备上崩溃......报告的 sigsegv 崩溃的线程堆栈是什么logcat?你是否象征了这次崩溃?
  • 谢谢寿司。不幸的是,我们无法使用我们自己的设备重新创建崩溃,并且只有 Android Google Play 控制台中的崩溃日志,其中几乎没有数据。大多数崩溃是信号 11 (SIGSEGV)、代码 2 (SEGV_ACCERR) 或代码 1 (SEGV_ACCERR)。
  • 只有运行 Android Oreo 8.0 的三星 Galaxy S8 (dreamlte)、Galaxy S8+ (dream2lte)、Galaxy Note8 (greatlte) 才会报告崩溃。所有其他 Android 操作系统版本均不受影响,也未报告其他设备。

标签: android xamarin xamarin.forms android-8.0-oreo samsung-galaxy


【解决方案1】:

您使用的是 firebase 库吗?您是否尝试更新到最新版本?我做到了,我修好了。

【讨论】:

    【解决方案2】:

    如果有人在欧洲三星 Oreo 设备上仍然遇到类似问题(启动期间的 SIGSEV): 在大多数情况下,导致崩溃的方法与文件/内存相关,但“这不是他们的错”。 如果您不针对设备的主要 ABI,则三星 Oreo 更新的启动稳定性存在问题。对于 Xamarin,在 Visual Studio -> 项目属性 -> android 选项 -> 高级 -> 支持的架构中,并确保检查 arm64-v8a(S8 的主要 ABI,注意发生错误的地方。)。 应该可以解决的。

    【讨论】:

      猜你喜欢
      • 2014-08-20
      • 2017-01-19
      • 2017-01-29
      • 1970-01-01
      • 2019-01-22
      • 2014-05-08
      • 2013-12-02
      • 2014-09-09
      • 1970-01-01
      相关资源
      最近更新 更多