【发布时间】:2013-06-13 08:05:27
【问题描述】:
我编写了一个应用程序,在某些设备上,使用该应用程序会冻结系统。我的主要问题是,我没有得到任何日志信息,因为一旦设备被冻结,日志记录就会完全停止,显然崩溃报告通常会在崩溃后生成,这不起作用,因为设备被冻结.
我已通过 adb(通过 USB)和 logcat 将所有设备连接到我的笔记本电脑,但随着设备冻结,日志记录会停止。我还检查了所有可能的日志位置(我使用了this reference)并且找不到任何东西。
由于应用程序仅在大约 10% 的设备上崩溃(设备相同且具有相同的固件),我需要在设备上测试应用程序并且无法使用模拟器。但是,如果应用程序崩溃,我可以使用 adb monkey 可靠地重现崩溃。另外 90% adb monkey 不会让设备崩溃。
还有什么我可以记录/测试/检查的吗?一旦设备被冻结,有没有办法获得内存转储?
虽然我认为这无关紧要:该设备是 XORO 9718DR 平板电脑并且该设备已植根。该应用程序是我自己编写的,市场上没有。它主要只使用 Buttons、TextView、ImageView、HttpClientConnection、Threads、AsyncTasks 和其他“正常”的 Android 东西。它甚至不使用 webview。
【问题讨论】:
-
为什么不追踪冻结到代码的某些部分?有谁可以通过你的文字墙来帮助你?
-
设备在代码的不同部分冻结。同时,我也可以使用不同的应用程序冻结设备。基本问题是:是否有其他一些日志记录可能性,或者有没有办法获得内存转储?
-
这是什么应用程序?谈论那个。也许我们可以给你一些关于内存利用的提示。是游戏吗?它有太多的drawables吗?你在调整大小吗?你在使用位图吗?您正在下载 1Gb json xml :) 吗?
-
不幸的是,该应用程序未公开提供和/或在任何商店中。基本上,该应用程序会在您可以单击的屏幕上显示一些图像。点击被记录,存储在 SQLite 数据库中,并且(如果数据库中有足够的记录)传输到服务器。我加载的所有资源都在 512kB 和 2MB 之间,其中大部分是 PNG 图像。我有一个 json,但它小于 4kB。图像未调整大小,有 15 到 50 张图像。图片不滚动。