以前のエントリで「MEDIAS LTE N-04D 使ってみました。」ってのを書いているのですが、この中で、スケジュールの連携ができない。と書きました。で、色々試行錯誤の結果なんとかできるようになったので今回はそれをまとめてみたいと思います。
「Mac と Android のスケジュールの連携?そんなん Google カレンダー使えば一発じゃん。」
とか言う人がいるかと思いますが、僕の場合、google に情報預けたくないんです。Apple の iCloud にでさえスケジュールはアップしてないんですから。大事な個人情報を広告収入のために利用されたくないっ!!
ってんで、そーなると敷居は一気に高くなるのであります;-)。
では、Mac の iCal アプリ上で管理しているスケジュール・カレンダーの情報について順に見ていきましょう。
1). スケジュールの管理は Mac の iCal を利用しています。
2). iCal で管理したデータは iTunes により iPhone4 に一ヶ月分同期されます。
3). iPhone4 (それはつまり iOS デバイスってことで iPhone4s や iPhone3Gs とかも含まれます) 上ではスケジュールの閲覧と新規の登録・編集・削除などが行えます。
これを google カレンダーを利用せずに Android でも対応しようとするとほぼ無理。考えられる手段を色々試行錯誤したのですが、ボトルネックは以下の通り。
o. iCal からカレンダーを 書き出すと ics 形式になるのでそれを Android に持って行ってインポート。
o. そのカレンダー全ての情報が書き出されてしまう。必要なのは近々の30日分で良いのに・・。
o. ics 形式やら vcs 形式やら文字・改行コードやらの操作が大変・・。
で、やりたいこととしては
1). 近々の 30 日分のデータだけを Android に持って行けると嬉しいなぁ。
2). 更新は Mac および iPhone4 でできるので Android 側では参照のみでいーなー。MySQL のスレーブサーバみたいなもんだ;-)。
3). スクリプトなどを用意したりファイルを編集せずに比較的容易に Android にカレンダー情報を転送できれば嬉しいなぁ。
と、まぁ、こんな感じがベストなので、それでできる手段はないか、 MEDIAS LET N-04D を購入してから約二ヶ月の間ずっと考えていたんですけどもね。
で、その方法がなんとか見つかりました。Android へのカレンダデータの移行も比較的容易にできます。では見ていくことにしましょう。
1. Mac と iPhone4 は iTunes で sync。
まぁ、これは当たり前ですね。 Mac 上の iCal でスケジュールを管理している人であれば、その情報は iPhone4 に入れて持ち歩きたい。で、iPhone4 で更新した情報は 次回の sync 時に iCal に反映されます。すばらしい連携;-)。
2. iPhone アプリのインストール
僕は今まで iPhone4 でスケジュールを見るときは標準アプリで見ていたのですが、探してみると色々あるんですねぇ。で、今回新たにダウンロードしたスケジュールアプリは PocketLife Calendar というアプリ。
基本的にはカレンダーの標準アプリからデータを持ってきてそれを表示する。って感じです。が、このアプリのすごいところはそのカレンダーデータを、期間を指定して ics を出力してくれ、なおかつその ics ファイルがメールで送信できる点です。
キャプチャで見てみると、PocketLife Calendar を起動するとカレンダーアプリから情報を取り込んで表示します。そのあと[設定]ボタンを押します。
おぉ。「カレンダーを共有/プリント」のメニューがありますね。それをタップします。すると、カレンダーの選択と共有もしくはプリントするための期間の選択の画面が表示されますっ!!
この機能が欲しかったんですよー。 Mac の iCal が出力した ics ファイルをエディタで編集して任意の期間を抽出するための作業を行う。なんてことはちょっとあり得ない。自分でやっていても長続きしないと思うし。このアプリはそれを GUI でやってくれます。まぁ、そもそも iTunes から iPhone4 に転送する段階である程度期間は絞れているんですけどもね。 iPhone4 に転送したデータ全てを期間として設定すると問題無いですね。と、いうか、この作業をどうするかがある意味最大のボトルネックだったんですけども解決です。すばらしー;-)。
で、期間が決まったら後は抽出された ics ファイルをメールで送るだけ。以上で iPhone4 側、もしくは Mac 側の作業は完了です。
3. Android アプリのインストール
iPhone4 からメールで送信された ics ファイルは Android のメールアプリで閲覧します(僕は IMAP を利用している)。で、メールに添付の ics ファイルを /mnt/sdcard/ 辺りに保存します。
おぉ。これで任意の期間に絞られたカレンダーデータが Android 端末に取り込まれたことになりますね。いーぞいーぞぉ;-)。
さてさて。ここからは docomo の Android の機能なのかもしれませんが、 MEDIAS LTE N-04D には多分 google 謹製の カレンダーアプリ と、多分 docomo 謹製の スケジュールアプリ がありますが今回利用するのはスケジュールアプリのほうです。
Android 内部に保存された ics ファイルをマージします。docomo 謹製の スケジュールアプリ は .vcs ファイルに対応はしているのですが .ics ファイルには対応していません。すると Google play でその機能を持っているアプリを探す必要があります。で、色々ダウンロードして動作確認も含めてテストしたのですが、ありましたっ!! iCal Import/Export というアプリケーションです。
この iCal Import/Export を起動すると味気ないメニューが出て来ます(失礼っ!!;-)が 「Search for iCal files」をタップします。すると、届いたメールから保存した添付ファイルを見つけてくるんですなぁ。
後はメニューに従って [OK] をタップしていけばスケジュールアプリにスケジュールデータをインポートしてくれます。
僕はスケジュールデータを転送することに一生懸命になっていて、スケジュールアプリの使い方はいまいちまた解っていませんが、スケジュールアプリには「全件削除」とかすばらしいメニューがあるのでインポート前にいったん全部削除してから新たにインポートするとかできます。
まぁ、その前に iCal Import/Export でインポート時に「重複したのはどうする?」と、英語で確認されるのでそれに任せる。と、いうことも可能ですけどね。
さてさて。Mac で管理しているカレンダー、iCal と iPhone4 は双方向レプリケーション。 iPhone4 とAndroid はバッチ的な一方向レプリケーションによって、これでデータの共有ができるようになりました。この手順でもまだうっとうしいとは思うところもあるのですが、ここれが多分、限界かなぁ。と思えなくもないです。が、自分の Mac で管理しているカレンダーデータが google を経由せずに Android に転送できるようになったことは大きいと思います。
この組み合わせで、皆さんも是非試してみてください;-)。
4月 282012