ADB Shell dumpsys
コマンドの完全なリストと、すべてのコマンドの完全な説明を探しています。
この情報はどこで入手できますか?
dumpsysとは何か、その利点は
dumpsysは、デバイス上で実行され、システムサービスのステータスに関する興味深い情報をダンプするAndroidツールです。
明らかな利点:
dumpsysシェルコマンドから取得できる情報とその使用方法
Dumpsysを実行すると、大量のシステム情報が表示されます。ただし、この大きなダンプの別々の部分のみを使用できます。
dumpsysのすべての「サブコマンド」を表示するには、次のようにします。
dumpsys | grep "DUMP OF SERVICE"
出力:
DUMP OF SERVICE SurfaceFlinger:
DUMP OF SERVICE accessibility:
DUMP OF SERVICE account:
DUMP OF SERVICE activity:
DUMP OF SERVICE alarm:
DUMP OF SERVICE appwidget:
DUMP OF SERVICE audio:
DUMP OF SERVICE backup:
DUMP OF SERVICE battery:
DUMP OF SERVICE batteryinfo:
DUMP OF SERVICE clipboard:
DUMP OF SERVICE connectivity:
DUMP OF SERVICE content:
DUMP OF SERVICE cpuinfo:
DUMP OF SERVICE device_policy:
DUMP OF SERVICE devicestoragemonitor:
DUMP OF SERVICE diskstats:
DUMP OF SERVICE dropbox:
DUMP OF SERVICE entropy:
DUMP OF SERVICE hardware:
DUMP OF SERVICE input_method:
DUMP OF SERVICE iphonesubinfo:
DUMP OF SERVICE isms:
DUMP OF SERVICE location:
DUMP OF SERVICE media.audio_flinger:
DUMP OF SERVICE media.audio_policy:
DUMP OF SERVICE media.player:
DUMP OF SERVICE meminfo:
DUMP OF SERVICE mount:
DUMP OF SERVICE netstat:
DUMP OF SERVICE network_management:
DUMP OF SERVICE notification:
DUMP OF SERVICE package:
DUMP OF SERVICE permission:
DUMP OF SERVICE phone:
DUMP OF SERVICE power:
DUMP OF SERVICE reboot:
DUMP OF SERVICE screenshot:
DUMP OF SERVICE search:
DUMP OF SERVICE sensor:
DUMP OF SERVICE simphonebook:
DUMP OF SERVICE statusbar:
DUMP OF SERVICE telephony.registry:
DUMP OF SERVICE throttle:
DUMP OF SERVICE usagestats:
DUMP OF SERVICE vibrator:
DUMP OF SERVICE wallpaper:
DUMP OF SERVICE wifi:
DUMP OF SERVICE window:
いくつかのダンプの例と出力
1)考えられるすべてのバッテリー統計の取得:
$~ adb Shell dumpsys battery
出力が得られます:
Current Battery Service state:
AC powered: false
AC capacity: 500000
USB powered: true
status: 5
health: 2
present: true
level: 100
scale: 100
voltage:4201
temperature: 271 <---------- Battery temperature! %)
technology: Li-poly <---------- Battery technology! %)
2)WiFi情報を取得する
~$ adb Shell dumpsys wifi
出力:
Wi-Fi is enabled
Stay-awake conditions: 3
Internal state:
interface tiwlan0 runState=Running
SSID: XXXXXXX BSSID: xx:xx:xx:xx:xx:xx, MAC: xx:xx:xx:xx:xx:xx, Supplicant state: COMPLETED, RSSI: -60, Link speed: 54, Net ID: 2, security: 0, idStr: null
ipaddr 192.168.1.xxx gateway 192.168.x.x netmask 255.255.255.0 dns1 192.168.x.x dns2 8.8.8.8 DHCP server 192.168.x.x lease 604800 seconds
haveIpAddress=true, obtainingIpAddress=false, scanModeActive=false
lastSignalLevel=2, explicitlyDisabled=false
Latest scan results:
Locks acquired: 28 full, 0 scan
Locks released: 28 full, 0 scan
Locks held:
3)CPU情報の取得
~$ adb Shell dumpsys cpuinfo
出力:
Load: 0.08 / 0.4 / 0.64
CPU usage from 42816ms to 34683ms ago:
system_server: 1% = 1% user + 0% kernel / faults: 16 minor
kdebuglog.sh: 0% = 0% user + 0% kernel / faults: 160 minor
tiwlan_wq: 0% = 0% user + 0% kernel
usb_mass_storag: 0% = 0% user + 0% kernel
pvr_workqueue: 0% = 0% user + 0% kernel
+sleep: 0% = 0% user + 0% kernel
+sleep: 0% = 0% user + 0% kernel
TOTAL: 6% = 1% user + 3% kernel + 0% irq
4)メモリ使用量情報の取得
~$ adb Shell dumpsys meminfo 'your apps package name'
出力:
** MEMINFO in pid 5527 [com.sec.Android.widgetapp.weatherclock] **
native dalvik other total
size: 2868 5767 N/A 8635
allocated: 2861 2891 N/A 5752
free: 6 2876 N/A 2882
(Pss): 532 80 2479 3091
(shared dirty): 932 2004 6060 8996
(priv dirty): 512 36 1872 2420
Objects
Views: 0 ViewRoots: 0
AppContexts: 0 Activities: 0
Assets: 3 AssetManagers: 3
Local Binders: 2 Proxy Binders: 8
Death Recipients: 0
OpenSSL Sockets: 0
SQL
heap: 0 MEMORY_USED: 0
PAGECACHE_OVERFLOW: 0 MALLOC_SIZE: 0
すべてのプロセスの情報を表示するには、~$ adb Shell dumpsys meminfo
を使用します
dumpsysは究極的に柔軟で便利なツールです!
このツールを使用する場合は、Androidマニフェストに自動的に許可を追加することを忘れないでください_Android.permission.DUMP
Dumpsysの詳細については、すべてのコマンドをテストしてください。ハッピーダンピング!
dumpsys および service のソースコードを見ると、これを実行することで利用可能なサービスのリストを取得できます:
adb Shell service list
その後、興味のあるサービス名をdumpsysに指定して、特定の情報を取得できます。例(すべてのサービスがダンプ情報を提供するわけではないことに注意してください):
adb Shell dumpsys activity
adb Shell dumpsys cpuinfo
adb Shell dumpsys battery
コード(およびK_Anasの答え)でわかるように、サービス名なしでdumpsysを呼び出すと、すべてのサービスに関する情報が1つの大きなダンプにダンプされます。
adb Shell dumpsys
一部のサービスは、-h
引数を指定した場合に通常説明される表示内容に関する追加の引数を受け取ることができます。たとえば、次のとおりです。
adb Shell dumpsys activity -h
adb Shell dumpsys window -h
adb Shell dumpsys meminfo -h
adb Shell dumpsys package -h
adb Shell dumpsys batteryinfo -h
Androidの公式情報dumpsys によると:
dumpsysツールはデバイスで実行され、システムサービスのステータスに関する情報を提供します。
利用可能なサービスのリストを取得するには
adb Shell dumpsys -l
dumpsysを使用して、アプリがクラッシュし、プロセスがまだアクティブである場合にキャッチします。私が使用した状況は、リモートマシンアプリがクラッシュしているかどうかを見つけることです。
dumpsys | grep myapp | grep "Application Error"
または
adb Shell dumpsys | grep myapp | grep Error
または何か役立つ...など
アプリが実行されていない場合、結果として何も得られません。アプリが停止すると、メッセージがAndroidによって画面に表示され、プロセスはまだアクティブです。「ps」コマンドなどで確認すると、プロセスの状態にエラーやクラッシュの意味が表示されていないことがわかります。ただし、ボタンをクリックしてメッセージを閉じると、アプリプロセスはプロセスリストから消去されます。そのため、アプリケーション内のコードなしでクラッシュ状態を見つけるのは困難です。しかしdumpsysが役立ちます。