我最近移植了一个已知运行的应用程序,其运行时间为几个月(DIY Zoning Project)到Android(accessory driver,core process和remote control) 。而且,不幸的是,尽管使用了保持运行服务的技术(START_STICKY,startForeground()),但有时系统^ H服务应用程序只是冻结 - 直到用户启动与服务的交互,之后它恢复正常操作。最棘手的问题是它间歇性地发生,并且主要是在几天的正常运行时间之后。遥控器在仿真器上一次工作数天,没有明显的降级,因此问题很可能出现在服务中或配件驱动程序中。
目前,该系统的目标是API 10,因此无法使用高级服务调度功能 - 也就是说,如果它们与问题相关,则可以使用。
现在,调试和/或分析此类系统的现实方法是什么?请记住,adb不适用于连接到ADK附件的Android硬件。
答案 0 :(得分:0)
但是,你是否已经尝试使用Wakelocks? http://developer.android.com/reference/android/os/PowerManager.WakeLock.html 在某些情况下系统可能只是休眠处理器,看起来像是“冻结”