Creación de accesos directos en Android mediante ADB
¿Es posible crear un atajo de ADB en el lanzador de mi androide? Tengo un archivo .bat para instalar mis aplicaciones desde mi PC (a través de un doble clic), pero después de esto siempre necesito buscar en la lista de aplicaciones enorme (no tan amigable) del lanzador. Si fuera posible agregar esta característica a mi archivo de .bat sería grande. Ya trato de buscar en la web sin ninguna suerte:.
Gracias por adelantado
- ¿Cómo registrar esta tableta en la lista udev de Ubuntu?
- Depuración USB Moverio en Mac
- No puedo actualizar desde la versión 1.0.29 de adb
- ADB no reconoce mi Galaxy Nexus - Win7
- Tamaño de la pantalla del dispositivo Android
- Android 4.2.2 Dispositivo sin conexión
- Android: No se pudo instalar .apk en el dispositivo "device": timeout
- Dispositivos de Android adb no autorizados
- Keyevent de entrada en el teclado coreano desde el shell de adb
- Cómo bloquear la pantalla de Android a través de ADB?
- Android adb wireless / WIFI debug Operación agotada
- El servidor de adb está desactualizado. Matar ... no puede enlazar 'tcp: 5037' servidor ADB no ACK * no pudo iniciar daemon * en ubuntu 14.04 LTS
- Obtener el nombre de la versión de la aplicación mediante adb
Hay un par de maneras de manejar esto. Si su principal necesidad es poder iniciar su aplicación rápidamente cada vez que realice una re-edición, entonces una adb shell am intent -n com.example.app/.App
es adb shell am intent -n com.example.app/.App
es la solución más fácil.
Si quieres hacer un acceso directo (y no te importa dónde), usa com.android.launcher.action.INSTALL_SHORTCUT
como todo el mundo dice. Necesitará una aplicación o bin para hacer eso, ya que la emisión de am no tomará propósitos anidados.
Si está trabajando con un lanzador específico (como ADW Launcher) puede hackear la base de datos de atajos. Esto le permitirá especificar las coordenadas del atajo ([2, 3] en este caso)
adb shell sqlite3 /data/data/org.adw.launcher/databases/launcher.db "DELETE FROM favorites WHERE _id=1; INSERT INTO favorites VALUES(1,'MyApp','#Intent;action=android.intent.action.MAIN;category=android.intent.category.LAUNCHER;launchFlags=0x10200000;component=com.example.app/.App;end',-100,0,2,3,1,1,0,-1,NULL,0,NULL,NULL,NULL,NULL,NULL);"
Deberá indicarle al lanzador que actualice desde la base de datos. Por lo general, la única manera es matar el lanzador. Las versiones posteriores de am (el comando de shell ActivityManager) tienen opciones para reiniciar un paquete, las versiones anteriores no. En ese caso, tendrías que escribir una pequeña aplicación:
ActivityManager am = (ActivityManager) getSystemService(Context.ACTIVITY_SERVICE); am.restartPackage("org.adw.launcher");
- Android falló al cambiar el nombre del archivo aar en la compilación
- Android vuelve del navegador a la aplicación