アプリを Wear OS 4 での動作変更に対応させる

Wear OS 4 は Android 13(API レベル 33)をベースとしており、Wear OS 3 がベースとする Android 11(API レベル 30)との間にバージョンの開きがあります。そのため、Wear OS アプリを Wear OS 4 に対応させる場合、Android 12Android 13 のすべてのアプリに影響するシステム動作の変更に対応する必要があります。

Android 13(API レベル 33)をターゲットとすることで、このバージョンの Wear OS に対するアプリの互換性をさらに高められます。

権限に対する変更

権限に関連する次の変更は、Wear OS 4 を搭載したデバイスの Wear OS アプリに影響する可能性があります。

通知権限

[許可] オプションがダイアログの最初のボタン
図 1. Wear OS アプリに対して通知の送信を許可するようユーザーに求めるシステム権限ダイアログ。ユーザーは [許可] または [許可しない] を選択できます。

ほとんどの場合、ユーザーはアプリに対して通知に関する実行時の権限を付与する必要があります。この通知には、アプリから送信される進行中のアクティビティの通知も含まれます。

注: 通知権限は、ブリッジ通知や、メディア セッション関連などの除外されている特定のユースケースには適用されません。

Wear OS 4 を搭載したデバイスにユーザーがアプリをインストールすると、アプリの通知はデフォルトでオフになります。ローカル通知を送信する前、または進行中のアクティビティを起動する前に、areNotificationsEnabled() を呼び出して、アプリに対して通知の送信が許可されているかどうかを確認してください。このメソッドが true を返した場合、アプリは通知を表示できます。アプリに適切な権限がない場合、これらの通知は実行時例外をスローすることなく失敗します。

アプリで POST_NOTIFICATIONS 権限をリクエストすると、図 1 のようなシステム権限ダイアログが表示されます。

バックグラウンド ボディセンサー権限

Wear OS 4 を搭載したデバイスでは、ユーザーはアプリに対して、心拍数などの一般的なボディセンサーからバックグラウンドで情報を取得する権限を付与する必要があります。

詳しくは、ボディセンサー データへのバックグラウンドでのアクセスをリクエストするためのガイドをご覧ください。

おおよその位置情報の利用許可

Wear OS 4 を搭載したデバイスでは、ユーザーは、アプリがおおよその位置情報のみを取得するようリクエストできます。これは、アプリが実行時の ACCESS_FINE_LOCATION 権限をリクエストした場合も同様です。

利用を許可されたのがおおよその位置情報だけでも、アプリの主なユースケース(ランニング ルートの表示など)に対応できることを確認します。特に、Wear OS でヘルスサービスを使用する場合は、位置の誤差を考慮してください。

詳しくは、ユーザーがおおよその位置情報の利用権限のみを許可できる方法をご覧ください。

アプリ コンポーネントとナビゲーションに対する変更

アプリ コンポーネントとナビゲーションに関連する次の変更は、Wear OS 4 を搭載したデバイスの Wear OS アプリに影響する可能性があります。

インテント フィルタで一致しないインテントをブロックする

アプリのインテントの宛先が、Android 13 以降をターゲットとする別のアプリのエクスポート コンポーネントの場合、受信側アプリの <intent-filter> 要素と一致しなければそのインテントは配信されません。

詳しくは、インテントと他のアプリのインテント フィルタを一致させる方法をご覧ください。

ルート ランチャー アクティビティの動作

ランチャー アクティビティで ACTION_MAINCATEGORY_LAUNCHER の両方を含むインテント フィルタを宣言している場合、それはタスクのルートにあります。

ユーザーがこの種のランチャー アクティビティから以前の画面に移動した場合、ランチャー アクティビティは終了せず、バックグラウンドに移ります。

この変更について詳しくは、ルート ランチャー アクティビティとアクティビティのライフサイクルをご覧ください。

Android アプリリンクの検証方法がいくつか変更されます。具体的には、特定のドメインの URL がアプリ内のコンテンツを直接開くように明示した場合、適用されるインテント フィルタ構文がより厳密になります。この変更によりアプリのリンク処理の信頼性が向上し、アプリ デベロッパーやエンドユーザーによる制御の幅が広がります。

宣言の信頼性をテストするには、ドメインの検証を手動で呼び出します

システム アラート ウィンドウの UI の削除

Wear OS 4 では、SYSTEM_ALERT_WINDOW 権限を付与するためのシステム UI が削除されます。この UI は、Wear OS 3 以前を搭載した一部のデバイスで利用できます。

ACTION_MANAGE_OVERLAY_PERMISSION を使用してユーザーを設定ページに誘導し、他のアプリの上にアプリを表示できるようにする場合は、アプリのロジックを更新してください。たとえば、重要なメッセージの表示にシステム アラート ウィンドウを使用している場合は、代わりに通知を使用してください。

電源とデータの管理に対する変更

電源とデータの管理に関連する次の変更は、Wear OS 4 を搭載したデバイスの Wear OS アプリに影響する可能性があります。

アプリ スタンバイ バケットの制限

アプリが長時間使用されていない場合、または大量のブロードキャストとバインディングが行われている場合、アプリは「制限付き」アプリ スタンバイ バケットに送られます。

アプリの休止状態

ユーザーが数か月間アプリを操作しなかった場合、そのアプリは休止状態になります。

バックアップと復元

Wear OS 4 以降では、クラウド バックアップに対応している特定の Wear OS デバイスの場合、ユーザーは自分のデータをそのデバイスから転送するためにクラウドにバックアップすることができます。また、クラウドから復元して新しい Wear OS デバイスに転送することも可能です。