我编写了一个简单的 Android 应用程序,用作数字标牌——它所做的只是下载并显示一个(简单的、静态的)网页,它每四个小时自动刷新一次网页,无需用户交互。
它通常一次可以运行几天或几周,但每隔一段时间(似乎是随机间隔),当我下到部署其中一个单元的位置时,我发现应用程序已经神秘地停止运行 - 即设备已经返回到安卓桌面。
我检测了我的应用程序以发出日志消息(通过调用 Log.i 和将文本写入单独的日志文件),但我没有看到任何证据表明应用程序崩溃或故意退出;似乎有一次它在刷新网页后(像往常一样)进入了睡眠状态,并且再也没有收到任何消息。故障发生后,我还做了一个“adb shell logcat”来检查设备的系统日志,我没有看到任何堆栈跟踪;但我不确定该日志可以追溯到多远。
有谁知道为什么一个应用程序可能会神秘地消失?或者,是否有推荐的方法来调试此问题?由于它每隔几周才会发生一次,因此很难重现故障。特别是,有没有比“adb shell logcat”更好的方法来查看过去几天或几周内可能发生的任何崩溃?