Para abrir la configuración del Wi-Fi, se puede utilizar el siguiente comando:
# am start -n com.android.settings/.Settings\$AdvancedWifiSettingsActivity
¿Existe un comando similar para abrir la configuración de Ethernet como el siguiente?
La forma de lanzar el Actividad Ethernet de los Ajustes, es emitir:
am start -n com.android.settings/.Settings\$EthernetSettingsActivity
en una terminal.
Por cierto, el método para obtener una lista no depurada de todas las actividades de una app, es extraer dichos datos directamente del AndroidManifest.xml . Por suerte, podemos conseguirlo con los siguientes comandos de terminal:
path=$(pm path com.android.settings)
path=${path#p*:}
aapt d xmltree $path AndroidManifest.xml | grep Settings\$. > /sdcard/SettingsActivities.txt
Ahora, la primera línea asigna a la variable path
la ruta donde encontrar el Ajustes apk. Esto es útil si necesitas incluir este fragmento en un script, y quieres hacerlo portable para varios sabores de Android.
La línea 2 sanea la variable path, eliminando el "paquete:" prefijo establecido por pm path
, lo que la hace utilizable para la tercera línea.
La línea 3 es la que hace el verdadero trabajo: vierte el AndroidManifest.xml de la aplicación indicada en el path
variable. También filtra la salida, para considerar sólo las líneas que contienen "Ajustes$" y, a continuación, emite el resultado, guardándolo en un archivo con un nombre arbitrario (aquí ConfiguraciónActividades.txt ), para un examen más profundo.
¡Muchas gracias por la extraordinaria aclaración! He probado esos comandos, pero me sale /system/bin/sh: aapt: no se encuentra.
Sí, tu dispositivo puede ser uno de los que no se envían aapt
por defecto. Podrá solucionar este problema descargando el primer aapt de izzysoft.de/ftp/local/Android y lo instala en la partición del sistema siguiendo la información proporcionada en el readme.md (por cierto, ese sitio pertenece a Izzy, famoso moderador de Android SE).
Muchas gracias. Ya tengo todo listo. Ya que puedo hacer esto para diferentes dispositivos, he sacado el settings.apk a mi ordenador y he utilizado el aapt de Android SDK para extraer la información basada en tu consejo.
PreguntAndroid es una comunidad de usuarios de Android en la que puedes resolver tus problemas y dudas.
Puedes consultar las preguntas de otros usuarios, hacer tus propias preguntas o resolver las de los demás.
1 votos
@AaronGillion He añadido una captura de pantalla por su solicitud.
0 votos
Woah, eso es impresionante. ¿Qué dispositivo es este?
0 votos
@AaronGillion Es sólo una tablet genérica. Al menos muchas tabletas soportan Ethernet. Se podría conectar un adaptador de USB a Ethernet para habilitarla.
1 votos
@Hong Ya que preguntas, asumo que
am start -n com.android.settings/.Settings\$EthernetSettingsActivity
no funciona, ¿correcto?0 votos
@DeathMaskSalesman Creo que lo probé, o algo parecido, y no funcionó. Lo he vuelto a probar hace un momento y ha funcionado. Podrías convertir tu comentario en la respuesta, para que pueda aceptarla. Estaba mirando esta página: github.com/Mirkoddd/Settings.apk/tree/master/smali/com/Android/ pero no pude encontrar nada relacionado con Ethernet. ¿Dónde puedo encontrar todas las actividades de configuración posibles?
1 votos
@Hong Incluí el método que utilicé en la respuesta de abajo. Dado que su resultado está lejos de ser refinado, es posible que desee realizar una investigación adicional y mejorar mi respuesta con sus hallazgos.