レクチャー macOSのシンソウ

Handoffが純正アプリ以外に広がらないのはなぜ?

文●千種菊理

OSの深層部分、知れば知るほど奥深い、macOSの仕組みを解き明かす。

ハンドオフで作業を継続

ハンドオフ(Handoff)は、対応のiOSアプリおよびmacOSソフト(以下、まとめてアプリケーションと記載)で行っている作業をmacOSからiOS、iOSからmacOSとデバイスをまたいで続けることができる機能です。その設定は簡単で、MacとiOSデバイスを同じアップルIDでアイクラウドにサインインしておき、それぞれの設定でブルートゥースをオンにしてからハンドオフを有効にしておくだけ、です。

ハンドオフは可能な場合、iPhoneではマルチタスク画面にハンドオフバナーが表示され、iPadやmacOSの場合はドックの左隅にハンドオフアイコンが表示されます。これらをクリック/タップすることで作業が瞬時に引き継げます。

これにより、たとえば通勤中にiPhoneで書き始めたメールを、職場に付き次第Macで残りを仕上げるとか、Macで見ていたサファリのWEBページをiPadで開き外に持ち出して読むことなどができます。

ハンドオフが登場する前からアイクラウドを通じてサファリの履歴や連絡先データを同期することはできました。しかし、ハンドオフは編集の途中などさらに細かい状態を共有できるうえ、SDKが公開されているのでサードパーティのアプリ/ソフトでも対応が可能です。たとえば、作図ソフトとして評判の高いオムニグループの「オムニグラフ(OmniGraffle)」では、macOS版とiOS版の間で描きかけのグラフィックスをハンドオフできます。

 

ブルートゥースで状況を発信

ハンドオフの仕掛けはブルートゥースにあります。MacやiOSデバイスでユーザが使用中のアプリケーションは、「NSUserActivities」というオブジェクトを通じてOS側にアプリケーションの作業状態を送付します。OSはその作業の状態をブルートゥースを通じてデバイスの周囲のデバイスに発信しています。同じアカウントでサインインしているほかのアップルデバイスがこれを受け取ると、アプリケーションスイッチャやドックを通じて、ハンドオフできる作業があることをユーザに通知。そしてユーザがアイコンやバナーを選ぶと、該当するアプリが起動して作業を引き継ぐという仕組みです。

アプリケーションによっては引き継ぐべき作業が何種類かある場合もあります。たとえば、メールの場合、「今読んでいるメールの続きを別のデバイスで読みたい」と「今書いているメールの続きを別のデバイスで書きたい」という2つのケースがあります。

このため、NSUserActivitiesでは「どの作業を引き継ぎたい」かを定義、選択することができます。メールでは、「com.apple.mail.message」と「com.apple.mail.compose」の2つの作業を定義しています。メッセージを表示して読んでいるときには「com.apple.mail.message」をNSUserActivitiesを通じて伝えることで、「見ているメールを引き継ぎたい」と通知します。「com.apple.mail.compose」の場合は編集しているメッセージをほかのデバイスで引き継げるようにします。

また、NSUserActivitiesでは、書類のタイトルやURLのような小容量のテキストをハンドオフするデバイス同士で共有することができます。しかし、あまり大容量の情報はやりとりできないので、別の手段でやりとりします。たとえば、書きかけのメールをハンドオフする場合は、編集中のメールはいったん「下書き」に保存されます。ハンドオフされた側ではメールを起動すると同時に、「下書き」から該当するメールを読み出し、編集状態を復元します。




続きを読むためにはログインが必要です。
月額720円ですべてのコンテンツの閲覧が可能になります。
下のボタンより、お申込手続きを行ってください。

  • ログイン
  • 会員登録

同カテゴリ記事一覧