getRunningProcesses()を使用すると、約20〜30のプロセスが得られました。
ただし、Android端末でTOPコマンドを使用すると、80を超えるプロセスが表示されました。「root」が所有する一部のプロセスのメモリ消費量がゼロであることがわかりました。
違いの原因は何ですか?TOPによって検出されたプロセスの一部が現在実行されていませんか?
top
オペレーティングシステムで実行されているすべてのプロセスを示しています。一方 ActivityManager.getRunningAppProcesses
、Androidによって開始されたプロセスのみが表示されます。
ルート所有のプロセスは通常、イベント処理のためにLinuxカーネルによって開始されますが、によって返されるプロセスはActivityManager.getRunningAppProcesses
Androidフレームワークによって開始されたプロセスのみです。
Androidは多くのサービスを実行します。Androidで実行する必要があるため、閉じたくないサービス。サービスに関する詳細情報は次のとおりです。
Androidデベロッパー-プロセスとスレッドもお読みください。