0

最近、数か月の稼働時間で実行されることがわかっているアプリケーション(DIYゾーニングプロジェクト)をAndroid(アクセサリドライバーコアプロセス、およびリモコン)に移植しました。また、残念ながら、実行中のサービスを存続させるための手法(START_STICKY、startForeground())が使用されましたが、ユーザーがサービスとの対話を開始するまで、system ^ Hサービスアプリがフリーズすることがあります。その後、通常の操作が再開されます。最も問題となるのは、それが断続的に発生し、ほとんどの場合、数日間の稼働後に発生しているという事実です。リモコンはエミュレータで数日間動作しますが、目立った劣化はありません。そのため、問題はサービスまたはアクセサリドライバのいずれかにある可能性があります。

現在、システムはAPI 10を対象としているため、高度なサービススケジューリング機能は利用できません。つまり、そもそも問題に関連している場合です。

さて、そのようなシステムをデバッグおよび/またはプロファイリングするための現実的な方法は何ですか?AndroidハードウェアがADKアクセサリに接続されている場合、adbは使用できないことに注意してください。

4

1 に答える 1

0

かなり遅い回答ですが、Wakelocks を使用しようとしましたか? http://developer.android.com/reference/android/os/PowerManager.WakeLock.html 場合によっては、システムがプロセッサを休止状態にするだけで、「フリーズ」しているように見えます

于 2012-09-02T09:43:26.333 に答える