Cómo iniciar un programa JAVA en Android
La primera es enviar un Intent en la aplicación de Android para iniciar la aplicación de Android
Este El método es el más simple y el más utilizado. No entraré en detalles aquí. Para obtener más información sobre Intent, consulte "Introducción a la tecnología Intent"
2. Envíe el Intent a través del comando am en la consola de shell para iniciar la aplicación de Android
En el shell de Android. consola a través de El comando am envía una intención para iniciar la aplicación de Android
Para obtener más información al respecto, consulte la "Explicación del comando am de Android"
3. comando en el programa JAVA de la consola de shell.
Este enfoque tiene una desventaja inherente, es decir, muchos JNI de Android no se pueden llamar en él. Esto se debe a que muchos de los JNI de Android en realidad requieren un registro manual.
Para obtener más información, consulte "Llamada básica a la máquina virtual Dalvik"
4 Inicie el programa JAVA directamente desde la consola shell ejecutando el programa app_process.
En app_process En el programa, registrará manualmente el JNI de Android, que puede hacer un buen uso de la API de Android, por lo que iniciar el programa JAVA ejecutando el programa app_process es un método perfecto. El programa app_process es un programa C cuyo código fuente se encuentra en frameworks\base\cmds\app_process.
Para obtener más información sobre su uso, consulte "Se explica el comando de Android" y los scripts de shell frameworks\base\cmds\am\am y frameworks\base\cmds\pm\pm
El archivo de script am es el siguiente:
# Un script que inicia "am" en el dispositivo, que tiene un # shell muy tosco.
#base=/systemexport CLASSPATH=$base/framework/am.jarexec app_process $base/bin com.android.commands.am.Am"$@"pm el archivo de script es el siguiente:
# Iniciar en el script "pm" del dispositivo, el dispositivo tiene un # shell muy simple.#base=/systemexport CLASSPATH=$base/framework/pm .jarexec app_process $base/bin com.android.commands.pm.Pm "$@" CLASSPATH Especifica la ubicación del programa y com.android.commands.pm.Pm señala que el punto de entrada del programa es com.android.Pm, es decir, la función de entrada principal (), en la que la clase y "$ @" se pasan a los parámetros de la función main(), pero "$ @" aquí es en sí mismo un parámetro pasado al shell
Tenga en cuenta que el archivo CLASSPATH debe estar en formato de archivo dalvik y la referencia para la conversión es "Llamadas básicas a Dalvik VM". Por supuesto, el CLASSPATH en el archivo puede ser un archivo apk, pero su apk debe tener al menos una clase con una función de entrada main().
Reimprimir