为什么系统会时不时地杀死前台的应用程序?

问题描述

我只是想了解它的原因。我们的应用程序非常稳定和优化,但有时它会在前台模式工作期间关闭用户正在使用它,它只是关闭,没有任何崩溃或 ANR 消息 - 非常糟糕的体验。我们已经做了什么:

  • 使用 UncaughtExceptionHandler 并将日志打印到磁盘进行分析。日志是空的,不是这些案例的崩溃信息
  • 使用 Firebase crashlitityc - 也是空的
  • 使用帮助分析器和leakcanary检查应用程序 - 没有泄漏,内存使用~200 Mb

关于我们的应用的一些信息:

  • 清晰的架构、Kotlin、MVVM、协程、匕首、改造、房间、一个单一的活动应用
  • 应用程序应该无时无刻不在工作。 App是硬件终端的接口。
  • 大部分fragment被存储到backstack中并再次使用,这有助于在第一个fragment使用后更快地打开屏幕。没有泄漏,没有片段或视图模型重复
  • 我们使用 glide 下载和预览用户头像。恐怕,泄漏可能是位图或 jpg 的一部分。 Profiler 在 1-2 小时测试后没有显示它,但我没有在前测试它。一周
  • 当设备未充电或刚刚启动时(设备启动后的前 10-20 分钟),可能会更频繁地发生应用中断
  • 大部分客户的 WIFI 连接不好
  • 我们有大约 10 个模块,其中大部分是自己的画布库
  • 崩溃发生在随机时刻......
  • 我们也有一些客户端的 ANR 问题,但我们添加了 ANR 看门狗,所以很快我们就会知道原因。
  • 我们有 50-60 个单身人士。我不确定,这是好是坏。第一个计划是使用大量内存来提高应用速度。

对我来说,这看起来像是本机崩溃或系统终止,但如何重复呢?我仍然不明白它的真正原因。如果您遇到过类似的问题,请描述您的经历,它可能对我们有所帮助。谢谢!

解决方法

暂无找到可以解决该程序问题的有效方法,小编努力寻找整理中!

如果你已经找到好的解决方法,欢迎将解决方案带上本链接一起发送给小编。

小编邮箱:dio#foxmail.com (将#修改为@)

相关问答

Selenium Web驱动程序和Java。元素在(x,y)点处不可单击。其...
Python-如何使用点“。” 访问字典成员?
Java 字符串是不可变的。到底是什么意思?
Java中的“ final”关键字如何工作?(我仍然可以修改对象。...
“loop:”在Java代码中。这是什么,为什么要编译?
java.lang.ClassNotFoundException:sun.jdbc.odbc.JdbcOdbc...