その昔、Google Syncというサービスがありました。終了したことになっていますが、細々と生き残っていたのではないかという挙動を示していましたが、本格的に終了したのではないかと思える事象が発生しました。
もくじ
iPhoneのカレンダーの情報が消失
2023年6月19日のことですが、iPhoneの純正カレンダーアプリのデータの大半が消失していることに気がつきました。大半と言ったのは、誰かの誕生日などの繰り返し発生するデータのみ残っていたためです。自分でiPhoneから登録したデータは消えていました。
もう何年もこのカレンダーで予定を運用していて、自分の行動履歴を振り返るのにも使える日記的な役割もあり、非常にショックでした。
その前日に、iPhoneとMacをUSBケーブルで接続して、Finderの機能であるデータの同期をしたのでそれが原因か?と疑いました。
確認してみると同期は写真のみが対象であり、カレンダーや連絡先に相当する「情報」のタブには「ExchangeとGoogleに同期しています」みたいな表示がされていました。
なので、この同期作業がきっかけになったとは考えにくいです。
Googleカレンダーと同期していたのを思い出す
ほとんど忘れていたのですが、ここでiPhoneのカレンダーはGoogleカレンダーと同期したことを思い出しました。しかし、随分昔のことです。
どうやって設定したか、思い出すために色々調べましたが、おそらく以下の方法です。
GoogleカレンダーとiPhoneの同期(プッシュ)方法 GoogleカレンダーとiPhoneの同期(プッシュ)方法(PDF)
手順内のiPhoneのUIを見て頂ければわかりますが、非常に古いものです。私の記憶からもほとんど消えていたからもわかる通り、おそらく設定したのは10年以上前かと思います。iPhoneって機種変更しても、データを引き継いで使っていくので、この設定が今も残っているということです。
あと、この手順書に問題があるわけではないのですが、非常にわかりづらい手順です。
というのは、「アカウントを追加」の部分で「Microsoft Exchange」を選ぶためです。設定した当時の自分もわかっていなかったのですが、これだとMicrosoft Exchangeというサービスを使ってGoogleカレンダーと同期しているように感じます。
しかし、実際はMicrosoft Exchangeというサービスは介していません。ここで選択するのは、Exchange ActiveSync(EAS)というプロトコルを採用しているサービスです。EASというのは、確かにMicrosoft社が確立しました。しかし、あくまでもプロトコルです。プロトコルというのは通信するための決まり事(ルール)でしかありません。なので、Microsoft社のサーバーを経由するということはありません。各社がEASを採用したサービスを運営できるということです。
EASを採用した各社のサービスとiPhoneを同期するために、「アカウントを追加」で「Microsoft Exchange」を選ばなければならないというのは非常に気持ち悪いです。もちろん使いたいサービスがMicrosoft Exchangeであれば全然気持ち悪くはないです。でも、GoogleなんかもEASに対応しているサービスを運営しています。
ちなみに、その昔、GoogleはEASに対応したGoogle Syncというサービスやっていました。
Google Syncを通じて、GoogleカレンダーとiPhoneのカレンダーを同期できるということです。
しかし、以下にあるように2013年に終了したとあります。
とはいえ、
すでに Google Sync を使っている場合はどうすればよいでしょうか?
対応は不要です。既存のユーザーは、現在の端末で Google Sync を引き続き利用できます。
とあります。新規に使用開始はできないが、既存のユーザーは使い続けられるという中途半端な印象です。
これ以降どうなったかの情報を探しましたが、何も見つかりませんでした。
ただ、私の使い方としては、もはやGoogleカレンダーと同期していることは忘れていました。iPhoneで予定を登録し、iPheneで予定を確認するのみです。
あと、Googleカレンダーをたまに見ることはありましがた、iPhoneの情報は入っていないようでした。これは不思議です。
ちなみに、GoogleカレンダーとiPhoneのカレンダーを同期する手順は現在はずっとシンプルになっています。当時は上記の方法しかなかったということです。
バックアップから戻すと一瞬は戻る
Appleのサポートに電話して相談すると、Exchangeというプロトコルのことを知っている人は皆無でした。以下のアカウントの画面で、「ECHANGE 」というラベルが表示されます。
これをサポートの方に画面共有で見てもらうのですが、Exchangeというと「Microsoft Exchange」というサービスを指すと認識している人しかいませんでした。まぁ、昔の手順なので仕方ないとは思いますが。
サポートの方によると、とりあえずバックアップからリストアするしかない、という話になりました。一週間くらい前にMacにバックアップをとっていたので、それを戻しました。2時間くらいはかかったと思います。
そうすると、カレンダーの情報が戻りました!
しかししばらくすると消えてしまいました。
もう一度サポートの方に連絡すると、わからないけど、バックアップを戻してから、機内モードにして同期されないようにし、予定が消えないようにして、その間に予定のデータを退避するしかない、かもしれないとのこと。
しかし、退避する方法はわからないようでした。iPhoneのカレンダーにはエクスポート機能はありません。
また、カレンダーの予定の編集画面に、カレンダーの種類が選べるのですが、そこがGoogleのものになっていれば、Googleとの同期の問題で消失しているのでは?というのがサポートの方の説でした。なので、Googleに問い合わせてくれ、というのが言いたいことのようでした。ちなみに、Exchangeプロトコルについて説明しても理解してくれなかったサポートの人もいたのですが、その人は、Microsoftに問い合わせてみてくれ、とさえ言ってきました。
Googleにサポートなんてないのは知っていたし、直感的にiOS側の不具合な気がしたので、確認するため、もう一度バックアップから戻しました。戻すのに2時間位かかるので気軽にはできません。
すると、予定の一つの編集画面を見てみると、「日本の祝日」となっており、これはGoogleのものではなく、iPhone上にあるものです。なので、Googleの責任にはできないと思われます。
再度サポートに電話してみると、別の方に対応していただきました。(一度電話を切ると、同じ人に再度問い合わせることができないのが不便です)
この点を聞いてみると、「『日本の祝日』という、通常の予定を分類しない種類に分類されているのは何かおかしい。」ということでしたが、「確かにiPhone側の予定なので、iPhone側の原因の可能性があります。まず、iOSを最新化していただき、その後、エンジニアに連携する形になります」と言われました。
iOSのバージョンは少し古かったのは確かです。しかし、OSを最新化して直ったとしても、余計に原因が有耶無耶になって気持ち悪いですし、OSの最新化は色々と他のアプリや機能にも弊害があるので気軽にしたくありません。なので、この提案は保留することにしました。
認証でエラーになっている模様
先ほどのアカウントの設定の画面で、Googleのパスワードが空欄のように見えます。
一度とりあえずパスワードを入力しました。すると、以下の画面が表示されました。
パスワードが正しくありません
Exchange アカウント"google"のパスワードを入カ
この画面は最近表示されているのを見ていません。
カレンダーを起動する時もこのエラーが表示されます。
サポートの方曰く、「認証で失敗したら、データは消失されると思う」とのことでした。なので、バックアップから戻して、最初の認証が自動的に行われた時に失敗して、データが消えるのでは?という説が出てきます。認証に失敗するということはGoogle Syncが本格的に終了したことが疑われます。
しかし、そもそも消える予定は「日本の祝日」というローカルの種類に分類されているので、それもおかしいのですが。
もしかしたら、バックアップから戻して、Googleと同期されるまでは、一時的にローカルの種類に分類されるようになっているのか?とも思えます。なので、「日本の祝日」という本来、そぐわない種類に分類されてしまっていたのかもしれません。
この辺り、想像ですが。
ただ、不思議なのは、数日経ってみると、カレンダーを起動しても、上記のエラーが表示されないこともあるんですよね。ということは認証が通っている、ということですよね。それなのに、予定のデータが戻ってこない。つまり、Google側にもデータは存在しない、ということとか。まぁ、元々Googleカレンダーを見ても表示されないなーと思ってましたが。
もう全然わからないです。元々見せかけの同期であって、認証だけして同期なんてしてなかったけど、認証に失敗したらデータを削除する、というiPhone側のロジックだけ生きているということなのかな。
サードパーティのツールで無料でデータを表示する
サポートの方の1人が、「サードパーティのツールで予定のデータを抽出できるかもしれない」とおっしゃっていたのを思い出しました。
サードパーティのツールについて調べてみました。無料をうたっているように見えても、基本は有料です。
以下のiMazingというのをMacにインストールしてみました。Macなどのパソコンにインストールし、iPhoneと接続してiPhone内のデータを取り出すのが基本的な使い方です。
iMazing : iPhoneおよびiPadカレンダーを書き出し
多分どのツールも変わらないと思いますが、ホームページにカレンダーの書き出しでExcelやCSVでも書き出せるとあったので、使いやすそうだと思ったためです。よくわからないフォーマットでしか書き出せないと、困りそうだったので。
バックアップを戻して、機内モードにしてデータが消えないようにしてから、このツールでデータを取り出す、という手順を想定していました。
しかし、このツールをインストールしてから気がつきましたが、Macに取得しているiPhoneのバックアップ自体からデータを取り出せることがわかりました。なので、バックアップを戻す必要がありません。これは助かりました。iPhoneをMacに接続する必要もありません。
早速バックアップからカレンダーを表示してみました。すると以下のようにきちんと表示されました。
しかし、不思議なことに、半年くらいしか予定のデータは入っていませんでした。もしかしたら、半年前にも同じようにデータが消失する事象が起きていたのかもしれません。
もっと古いバックアップデータを除けば残っているかもしれませんが、もっと古いバックアップデータは実家にあるHDDにあるので、すぐには見られません。そのうち確認しに行こうと思います。
このiMazingというツールはこのように画面に表示するだけなら無課金でできます。しかし、データをエクスポートするためには課金する必要が有ります。でも、半年分しかデータがないので、もはやこの画面をスクショするとか、書き写すとかでもいいかな、と思いました。
なので、課金はしないことにしましたが、ツールを開発してくれた会社様には感謝です!
オープンソースのツールもある
サードパーティのツールを探している中で、iMazingなどと同じ目的のオープンソースのツールがあることがわかりました。
MaxiHuHe04 / iTunes-Backup-Explorer
オープンソースなので、無料で全機能が使えます。
試してみたのですが、私のMacでは動かすことができませんでした。起動時に以下のエラーが表示されました。
これが動かせれば、課金しないでiPhoneやバックアップから自由自在にデータが取り出せてとても便利そうです。時間ができた時に、動かすための調査をしてみたいです。
iCloudのカレンダーを使うことに
結局、iPhoneのローカルだけでカレンダーを管理するのは危険だとわかったので、何かしら対処策を考えなければと思いました。定期的にバックアップをとっておいても、今回のようにきちんと戻せない場合もあるので、やはりクラウドと同期すべきだと思いました。
前述したように、Googleカレンダーとの同期方法は現在はシンプルになっているとはいえ、会社をまたぐと、今回のような事象が起きた時に、「相手側の会社に聞いてくれ」と言って責任の押し付け合いになるのが目に見えています。なので、AppleのサービスであるiCloudのカレンダーと連携することにしました。
当然、iCloudのカレンダーと連携しておけば、iPhoneに何かあってもiCloud上のデータはなくなりません。ただ、万が一iCloud上のデータを消してしまった場合でも、定期的に取得されているアーカイブから以前のバージョンに戻すことができます。
iCloud からカレンダー、ブックマーク、連絡先を誤って削除してしまった場合
アーカイブまで消すのはかなり大変なので、安全だと言えます。
さいごに
今回学んだのは、会社をまたいだ連携には注意する必要があるということです。特にあまり確立していない、先進的な方法でそれを行うと、後々、サポートの人でさえよくわからなくて、誰も助けてくれない状況に陥ります。なるべくスタンダートな運用をこころがけたいです。
Appleのサポートの方は、多くの場合すぐに適切な回答をくれるのでとても感謝しています。しかし、ちょっと厄介な問題にぶつかると、すぐにバックアップからのリストアやOSのアップデートを提案してきます。リストアやアップデートってユーザーからしてみたら安易にできるものではありません。やると何かしら挙動がおかしくなる場合が多いからです。実際に、今回バックアップのリストアをしたので、以下で書いたようにモバイルSuicaが使えなくなる事象が発生しました。
また、私の経験上、Appleのサポートの方のこのような提案を何度も受け入れたことがありますが、当初の問題が解決したことはありません。
もちろん、OSが最新でないとサポートする気になりにくいAppleのサポートの方の気持ちもわかります。そして、最新のOSで使うのが理想だとは思います。でも、OSアップデート作業はこのようなトラブル時にやるのではなく、落ち着いてやるべき準備をしっかりしてから行うべきです。そうでないと余計にトラブルが広がる可能性があります。
邪推かもしれませんが、深く調べるのが面倒だから、とりあえずそのような提案をしているのではないか?と思ってしまうこともあります。
なので、サポートの方からそのような提案があった場合は、なるべく食い下がって違う観点から考えてもらうよう促した方がいいです。
「アップデートして他のアプリが動かなくなったらどうしてくれるんですか?以前そういうことがあったんです。」
「これまでサポートの方の指示でリストアしたことが何度もありますが、一度も解決したことないんですよね。」
この辺を言ってみてください。