AppleScript para agregar archivos a una aplicación iOS en iTunes

2

Sé que es posible escribir un AppleScript para agregar archivos de música y video a la biblioteca de iTunes. ¿También es posible escribir AppleScript para agregar archivos a aplicaciones de iOS que utilizan el intercambio de archivos?

Por ejemplo, tengo una aplicación para iPad llamada Comic Zeal, y normalmente le agrego archivos arrastrándolos a iTunes. Me gustaría escribir un script para agregar archivos a Comic Zeal desde la línea de comandos.

    
pregunta benhsu 16.12.2011 - 21:13

2 respuestas

1

Por lo que puedo ver en el diccionario de AppleScript de iTunes, no hay soporte para crear secuencias de comandos relacionadas con las aplicaciones de iOS. Lo siento.

Una posible solución:

Si la aplicación, y tu Mac, son compatibles con iCloud, configúralas en ambas y busca en "~ / Library / Mobile Documents /" en tu Mac.

En debe haber una carpeta correspondiente a cada aplicación para la que tiene habilitado iCloud. Es posible que deba mirar alrededor de la estructura de la subcarpeta para ver exactamente dónde deben ir los archivos que desea agregar, pero una vez que lo descubra, puede escribir su secuencia de comandos para esa ubicación.

Cuando la secuencia de comandos agregue un archivo a esa ubicación, se sincronizará a través de iCloud. Uso este truco todo el tiempo para obtener archivos en mi aplicación GoodReader.

Tenga en cuenta que las aplicaciones de iOS no siempre se sincronizan con iCloud en segundo plano. En el caso de GoodReader, necesito abrirlo para que se actualicen los cambios.

    
respondido por el Vickash 17.12.2011 - 04:02
0

Aunque esta publicación es antigua, me gustaría agregar algunas cosas. Puedo usar AppleScripts para enviar cosas a mi dispositivo, pero su dispositivo debe ser liberado (también conocido como rooteado)

Así es como funciona: Ejecuta Cydia e instala OpenSSH. En su Mac, ejecute uno de los siguientes comandos para generar una clave rsa o dsa ssh. (Utilicé rsa, porque es más nuevo)

ssh-keygen -t rsa
ssh-keygen -t dsa

Creará un archivo en su carpeta /User/[yourusernameername/.ssh (también conocido como ~ / .ssh o $ HOME /. ssh ). Coloque el id_rsa.pub o id_dsa.pub en su ipad en algún lugar, tal vez fuera de la raíz con

scp ~/.ssh/id_rsa.pub root@nameofipad:/

Luego inicie sesión en su ipad (mayúsculas) Ignore todas las quejas y diga sí, ingrese Alpine para la contraseña (si no la ha cambiado (cambie con el comando passwd desde la solicitud de la raíz del ipad):

ssh root@nameofipad

Ahora vamos a tomar la información almacenada en esta clave pública ssh y escribirla en un archivo en su iPad. Primero tenemos que crear la carpeta en el iPad y luego escribir la información.

mkdir ~/.ssh && cat /rsa.pub >> ~/.ssh/authorized_keys

Ahora el archivo authorized_keys contendrá la clave de tu Mac. Un último paso importante es establecer los permisos correctos para el archivo authorized_keys:

chmod 666 ~/.ssh/authorized_keys

AppleScript

Ahora puede enviar archivos a su dispositivo a través de AppleScript. Por ejemplo, a menudo edito archivos PDF con la aplicación iOS iAnnotate PDF. Usé iFile en el iPad para identificar la carpeta de la aplicación y ejecuto el siguiente AppleScript para enviar archivos a su carpeta de documentos:

tell application "System Events"
    set ProcessList to name of every process
    if "Skim" is in ProcessList then
        tell application "Skim"
            if document 1 exists then
                set the_file to POSIX path of (get file of document 1 as text)
                set my_script to "scp -o UserKnownHostsFile=/dev/null -o StrictHostKeyChecking=no " & the_file & " [email protected]:/User/Applications/01F8F1E6-BA09-412B-8069-355E7717F409/Documents"
                do shell script my_script
            end if
        end tell
    end if
end tell

Este script tomará el archivo que esté leyendo en Skim (lector de PDF) y lo enviará al iPad. En el iPad (y iPhone) puedo iniciar iAnnotate e ir a la carpeta Compartir de iTunes y ver el archivo. Es realmente genial y evita la estúpida basura de Apple solo para iTunes.

Déjame explicarte lo obvio, luego lo no tan obvio:

Obvious

  1. establezca el script a variable my_script
  2. ejecuta myscript

No es obvio

Le decimos a scp que escriba la información del archivo del host en / dev / null , que básicamente es un dispositivo dedicado que es como un agujero negro. Todo lo que escribes en él se ha ido. Solo tenemos que hacer feliz a scp y dejar que escriba algo. La otra opción, -o StrictHostKeyChecking = no hace que la conexión no confirme una conexión con "¿Está seguro de que desea conectarse". Esto permite que AppleScript tenga acceso sin obstrucciones a su iPad.

Ten en cuenta que el nombre de host de tu iPad (el mío es JokosiPad) se puede encontrar fácilmente al acceder a la aplicación Configuración y hacer clic en general. El registro "Nombre" contiene el nombre del host para usar como JokosiPad.local en lugar de memorizar la dirección IP (que puede cambiar).

¡Espero que esto ayude a alguien!

    
respondido por el Jonathan Komar 21.02.2013 - 17:31

Lea otras preguntas en las etiquetas