2

私はAndroidアプリ(TestApp pid:5231)を作成しましたが、その中に「 testservice」(pid:5232)という名前の独立したサービスがあります。今、私は奇妙なことになりました...私が私の電話で30分以上長い間アプリを実行している間、「テストサービス」はシステムによって殺されます。ログで、私は以下のキーを見ました:「もうcom.xxx.xxxは必要ありません」。

そのキーをグーグルで検索したところ、このシナリオはAMメカニズムであるメモリ不足が原因であると誰かが言った。ログファイルから、メモリ不足の通知は表示されていません... TT「もう必要ありません...」は通常のシナリオまたはメモリリークの問題です。理由は誰でもわかりますか?

4

1 に答える 1

1

私が知っていることから、サービスは、そのポリシーに応じて、Android OS によっていつでも強制終了される可能性があります。私でさえ、長時間実行されているプロセスを警告なしで強制終了しました。最近のスマートフォンは多くのメモリを搭載しているように見えるため、メモリ不足の問題が理由になることはほとんどありません。私にとってうまくいった唯一のトリックはForeground Serviceです。Android ドキュメントによると、フォアグラウンド サービスはバックグラウンド サービスよりも優先度が高くなります。したがって、問題を解決するためにフォアグラウンド サービスに移行することをお勧めします。

于 2012-10-24T09:52:42.393 に答える