メディア プレーヤー サービス (デバイスの起動時に media.player に登録) が実行されているかどうか、adb シェルを使用しているかどうかを知りたいです。出来ますか?
ps コマンドを実行しようとしましたが、成功しませんでした。
すでに述べたように、adb shell service list
システム サービスのみを一覧表示します。
Android Emulator: How can I get a list of services that are runningで説明されているように、アプリによって作成されたサービスを探すには、
// List all services
adb shell dumpsys activity services
// List all services containing "myservice" in its name
adb shell dumpsys activity services myservice
何かが返された場合は、サービスがインストールされていることを意味します。app=ProcessRecord(...)
サービスが現在開始されているか停止されているかを知るには、それぞれまたはを探しますapp=null
。
シンプルな方法でLinuxスタイルを行うこともできます
ps | grep myservice
シェルの中にいる間。
コマンドラインを試す
adb shell service list
サービス名とそのパッケージ名のリストも取得します。
特定のサービスが実行されているかどうかを簡単に確認するには、次を使用します。
adb shell service check <service>
たとえば、実行中かどうかadb shell service check media.player
を示します。Service media.player: found
Service media.player: not found
詳細が必要な場合は、 を試してくださいdumpsys <service>
。たとえば、のクライアント、開いているファイルなどadb shell dumpsys media.player
に関する情報を返します。media.player
最後に、デバッグのために本当に詳細な情報が必要な場合は、の観点adb shell dumpsys activity services
から何が起こっているかを示す を試してください。ActivityManager
これには、インテント、作成時間、最後のアクティビティ時間、バインディングなどに関する情報が含まれます。後で表示/検索するために出力を保存する場合は、出力をリダイレクトできます。通常、かなり長いです。