Estoy tratando de abrir un archivo de texto desde un emulador de ventana de terminal, pero no se abre en la terminal real, sino que más bien acabo de hacer clic en él.
Entonces mi pregunta es: ¿Qué comando puedo usar para abrir /mnt/sdcard/textfile.txt
desde un emulador de ventana de terminal desde ROM Toolbox Lite dentro de la GUI de Android para que se abra con cualquiera de mis aplicaciones de edición de texto? ¿Tendré que ejecutar su
antes de poder ejecutar cualquier comando? Preferiría no hacerlo, pero el dispositivo está rooteado para poder ejecutar su
.
Estoy usando la versión de Android 4.0.4.
Lanzar aplicaciones en Android no es sencillo. Tendrá que usar am start
combinado con ciertos <PARAMS>
para iniciar la aplicación o una sección particular de la misma.
Según los comentarios, parece que es posible que desee iniciar el archivo de texto con ES Note Editor . En ese caso, primero identifique la actividad responsable de la ventana de edición que ve cuando se abre el archivo en el editor mediante la GUI.
Nota: Probé la solución en Android 4.2, 4.4 y 5.0.
Conecte su teléfono a la PC en modo de depuración, configure ADB en la PC e ingrese en la terminal/cmd de la PC los comandos:
adb shell
su
dumpsys activity | grep mFocusedActivity
La salida puede verse como:
mFocusedActivity: ActivityRecord{42839028 u0 com.estrongs.android.pop/.app.editor.PopNoteEditor}
La información relevante (actividad) es .app.editor.PopNoteEditor
y el nombre del paquete es com.estrongs.android.pop
. Puede usar el comando dumpsys activity
para ver algunas cosas más útiles.
Eso es solo para una breve comprensión. Mantenga toda la cadena ( com.estrongs.android.pop/.app.editor.PopNoteEditor
) lista para usar.
Puede cerrar el editor en Android. Abra su aplicación de terminal favorita en Android e ingrese:
su
am start -n <PACKAGE_NAME/ACTIVITY> -d <FILEPATH> --activity-clear-task
-n
permitirá iniciar el componente mencionado de la aplicación.<PACKAGE_NAME/ACTIVITY>
es la cadena que anotamos en el paso 2. Para ES Note Editor sería com.estrongs.android.pop/.app.editor.PopNoteEditor
.-d
es permitir que se pasen datos a la actividad de la aplicación.<FILEPATH>
es la ubicación del archivo de texto que desea abrir.--activity-clear-task
se asegurará de que la actividad no se lance desde "Recientes" sino desde cero.(Ingrese am start
para profundizar en cosas interesantes).
En mi caso, la consulta final para el archivo aero.txt
debajo /sdcard/airdroid/
se veía así:
am start -n com.estrongs.android.pop/.app.editor.PopNoteEditor -d file:///sdcard/airdroid/aero.txt --activity-clear-task
El archivo se abrió con éxito.
Uso el editor de texto QuickEdit como editor de texto predeterminado y la consulta relevante se veía así:
am start -n com.rhmsoft.edit/.activity.MainActivity -d file:///sdcard/airdroid/nmon.txt --activity-clear-task
¡Que te diviertas!
Además de esta respuesta , puede usar la siguiente solución que se toma de la respuesta de rohitverma aquí y se notó en el comentario de Lucky .
am start -a android.intent.action.VIEW -d <FILEPATH> -t text/plain --activity-clear-task
Ejecutará la com.android.internal.app.ResolverActivity
actividad del android
sistema con todos los candidatos registrados para "texto sin formato" disponibles para su selección en un cuadro de diálogo.
Para mi archivo, la consulta fue y el cuadro de diálogo que se mostró fue:
am start -a android.intent.action.VIEW -d file:///sdcard/airdroid/dd.sh -t text/plain --activity-clear-task
.
Puede usar input keyevent <KEYCODE/KEYNAME>
el comando para seleccionar la aplicación en el cuadro de diálogo. La lista de eventos de entrada está disponible aquí por LionCoder .
Los eventos clave relevantes son:
19 --> "KEYCODE_DPAD_UP"
20 --> "KEYCODE_DPAD_DOWN"
21 --> "KEYCODE_DPAD_LEFT"
22 --> "KEYCODE_DPAD_RIGHT"
Y el uso sería como:
input keyevent 20
o
input keyevent KEYCODE_DPAD_DOWN
Usa la combinación de ellos para lograr el objetivo, y usa 66 --> "KEYCODE_ENTER
para simular "entrar".
Todavía iría por esta respuesta si fuera necesario. :)
John
nano
ovi
suelen estar disponibles en sistemas basados en *nix. Prefiero nano porque es un poco más limpio en mi humilde opinión.ricardo lalaz
ricardo lalaz
John