iTunesでiOSアプリにファイルを追加するAppleScript


2

AppleScriptを記述して、音楽およびビデオファイルをiTunesライブラリに追加できることは知っています。AppleScriptを記述して、ファイル共有を使用するiOSアプリにファイルを追加することもできますか?

たとえば、Comic ZealというiPadアプリがあり、通常はファイルをiTunesにドラッグしてファイルを追加します。コマンドラインからComic Zealにファイルを追加するスクリプトを作成したいと思います。

回答:


1

iTunesのAppleScript辞書で見ることができる限り、iOSアプリケーションに関連するスクリプトのサポートはありません。ごめんなさい。

考えられる回避策:

アプリとMacがiCloudをサポートしている場合は、両方で設定し、Macの「〜/ Library / Mobile Documents /」内を確認します。

iCloudを有効にしている各アプリに対応するフォルダーがあります。追加したいファイルがどこに行く必要があるかを正確に確認するために、サブフォルダー構造を調べなければならないかもしれませんが、それがわかったら、その場所をターゲットとするスクリプトを書くことができます。

スクリプトがその場所にファイルを追加すると、iCloudを介して同期されます。私はこのトリックを常に使用して、ファイルをGoodReaderアプリに取り込みます。

iOSアプリはバックグラウンドで常にiCloudと同期するとは限らないことに注意してください。GoodReaderの場合、変更を更新するためにそれを開く必要があります。


0

この投稿は古いものですが、いくつか追加します。AppleScriptを使用してデバイスに物事を送信することはできますが、デバイスをジェイルブレイクする必要があります(別名ルート化)

仕組みは次のとおりです。Cydiaを実行し、OpenSSHをインストールします。Macで、次のコマンドのいずれかを実行して、rsaまたはdsa sshキーを生成します。(rsaの方が新しいので使用しました)

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

フォルダー/ User / [ yourusername ] /. ssh(別名〜/ .sshまたは$ HOME / .ssh)にファイルを作成します。id_rsa.pubまたはid_dsa.pubをiPadのどこか、おそらくルートから外します。

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

次に、ipadにログインします(大文字と小文字を区別します)すべての苦情を無視して、yesと答え、パスワードにAlpineを入力します(パスワードを変更していない場合(ipadのルートプロンプトからpasswdコマンドで変更します):

ssh root@nameofipad

次に、この公開sshキーに保存されている情報を取得して、iPad上のファイルに書き込みます。まず、iPadでフォルダーを作成してから、情報を書き込む必要があります。

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

これで、authorized_keysファイルにMacのキーが含まれます。最後の重要な手順の1つは、authorized_keysファイルに正しいアクセス許可を設定することです。

chmod 666 ~/.ssh/authorized_keys

AppleScript

AppleScript経由でデバイスにファイルを送信できるようになりました。たとえば、iOSアプリiAnnotate PDFを使用してPDFファイルを編集することがよくあります。iPadでiFileを使用してアプリのフォルダーを特定し、次のAppleScriptを実行してファイルをドキュメントフォルダーに送信しました。

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 & " root@JokosiPad.local:/User/Applications/01F8F1E6-BA09-412B-8069-355E7717F409/Documents"
                do shell script my_script
            end if
        end tell
    end if
end tell

このスクリプトは、私がSkim(PDFリーダー)で読み込んでいるファイルをすべて取り、iPadにプッシュします。iPad(およびiPhone)では、iAnnotateを起動してiTunes共有フォルダーに移動し、ファイルを表示できます。それは本当にクールで、Appleの愚かなiTunesだけのがらくたを避けます。

明白なことを説明し、それからそれほど明白ではない:

明らか

  1. スクリプトを変数my_scriptに設定します
  2. myscriptを実行する

明確ではない

scpにホストファイル情報を/ dev / nullに書き込むように指示します。これは基本的にブラックホールのような専用デバイスです。あなたがそこに書くものはすべてなくなっています。scpを幸せにし、何かを書き込むだけです。もう1つのオプション-o StrictHostKeyChecking = noは、「接続してもよろしいですか」で接続を確認しないようにします。これにより、AppleScriptがiPadに妨害されることなくアクセスできます。

iPadホスト名(私の場合はJokosiPad)は、設定アプリに移動して[全般]をクリックすると簡単に見つけることができます。「名前」レコードには、IPアドレス(変更可能)を記憶する代わりに、JokosiPad.localのように使用するホスト名が含まれています。

これが誰かの助けになることを願っています!

弊社のサイトを使用することにより、あなたは弊社のクッキーポリシーおよびプライバシーポリシーを読み、理解したものとみなされます。
Licensed under cc by-sa 3.0 with attribution required.