2013年8月31日土曜日

カメラで撮った写真をPQI AircardでAndroidに一括転送する(オプションで自動転送も



Nexus 7(2013)を購入しました。
これを機に、カメラで撮影した写真をN7で確認できるようにしたいです。どうせならボタン1つで一括転送。オプションで自動転送ができると理想です。Eye-FiのClass10は持っていないので、手持ちのPQI Aircardで実現できるように環境を整えてみました。

追記:めいめいのところにガッツリ書いてあったのに今気がついた・・・


環境を構築する


以前記事に書いたとおり、PQI Aircardは公式のAndroidアプリがかなり微妙なので、私はFTPを利用してPQI Aircardから画像を取得できるようにしています。
現在は以下の手順を使用しています。

  1. AndFTPを立ち上げる
  2. Taskerにより、Connect1ssidが起動しPQI AircardにWi-Fi接続する
  3. AndFTPを操作し、PQI AircardにFTP接続する
  4. AndFTPを操作し、AndroidにDLしたい画像ファイルを選択しDLする

考える

1つ1つ自分の気に入った画像だけを転送するのなら上記のフローでも問題ありませんが、N7ではすべての画像を一括で飛ばしたいです。
HTTPのPQI AircardのAPIを調べて実装するより、今まで通りFTPを利用したほうが簡単です。
FTPで接続し、数分に1回新しいファイルが有るか確認し、新しいファイルをAndroidにダウンロードする・・・うん、これなら簡単に実装できそうです。いや、これ普通にあるよね?

FolderSync

FolderSyncといアプリがこの用途にピッタリです。

FolderSync
Tacit Dynamics
価格:¥275  平均評価:4.6



FolderSyncはクラウドストレージや、サーバのディレクトリと、Android端末内のディレクトリを同期することができるアプリです。FTPに対応しているため今回の用途にマッチしています。
なお、有料版では同期時のフィルター機能と、Taskerプラグイン機能を使用することができます。私はRAW+JPGで写真を撮影しており、同期時にRAWファイルをフィルターする必要があるので有料版を購入しました。

FolderSyncの設定

まずPQI AircardにFTPで接続するためのアカウントを作成します。
アカウント→アカウント追加→FTPでアカウントを追加し、PQI Aircardに接続できるように詳細情報を埋めていきます。

FTPのアカウントを作成

この設定でOK

この辺りの設定はPQI Aircardを使用する限りは同じでしょう。
次に、ディレクトリ同期用のFolderpairsの設定を行います。
Folderpairs→FOLDERPAIR追加でFolderpairsのセットアップ画面を開き、Folderpairsをセットアップします。
僕は以下のように設定しました。





特にポイントになるようなところはありません。自分の環境、好みに合わせて設定すればいいと思います。画像に入りきらなかったのですが、『マルチスレッド同期を使用』にチェックをつけています。チェックをつけることでバックグラウンドで同期を行ってくれるはずです。
上の画像では設定していませんが、『スケジュールされた同期を使用』で『5分ごと』に設定すれば、PQI AircardにWi-Fiが接続されていれば自動同期できると思います。
また、Folderpairsはウィジェットとしてホーム画面に置くことができます。ウィジェットをトリガーにして同期を行うことも可能です。

Connect1ssidでワンタッチWi-Fi接続

FolderSyncで一括転送と自動転送をできるようになりましたが、『Wi-Fi接続していれば』という条件が残ってしまいました。N7はWi-Fiオンリーなので、インターネットに接続する回線と、PQI Aircardを頻繁に切り替えることになります。設定でWi-Fiを開くのはめんどくさいので、ボタンひとつで切り替えたいです。Connect1ssidを使えば実現可能です。

SSID指定の無線LAN(wifi)接続ショートカット作成
watarusoft
価格:¥100  平均評価:4.5



アプリを起動すると今まで接続したことのあるWi−Fi一覧が表示されます。


選択して名前をつけて『ショートカットの作成』ボタンを押せば、ウィジェットが作成されます。そのウィジェットをタップすれば指定したWi-Fiに簡単に接続できます。
これで一括転送を行いたい場合は以下の2アクションで実行できます。

  1. Connect1ssidのウィジェットをタップ
  2. PQI AircardでWi-Fi接続後にFolderSyncのウィジェットをタップ

自動転送を行いたい場合はその後FolderSyncでスケジュール設定すればOKです。

Taskerで連携する

どうせならWi-FI接続も含めて1回のアクションで一括転送できるようにしたいです。そこでTaskerを使って今までの設定を連携します。

Tasker
Crafty Apps EU
価格:¥399  平均評価:4.6



Taskerは設定した条件に合った時、設定したアクションを実行するアプリです。
『PQI AircardにWi-Fi接続した』時、『FolderSyncの特定のFolderpairs』を実行するという設定を行います。
まず、タスクを作成します。アプリを起動し、『TASK』のタブに移動し、センターの+ボタンを押します。するとTASKの名前を求められるので適当に名前をつけます。

僕はSync PQIAircardという名前にしました
次にAction Categoryの選択を求められるのでPluginを選択します。


その後、FolderSyncを選択するとFolderSyncのアプリが立ち上がり、どのFolderpairを実行するのか選択する画面が出るので、先ほど作成したFolderpairを選択して画面右上の保存するボタンをタップします。

保存するがわからなくて一瞬迷う
これでTASKが作成されました。次はPROFILESを作成します。
『PROFILES』タブを選択し、+ボタン→State→Net→Wifi Connectedの順にタップしていきます。




Wi-Fiの情報を入力する画面が出ますので、自分のPQI AircardのSSIDを入力して、左上のボタンを押してください。


この条件の時に行うTASKを選択する画面が出ますので、先ほど作成した『Sync PQIAircard』を選択します。



これでPROFILEが完成しました。



Connect1ssidのウィジェットをタップしてPQI Aircardに接続すれば、後はTaskerがFolderSyncを起動して同期を行ってくれます。

Taskerで自動同期もやっちゃう

更に欲張って、自動転送もTasker起動で行いましょう。Taskerは指定した時間おきにTASKを設定するPROFILEを作成することができます。
PROFILEタブの+ボタン→TIMEでTime Edit画面を開き、『From』と『To』のチェックを外してRepeatのチェックを付け、Repeat時間を入力します。


どうやら最短で2分間隔でしか設定できないようですが、FolderSyncは5分間隔が一番短かったので、それよりは細かい頻度で繰り返せます。
これで自動同期の設定も完了しました。自動同期は僕にとって常に使う機能ではないので、PROFILEごとにスイッチが付いていてすぐ切り替えられるのは嬉しいですね。


まとめ

最初は自分でアプリを作る気満々だったんですが、Taskerを軸に既存のアプリで自動転送まで行えるようになりました。
Connect1ssidもTaskerのTaskのPluginに対応しているので、これで別の組み合わせを考えてみるのも有りですね。