我的应用程序在“设置”->“电池”中出现此行为:
CPU Total : 9m30s
CPU foreground : 23s
Keep awake : 0s
Wi-Fi running : 4s
...
Computed power used : 60mAh
我看到电池电量耗尽,手机发热。很明显我的应用程序在那里做了一些事情。但是什么?
我的一般问题是如何调试(最佳实践、工具)我的应用程序真正在做什么?
关于这个具体案例,我将补充说该应用程序使用 AlarmManager:
AlarmManager alarmManager = (AlarmManager)context.getSystemService(Context.ALARM_SERVICE);
alarmManager.setInexactRepeating(AlarmManager.ELAPSED_REALTIME, 0, ONE_HOUR_MS, pendingIntent);
我尝试在应用程序的调试版本上启动 traceview,但是 AlarmManager 唤醒的线程很快就结束了,属于应用程序进程的其他线程都没有做任何工作。
最佳答案
为了实现您的目标,有一个名为 Systrace 的工具。
关于android - 如何调试应用程序的后台行为?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/35395062/