AppleScript per aggiungere file a un'app iOS sotto iTunes

2

So che è possibile scrivere un AppleScript per aggiungere file musicali e video alla libreria di iTunes. È anche possibile scrivere AppleScript per aggiungere file alle app iOS che utilizzano la condivisione di file?

Ad esempio, ho un'app per iPad chiamata Comic Zeal e di solito aggiungo file trascinando i file su iTunes. Vorrei scrivere uno script per aggiungere file a Comic Zeal dalla riga di comando.

    
posta benhsu 16.12.2011 - 21:13
fonte

2 risposte

1

Per quanto posso vedere nel dizionario AppleScript di iTunes, non c'è alcun supporto per lo scripting di qualsiasi cosa riguardante le applicazioni iOS. Siamo spiacenti.

Una soluzione possibile:

Se l'app e il tuo Mac supportano iCloud, configuralo su entrambi e guarda all'interno di "~ / Library / Mobile Documents /" sul tuo Mac.

Dovrebbe esserci una cartella corrispondente a ciascuna app per cui è abilitato iCloud. Potresti dover controllare la struttura della sottocartella per vedere esattamente dove devono andare i file che vuoi aggiungere, ma una volta capito, puoi scrivere il tuo script per scegliere quella destinazione.

Quando lo script aggiunge un file a quella posizione, si sincronizzerà tramite iCloud. Io uso questo trucco tutto il tempo per ottenere i file nella mia app GoodReader.

Fai attenzione che le app iOS non si sincronizzano sempre su iCloud in background. Nel caso di GoodReader ho bisogno di aprirlo per le modifiche da aggiornare.

    
risposta data 17.12.2011 - 04:02
fonte
0

Anche se questo post è vecchio, vorrei aggiungere alcune cose. Sono in grado di utilizzare AppleScript per inviare cose al mio dispositivo, ma il tuo dispositivo deve essere jailbroken (AKA rooted)

Ecco come funziona: Esegui Cydia e installa OpenSSH. Sul tuo Mac, esegui uno dei seguenti comandi per generare una chiave ssa rsa o dsa. (Ho usato rsa, perché è più recente)

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

Crea un file nella cartella / User / [yourusername] /. ssh (noto anche come ~ / .ssh o $ HOME /. ssh ). Metti id_rsa.pub o id_dsa.pub sul tuo ipad da qualche parte, magari dalla radice con

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

Quindi accedi al tuo ipad (sensibile ai caps) Ignora tutti i reclami e dì di si, inserisci Alpine per la password (se non lo hai cambiato (cambia con il comando passwd dal prompt di root di ipad):

ssh root@nameofipad

Ora prenderemo le informazioni memorizzate in questa chiave pubblica ssh e le scriveremo su un file sul tuo iPad. Per prima cosa dobbiamo creare la cartella sull'iPad e quindi scrivere le informazioni.

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

Ora il file authorized_keys conterrà la chiave del tuo Mac. Un ultimo passaggio importante è impostare le autorizzazioni corrette per il file authorized_keys:

chmod 666 ~/.ssh/authorized_keys

AppleScript

Ora puoi inviare file al tuo dispositivo tramite AppleScript. Ad esempio, ho spesso modificato i file PDF con l'app iOS iAnnotate PDF. Ho usato iFile sull'iPad per identificare la cartella per l'app ed eseguo il seguente AppleScript per inviare i file alla sua cartella documenti:

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

Questo script prenderà il file che sto leggendo in Skim (lettore PDF) e lo sposterà sull'iPad. Sull'iPad (e sull'iPhone) posso avviare iAnnotate e andare alla cartella Condivisione iTunes e vedere il file. E 'davvero bello ed evita la stupida merda di iTunes di Apple.

Lascia che ti spieghi l'ovvio, quindi non è così ovvio:

Ovvio

  1. imposta lo script sulla variabile my_script
  2. esegui myscript

Non ovvio

Diamo a scp di scrivere le informazioni del file host su / dev / null , che in pratica è un dispositivo dedicato che è come un buco nero. Tutto ciò che scrivi è andato. Dobbiamo solo rendere scp felice e lasciarlo scrivere a qualcosa. L'altra opzione, -o StrictHostKeyChecking = no rende la connessione non confermare una connessione con "Sei sicuro di voler connettere". Ciò consente ad AppleScript di avere un accesso senza ostacoli al tuo iPad.

Tieni presente che il nome host del tuo iPad (il mio è JokosiPad) può essere trovato facilmente accedendo all'app Impostazioni e facendo clic su Generale e informazioni. Il record "Nome" contiene il nome host da utilizzare come JokosiPad.local invece di memorizzare l'indirizzo IP (che può essere modificato).

Spero che questo aiuti qualcuno!

    
risposta data 21.02.2013 - 17:31
fonte

Leggi altre domande sui tag