Sto cercando l'elenco completo dei dumpsys
comandi della shell ADB con una spiegazione completa di tutti i comandi.
Dove posso trovare queste informazioni?
Sto cercando l'elenco completo dei dumpsys
comandi della shell ADB con una spiegazione completa di tutti i comandi.
Dove posso trovare queste informazioni?
Risposte:
Che cos'è la discarica e quali sono i suoi benefici
dumpsys è uno strumento Android che viene eseguito sul dispositivo e scarica informazioni interessanti sullo stato dei servizi di sistema.
Benefici evidenti:
Quali informazioni possiamo recuperare dal comando shell di dumpsys e come possiamo usarle
Se esegui dumpsys vedresti un sacco di informazioni di sistema. Ma puoi usare solo parti separate di questa grande discarica.
per vedere tutti i "sottocomandi" di dumpsys fare:
dumpsys | grep "DUMP OF SERVICE"
Produzione:
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:
Alcuni esempi e output di dumping
1) Ottenere tutte le statistiche possibili sulla batteria:
$~ adb shell dumpsys battery
Otterrai un output:
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) Ottenere informazioni wifi
~$ adb shell dumpsys wifi
Produzione:
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) Ottenere informazioni sulla CPU
~$ adb shell dumpsys cpuinfo
Produzione:
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) Ottenere informazioni sull'utilizzo della memoria
~$ adb shell dumpsys meminfo 'your apps package name'
Produzione:
** 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
Se vuoi vedere le informazioni per tutti i processi, usa ~$ adb shell dumpsys meminfo
dumpsys è in definitiva uno strumento flessibile e utile!
Se desideri utilizzare questo strumento, non dimenticare di aggiungere automaticamente l'autorizzazione al tuo manifest Android android.permission.DUMP
Prova a testare tutti i comandi per saperne di più sui dumpsys. Buon dumping!
Guardando il codice sorgente per dumpsys e servizio , è possibile ottenere l'elenco dei servizi disponibili eseguendo quanto segue:
adb shell service -l
È quindi possibile fornire il nome del servizio che ti interessa a dumpsys per ottenere le informazioni specifiche. Ad esempio (si noti che non tutti i servizi forniscono informazioni sul dump):
adb shell dumpsys activity
adb shell dumpsys cpuinfo
adb shell dumpsys battery
Come puoi vedere nel codice (e nella risposta di K_Anas), se chiami dumpsys senza alcun nome di servizio, scaricherà le informazioni su tutti i servizi in un unico grande dump:
adb shell dumpsys
Alcuni servizi possono ricevere argomenti aggiuntivi su cosa mostrare che normalmente viene spiegato se hai fornito un -h
argomento, ad esempio:
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
Secondo le informazioni ufficiali di Android sui dumpsys :
Lo strumento dumpsys viene eseguito sul dispositivo e fornisce informazioni sullo stato dei servizi di sistema.
Per ottenere un elenco di servizi disponibili, utilizzare
adb shell dumpsys -l
-l
funziona sul mio Lollipop ma non sul mio Jelly Bean.
uso dumpsys per catturare se l'app si blocca e il processo è ancora attivo. situazione che ho usato è per scoprire che l'app della macchina remota è bloccata o meno.
dumpsys | grep myapp | grep "Application Error"
o
adb shell dumpsys | grep myapp | grep Error
o qualsiasi cosa che aiuti ... ecc
se l'app non è in esecuzione non otterrai nulla come risultato. Quando l'app viene interrotta, il messaggio viene mostrato sullo schermo da Android, il processo è ancora attivo e se si controlla tramite il comando " ps " o qualsiasi altra cosa, vedrai che lo stato del processo non mostra alcun errore o significato di crash. Ma quando fai clic sul pulsante per chiudere il messaggio, il processo dell'app verrà pulito dall'elenco dei processi. quindi è difficile trovare lo stato di arresto senza alcun codice nell'applicazione. ma dumpsys ti aiuta.