Apple Watchだけでなく、iPhoneでもコンプリケーションの表示が可能に
コンプリケーションは株価や天気予報などのタイムリーな情報をインストール済みのアプリから得て表示する機能です。図5に示すようにユーザはApple Watchの文字盤上にコンプリケーションを自由に配置することができ、この機能を利用して素早く有用な情報にアクセスすることができます。
また、コンプリケーションをタップすると対応するアプリに遷移し、詳細な情報を取得したり、アプリを操作したりすることが可能になります。なお、コンプリケーションは本来Apple Watchのみにあった機能です。
今回のアップデートによって、watchOSにおけるコンプリケーションと同じ体験をiPhoneのロック画面からできるようになりました。図6を見るとiPhoneのロック画面にwatchOSのコンプリケーションと同じようなUIが表示されていることがわかると思います。新しいWidgetKitを利用すると、iOSとwatchOSで動作するコンプリケーションを構築できます。
また、コンプリケーションはWidgetKitを利用して開発することができるため、既存のWidget実装とのコードの共有も容易になっています。もし既にWidgetを用意しているアプリなら、0からコンプリケーションのプロジェクトを作る必要はありません。
Widgetの実装では、そのサイズや形を表すWidgetFamilyを基にして、最適な表示への切り替えが可能です。今回のアップデートによってWidgetFamilyにコンプリケーション用の設定が追加されました。この設定を利用して、Widgetのコードを拡張するような形でコンプリケーションを追加できます(図7)。
また、通知と同様にコンプリケーションもロック解除前の状態では図8のように表示を隠すように設定できます。設定に従って表示を隠す場所を指定するのは開発者の責任となるため、コンプリケーションを作る際はプライベートな情報は隠せるような実装に気をつけたいところです。
