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 iOS que usan 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.

benhsu
fuente

Respuestas:

1

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

Una posible solución alternativa:

Si la aplicación y su Mac son compatibles con iCloud, configúrelo en ambos y mire dentro de "~ / Library / Mobile Documents /" en su Mac.

Debe haber una carpeta correspondiente a cada aplicación para la que tenga habilitado iCloud. Es posible que tenga que mirar alrededor de la estructura de la subcarpeta para ver exactamente dónde deben ir los archivos que desea agregar, pero una vez que se dé cuenta, puede escribir su script para apuntar a esa ubicación.

Cuando su secuencia de comandos agrega 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 los cambios se actualicen.

Vickash
fuente
0

Aunque esta publicación es antigua, me gustaría agregar algunas cosas. Puedo usar AppleScripts para enviar cosas a mi dispositivo, pero tu dispositivo debe tener jailbreak (también enraizado)

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

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

Hará un archivo en su carpeta /Usuario/[ su nombredeusuario .//ssh (también conocido como ~ / .ssh o $ HOME / .ssh ). Coloque id_rsa.pub o id_dsa.pub en su ipad en algún lugar, quizás fuera de la raíz con

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

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

ssh root@nameofipad

Ahora tomaremos la información almacenada en esta clave ssh pública y la escribiremos en un archivo en su iPad. Primero tenemos que hacer la carpeta en el iPad y luego escribir la información.

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

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

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á cualquier 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 iTunes y ver el archivo. Es realmente genial y evita la estúpida basura de Apple solo para iTunes.

Permítanme explicar lo obvio, luego lo no tan obvio:

Obvio

  1. establecer el script en variable my_script
  2. ejecutar myscript

No es obvio

Le decimos a scp que escriba la información del archivo host en / dev / null , que básicamente es un dispositivo dedicado que es como un agujero negro. Todo lo que escribes se ha ido. Solo necesitamos 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 obstáculos a su iPad.

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

¡Espero que esto ayude a alguien!

Jonathan Komar
fuente