¿Dónde encontrar información sobre el comando de shell de "llamada de servicio" de Android?
Utilizando adb shell
o un emulador de terminal en el dispositivo, ingresando esto borrará todas las notificaciones (requiere su
)
service call notification 1
Esto enviará un sms (no requiere su
)
- Introducción de shell ADB dentro de un directorio específico en el dispositivo conectado utilizando sólo una sola línea de código de terminal
- Hotspot Android 4.2.2+
- Ejecutar Python en el terminal Android
- Android: Cómo restringir una aplicación con ADB shell am start
- No se pudo conectar a tcp: 5037: no se puede conectar a 127.0.0.1:5037: No se pudo establecer conexión porque la máquina de destino lo rechazó activamente. (10061)
service call isms 5 s16 "PhoneNumber" i32 0 i32 0 s16 "BodyText"
¿Dónde puedo obtener más información sobre la service call
? He encontrado esta pregunta y apreciar el desglose de la respuesta en cuanto a lo que todo significa. ¿Pero dónde puedo encontrar información sobre qué método de notification 2
podría estar tratando de llamar?
La ejecución de la service call
fue incompleta e imprimió este uso:
Usage: service [-h|-?] service list service check SERVICE service call SERVICE CODE [i32 INT | s16 STR] ... Options: i32: Write the integer INT into the send parcel. s16: Write the UTF-16 string STR into the send parcel.
He funcionado la service list
y volvió con 78 servicios para mi dispositivo incluyendo isms
y notification
y para la mayoría de los servicios imprimirá lo que parece ser un espacio de nombres ( com.android.internal.telephony.ISms
for isms
y android.app.INotificationManager
para la notification
). ¿Cómo puedo usar esta información para averiguar qué puedo hacer con cada uno de estos servicios?
- Comando shell de shell de adb y permanecer en shell
- Simulación de combinación de pulsadores de teclas del terminal ADB
- Cambiar el nombre de archivos en Android
- Escribir una aplicación para Android que ejecuta comandos de Linux
- Cambiar permiso de archivo en la aplicación
- Cómo detectar la aplicación en ejecución mediante el comando ADB
- Compruebe si el directorio existe en Android sdcard con bash
- ¿Es posible iniciar la actividad a través de adb shell y recibir su respuesta?
Aquí está mi mensaje sobre la llamada de servicios de Android desde el shell de ADB . Incluye un pequeño script bash que utilizo para descargar automáticamente la versión adecuada del código fuente del servicio para mi dispositivo específico y luego analizarlo para encontrar los códigos de transacción para todos los métodos.
Mi primera respuesta aquí, así que espero que sea útil para usted.
Para explicar este pequeño enigma déjame usar el androide 4.3.1. Este enlace podría ser esencial en su caso. Desplácese hacia abajo el código java a la línea 669. Hay espera para usted bloque de transacción estrictamente relacionados con el servicio com.android.internal.telephony.ISms
y probablemente su respuesta a lo que puede hacer más.
En su caso está invocando TRANSACTION_sendText. La explicación es en la línea 673 donde puedes encontrar
static final int TRANSACTION_sendText = (android.os.IBinder.FIRST_CALL_TRANSACTION + 4);
La última parte del código consta del dígito "4". Cada número de TRANSACCIÓN + 1 = el apropiado. Es por eso que service call isms 5
son responsables de sendText
y no de sendMultipartText
.
La misma regla se aplica para todos los servicios.
Estoy seguro de que ahora averigua cómo revisar TRANSACTIONS para el servicio de notificación. Buena diversión.
- Seguimiento de las estadísticas de red de una aplicación (netstats) mediante ADB
- Colores de las barras GPU de perfil en Android M