¿Cuál es la herramienta Android de la caja ADB de "dumpsys" y cuáles son sus beneficios?

Estoy buscando la lista completa de comandos dumpsys shell ADB con una explicación completa de todos los comandos.

¿Dónde puedo encontrar esta información?

¿Qué es dumpsys y cuáles son sus beneficios?

Dumpsys es una herramienta android que se ejecuta en el dispositivo y descarga información interesante sobre el estado de los servicios del sistema.

Beneficios evidentes:

  1. Posibilidad de obtener fácilmente información del sistema en una simple representación de cadenas.
  2. Posibilidad de usar la CPU descargada, RAM, batería, estadísticas de almacenamiento de gráficos de una bonita, que le permitirá comprobar cómo su aplicación afecta a todo el dispositivo!

¿Qué información podemos recuperar del comando dumpsys shell y cómo podemos usarlo?

Si ejecuta dumpsys verá una tonelada de información del sistema. Pero sólo puede usar partes separadas de este gran volcado.

Para ver todos los "subcomandos" de dumpsys hacer:

dumpsys | grep "DUMP OF SERVICE"

Salida:

 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: 

Algunos ejemplos de Dumping y resultados

1) Obtención de todas las estadísticas de batería posibles:

 $~ adb shell dumpsys battery 

Usted conseguirá salida:

 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) Obtener información wifi

 ~$ adb shell dumpsys wifi 

Salida:

 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.xx netmask 255.255.255.0 dns1 192.168.xx dns2 8.8.8.8 DHCP server 192.168.xx 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) Obtener información de la CPU

 ~$ adb shell dumpsys cpuinfo 

Salida:

 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) Obtener información sobre el uso de la memoria

 ~$ adb shell dumpsys meminfo 'your apps package name' 

Salida:

 ** 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 

Si desea ver la información de todos los procesos, use ~$ adb shell dumpsys meminfo

Introduzca aquí la descripción de la imagen

Dumpsys es en última instancia herramienta flexible y útil!

Si desea utilizar esta herramienta no se olvide de agregar el permiso en su android manifiesta automáticamente android.permission.DUMP

Intente probar todos los comandos para obtener más información sobre dumpsys. Feliz dumping!

En cuanto al código fuente de dumpsys y servicio , puede obtener la lista de servicios disponibles ejecutando esto:

 adb shell service list 

A continuación, puede proporcionar el nombre del servicio que le interesa a dumpsys para obtener la información específica. Por ejemplo (tenga en cuenta que no todos los servicios proporcionan información de volcado):

 adb shell dumpsys activity adb shell dumpsys cpuinfo adb shell dumpsys battery 

Como se puede ver en el código (y en la respuesta de K_Anas), si llama a dumpsys sin ningún nombre de servicio, descargará la información de todos los servicios en un volcado grande:

 adb shell dumpsys 

Algunos servicios pueden recibir argumentos adicionales sobre qué mostrar, que normalmente se explica si se proporciona un argumento -h , por ejemplo:

 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 

Según la información oficial de Android sobre dumpsys :

La herramienta dumpsys se ejecuta en el dispositivo y proporciona información sobre el estado de los servicios del sistema.

Para obtener una lista de los servicios disponibles, utilice

 adb shell dumpsys -l 

Yo uso dumpsys para detectar si la aplicación se ha estrellado y el proceso sigue activo. Situación que he utilizado es para encontrar acerca de la aplicación de máquina remota se estrelló o no.

 dumpsys | grep myapp | grep "Application Error" 

o

 adb shell dumpsys | grep myapp | grep Error 

O cualquier cosa que ayude … etc

Si la aplicación no está en ejecución, no obtendrá nada como resultado. Cuando la aplicación está detenida, el mensaje aparece en la pantalla de Android, el proceso sigue activo y si se comprueba mediante el comando " ps " o cualquier otra cosa, verá que el estado del proceso no muestra ningún error o significado de falla. Pero al hacer clic en el botón para cerrar el mensaje, el proceso de la aplicación se eliminará de la lista de procesos. Por lo que captura estado de choque sin ningún código en la aplicación es difícil de encontrar. Pero dumpsys le ayuda.

  • Android adb, recuperar base de datos utilizando run-as
  • Propiedades del sistema de Android: deshabilitarlas en la línea de comandos
  • interpretando dumpsys cpuinfo
  • Intentando obtener acceso r / w a android / system
  • ¿Cómo medir el tiempo de shell de adb con resolución de milisegundos?
  • APV lector pdf. Problemas de instalación, descompresión y biblioteca nativa
  • ¿Cómo resolver el dispositivo ADB no autorizado en Android dispositivo ADB host?
  • ¿Cómo traceroute en adb shell?
  • Cambiar permiso de archivo en la aplicación
  • Fuerza Cierre una aplicación mediante programación
  • Enviar texto no inglés usando adb (input keyevent) o usando monkeyrunner
  • FlipAndroid es un fan de Google para Android, Todo sobre Android Phones, Android Wear, Android Dev y Aplicaciones para Android Aplicaciones.