¿Cómo abro un archivo de texto desde una ventana de terminal desde la GUI de Android?

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.txtdesde 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 suantes 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.

¿Quieres abrirlo en un programa separado? ¿O simplemente quieres editarlo rápidamente? nanoo visuelen estar disponibles en sistemas basados ​​en *nix. Prefiero nano porque es un poco más limpio en mi humilde opinión.
No, quiero que el comando abra el archivo con droid edit o con el editor de texto es
Gracias por su aporte, pero estoy buscando algo más simple que eso... Anoche me di cuenta de que todo lo que quiero saber es cómo hacer esto como en Windows si escribe C:\text.txt desde el símbolo del sistema, se cargará el editor de texto predeterminado (sea lo que sea), entonces, ¿cómo lo hago usando el emulador de terminal bash de ROM Toolbox Lite?
Siempre puede extraer el archivo del teléfono usando adb y luego abrirlo en su computadora

Respuestas (2)

Lanzar aplicaciones en Android no es sencillo. Tendrá que usar am startcombinado 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.

Instrucciones

  1. Abra el archivo manualmente en el editor usando la GUI y asegúrese de que permanezca activo en la pantalla.
  2. 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.PopNoteEditory el nombre del paquete es com.estrongs.android.pop. Puede usar el comando dumpsys activitypara 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.

  3. 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
    
    • -npermitirá 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.
    • -des 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-taskse asegurará de que la actividad no se lance desde "Recientes" sino desde cero.

    (Ingrese am startpara profundizar en cosas interesantes).

    En mi caso, la consulta final para el archivo aero.txtdebajo /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.

  4. 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!

Cuando "Conecta su teléfono a la PC en modo de depuración, configura ADB en la PC", ¿realmente envía comandos al teléfono a través de la PC?
Sí. Es verdad.

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 .

  1. am start -a android.intent.action.VIEW -d <FILEPATH> -t text/plain --activity-clear-task      
    

    Ejecutará la com.android.internal.app.ResolverActivityactividad del androidsistema 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
    

                                                                IMG: diálogo.

  1. 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_ENTERpara simular "entrar".


Todavía iría por esta respuesta si fuera necesario. :)