Wear
androidx.wear.activity
androidx.wear.ambient
androidx.wear.input
androidx.wear.utils
androidx.wear.widget
androidx.wear.widget.drawer
(すべての Wear パッケージのリファレンス ドキュメントをご覧ください)
androidx.wear グループ内のすべてのアーティファクトのリストを以下に示します。
| アーティファクト | 安定版リリース | リリース候補版 | ベータ版リリース | アルファ版リリース |
|---|---|---|---|---|
| wear | 1.3.0 | - | - | 1.4.0-alpha02 |
| wear-input | 1.2.0 | - | - | - |
| wear-input-testing | 1.2.0 | - | - | - |
| wear-ongoing | 1.1.0 | - | - | - |
| wear-phone-interactions | 1.1.0 | - | - | - |
| wear-remote-interactions | 1.1.0 | - | - | 1.2.0-alpha01 |
依存関係の宣言
Wear への依存関係を追加するには、Google の Maven リポジトリをプロジェクトに追加する必要があります。詳しくは、Google の Maven リポジトリをご覧ください。
アプリまたはモジュールの build.gradle ファイルに、必要なアーティファクトの依存関係を追加します。
Groovy
dependencies { implementation "androidx.wear:wear:1.3.0" // Add support for wearable specific inputs implementation "androidx.wear:wear-input:1.2.0" implementation "androidx.wear:wear-input-testing:1.2.0" // Use to implement wear ongoing activities implementation "androidx.wear:wear-ongoing:1.1.0" // Use to implement support for interactions from the Wearables to Phones implementation "androidx.wear:wear-phone-interactions:1.1.0" // Use to implement support for interactions between the Wearables and Phones implementation "androidx.wear:wear-remote-interactions:1.1.0" }
Kotlin
dependencies { implementation("androidx.wear:wear:1.3.0") // Add support for wearable specific inputs implementation("androidx.wear:wear-input:1.2.0") implementation("androidx.wear:wear-input-testing:1.2.0") // Use to implement wear ongoing activities implementation("androidx.wear:wear-ongoing:1.1.0") // Use to implement support for interactions from the Wearables to Phones implementation("androidx.wear:wear-phone-interactions:1.1.0") // Use to implement support for interactions between the Wearables and Phones implementation("androidx.wear:wear-remote-interactions:1.1.0") }
依存関係について詳しくは、ビルド依存関係の追加をご覧ください。
フィードバック
お寄せいただいたフィードバックは Jetpack 改善の参考にさせていただきます。新しい問題が見つかった場合や、このライブラリを改善するアイデアをお持ちの場合は、お知らせください。新しい問題を報告していただく前に、このライブラリの既存の問題をご確認ください。スターボタンをクリックすると、既存の問題に投票できます。
詳細については、Issue Tracker のドキュメントをご覧ください。
Wear Core バージョン 1.0
バージョン 1.0.0-rc01
2025 年 10 月 8 日
androidx.wear:wear-core:1.0.0-rc01 がリリースされました。変更はありません。バージョン 1.0.0-rc01 にはこれらの commit が含まれています。
バージョン 1.0.0-beta02
2025 年 9 月 10 日
androidx.wear:wear-core:1.0.0-beta02 がリリースされました。バージョン 1.0.0-beta02 にはこれらの commit が含まれています。
バグの修正
- 新しい API を確認する際に、古いデバイスで
WearApiVersionHelperがスローされないようにします。
バージョン 1.0.0-beta01
2025 年 7 月 30 日
androidx.wear:wear-core:1.0.0-beta01 がリリースされました。前回のアルファ版からの重要な変更はありません。バージョン 1.0.0-beta01 にはこれらの commit が含まれています。
バージョン 1.0.0-alpha02
2025 年 7 月 16 日
androidx.wear:wear-core:1.0.0-alpha02 がリリースされました。バージョン 1.0.0-alpha02 にはこれらの commit が含まれています。
API の変更
- VIC/Baklava を含めるように
WearApiVersionHelperを更新(I4676d)
バグの修正
- このライブラリは、型使用である JSpecify nullness アノテーションを使用するようになりました。Kotlin デベロッパーは、次のコンパイラ引数を使用して、正しい使用法を適用する必要があります。
-Xjspecify-annotations=strict、-Xtype-enhancement-improvements-strict-mode(Icbfb9、b/326456246)
バージョン 1.0.0-alpha01
2024 年 5 月 29 日
androidx.wear:wear-core:1.0.0-alpha01 がリリースされました。バージョン 1.0.0-alpha01 にはこれらの commit が含まれています。
API の変更
- Wear でのランタイム API の互換性チェックを支援する新しいクラス
WearApiVersionhelperを追加しました。クライアントは、この静的ヘルパークラスと提供されたメソッド(#isApiVersionAtLeast(VERSION))を使用して互換性を確認できます。
Wear Tooling プレビュー版 1.0
バージョン 1.0.0
2023 年 11 月 29 日
androidx.wear:wear-tooling-preview:1.0.0 がリリースされました。バージョン 1.0.0 に含まれる commit については、こちらをご覧ください。
1.0.0 の機能
- UI プレビューに使用できる有効なウェアラブル デバイスのリストに
WearDevicesを追加しました。
バージョン 1.0.0-rc01
2023 年 11 月 15 日
androidx.wear:wear-tooling-preview:1.0.0-rc01 がリリースされました。変更はありません。バージョン 1.0.0-rc01 に含まれる commit については、こちらをご覧ください。
バージョン 1.0.0-beta01
2023 年 10 月 18 日
androidx.wear:wear-tooling-preview:1.0.0-beta01 がリリースされました。変更はありません。バージョン 1.0.0-beta01 に含まれる commit については、こちらをご覧ください。
バージョン 1.0.0-alpha01
2023 年 8 月 23 日
androidx.wear:wear-tooling-preview:1.0.0-alpha01 がリリースされました。バージョン 1.0.0-alpha01 に含まれるコミットについては、こちらをご覧ください。
API の変更
- UI プレビューに使用できる有効な Wear デバイスのリストに
WearDevicesを追加(Ib036e)
Wear バージョン 1.4
バージョン 1.4.0-alpha02
2025 年 7 月 16 日
androidx.wear:wear:1.4.0-alpha02 がリリースされました。バージョン 1.4.0-alpha02 には、これらの commit が含まれています。
バグの修正
- このライブラリは、型使用である JSpecify nullness アノテーションを使用するようになりました。Kotlin デベロッパーは、次のコンパイラ引数を使用して、正しい使用法を適用する必要があります。
-Xjspecify-annotations=strict、-Xtype-enhancement-improvements-strict-mode(If4b1a、b/326456246)
バージョン 1.4.0-alpha01
2023 年 11 月 15 日
androidx.wear:wear:1.4.0-alpha01 がリリースされました。バージョン 1.4.0-alpha01 に含まれる commit については、こちらをご覧ください。
バグの修正
- メッセージがない場合は、
ConfirmationOverlayアイコンを垂直方向に中央揃えにします。(I496d8)
Wear バージョン 1.3
バージョン 1.3.0
2023 年 8 月 9 日
androidx.wear:wear:1.3.0 がリリースされました。1.3.0-rc01 からの変更はありません。バージョン 1.3.0 に含まれる commit については、こちらをご覧ください。
1.2.0 以降の重要な変更
AmbientModeSupportを移行してLifecycleObserverを使用します。新しいライフサイクル対応クラスを優先してAmbientModeSupportを非推奨にします。ConfirmationOverlayのアイコンやレイアウト、フォント、フォント指標を新しくしましたFragmentContainerViewを使用する際のエラーを修正するため、2 つ目のViewではなく、背景のドローアブルを使用するようにSwipeDismissTransitionHelperを更新- Wear プラットフォームと Wear Compose の実装に合わせて、
SwipeDismissFrameLayoutアニメーションを更新しました。 SwipeDismissFrameLayoutのバグを修正し、上下のフリングでフラグメントを誤って閉じないようにしましたArcLayoutが、通常のレイアウト ウェイトと同じように機能する拡大ウェイトをサポートするようになりました。ArcLayoutでlayoutDirectionをサポート
バージョン 1.3.0-rc01
2023 年 6 月 21 日
androidx.wear:wear:1.3.0-rc01 がリリースされました。1.3.0-beta01 からの変更はありません。バージョン 1.3.0-rc01 に含まれる commit については、こちらをご覧ください。
バージョン 1.3.0-beta01
2023 年 6 月 7 日
androidx.wear:wear:1.3.0-beta01 がリリースされました。バージョン 1.3.0-beta01 に含まれる commit については、こちらをご覧ください。
API の変更
- フィードバックを受けて
AmbientLifecycleObserverを更新しました。AmbientLifecycleObserverInterfaceの名前がAmbientLifecycleObserverに変更され、AmbientLifecycleObserver(...)を呼び出すことでインスタンスを取得できるようになりました。isAmbientがメソッドではなくフィールドになりました。(I84b4f)
バグの修正
SwipeToDismissでアルファと変換をリセットする際に、親ビューが null の場合を処理するための null チェックを追加。(Ib0ec7)
バージョン 1.3.0-alpha05
2023 年 4 月 19 日
androidx.wear:wear:1.3.0-alpha05 がリリースされました。バージョン 1.3.0-alpha05 に含まれる commit については、こちらをご覧ください。
API の変更
AmbientModeSupportを移行してLifecycleObserverを使用します。新しいライフサイクル対応クラスを優先してAmbientModeSupportを非推奨にします。(I1593b)
バグの修正
FragmentContainerViewの使用中にエラーを修正するため、ビューを追加するのではなく、ドローアブルを使用するようにSwipeDismissTransitionHelperの背景スクリム アプローチを更新(I851cd)
バージョン 1.3.0-alpha04
2023 年 1 月 25 日
androidx.wear:wear:1.3.0-alpha04 がリリースされました。バージョン 1.3.0-alpha04 に含まれる commit については、こちらをご覧ください。
バグの修正
- Wear プラットフォームと Wear Compose の実装に合わせて、
SwipeDismissFrameLayoutのアニメーションを更新しました。(I7261b)
バージョン 1.3.0-alpha03
2022 年 8 月 24 日
androidx.wear:wear:1.3.0-alpha03 がリリースされました。バージョン 1.3.0-alpha03 に含まれる commit については、こちらをご覧ください。
新機能
ArcLayoutが、通常のレイアウト ウェイトと同じように機能する拡大ウェイトをサポートするようになりました。つまり、角度を直接計算せずに、子要素の相対サイズを指定できます。また、ウェイトを指定した子要素を拡大する際に考慮されるベスト エフォートのMaxAngleDegreesも追加しました。たとえば、ウェイトを指定した複数の子を持つ円弧を 90 度にクランプすることができます。この場合、拡大されない要素が占めるスペースも考慮されます。
API の変更
- ウィジェットが利用可能なスペースを埋めて拡大できるように、
ArcLayout.LayoutParamsにウェイトを追加しました。複数のウィジェットがある場合、利用可能なスペースの配分はそのウェイトに比例します。それに加えて、ArcLayout.setMaxAngleDegreesを追加して、たとえば拡大を 90 度に制限できるようにしました(注意: 固定サイズの子ウィジェットのレイアウトには影響しません)。さらに、ArcLayout.WidgetにsetSweepAngleDegreesを追加しました。これにより、ArcLayoutは 0 以外のウェイトを持つウィジェットにサイズを通知できます。(I75f24) setColorFilterの null 可能性を更新しました。(I99ddf、b/236498063)
バージョン 1.3.0-alpha02
2022 年 2 月 23 日
androidx.wear:wear:1.3.0-alpha02 がリリースされました。バージョン 1.3.0-alpha02 に含まれる commit については、こちらをご覧ください。
新機能
ArcLayoutでlayoutDirectionをサポートしました(I14d49)- ConfirmationOverlay のコンテンツの説明メッセージを改善しました(I0fdf8)
ConfirmationOverlayのアイコンやレイアウトを新しくしました(If5b54)
バグの修正
- アンビエント関連のコードが保持されるように、ProGuard ルールを追加しました(Idaa10)
- SwipeDismissFrameLayout のフラグメントを上下のフリングで誤って閉じないようにしました(Idb6d8)
- メッセージがない場合の ConfirmationOverlay を修正しました(I63e6f)
外部からの協力
- Dae Gyu LEE(Samsung) - SwipeDismissFrameLayout のフラグメントを上下のフリングで誤って閉じないようにしました(Idb6d8)
バージョン 1.3.0-alpha01
2021 年 9 月 29 日
androidx.wear:wear:1.3.0-alpha01 がリリースされました。バージョン 1.3.0-alpha01 に含まれる commit については、こちらをご覧ください。
バグの修正
ConfirmationOverlayがアイコンを押し上げ、長いメッセージに対応するようになり、メッセージがデバイスのベゼル(または画面外)に出ることはなくなりました。(I54bff)
Wear-Remote-Interactions バージョン 1.2.0
バージョン 1.2.0-alpha01
2025 年 7 月 2 日
androidx.wear:wear-remote-interactions:1.2.0-alpha01 がリリースされました。バージョン 1.2.0-alpha01 にはこれらの commit が含まれています。
新機能
RemoteActivityHelper.startRemoteActivityを更新し、新しい公開 Wear SDK API(startRemoteActivity)が利用可能な場合(Wear 6 以降)、それを使用するようにしました。(Id1e77)
Wear Ongoing および Interactions バージョン 1.1.0
バージョン 1.1.0
2025 年 2 月 26 日
androidx.wear:wear-phone-interactions:1.1.0 がリリースされました。バージョン 1.1.0 にはこれらの commit が含まれています。
1.0.0 以降の重要な変更
- このバージョンには、Wear OS 5(API レベル 34)以上で実行され、API レベル 35 以上を対象とするアプリの重要なバグの修正が含まれています。
- アプリは、
targetSdkVersionを 35 以上に更新する前に、このバージョンのライブラリに更新する必要があります。 - そうでない場合は、実行時例外がスローされます。
- デバイスがスマートフォンとペア設定されていない場合のペア設定済みデバイスの種類の新しい定義
noneが追加されました。
バージョン 1.1.0-rc01
2025 年 2 月 12 日
androidx.wear:wear-phone-interactions:1.1.0-rc01 がリリースされました。最後のベータ版からの重要な変更はありません。バージョン 1.1.0-rc01 にはこれらの commit が含まれています。
バージョン 1.1.0-beta01
2025 年 1 月 29 日
androidx.wear:wear-phone-interactions:1.1.0-beta01 がリリースされました。バージョン 1.1.0-beta01 にはこれらの commit が含まれています。
新機能
Wear Phone Interactions 1.1.0-beta01 リリースでは、ライブラリのこのリリースは機能が完成し、API がロックされていることが表明されました(試験運用版としてマークされている場合を除く)。Wear Phone Interactions 1.1 には、次の新機能と API が含まれています。
- プロパティ
redirectUrlをOAuthRequestに追加しました。 - ドキュメントの修正
- 既存の不明なタイプを使用する代わりに、デバイスがスマートフォンとペア設定されていない場合を指定するために
PhoneTypeHelperに追加のタイプを追加。
API の変更
- デバイスがスマートフォンとペア設定されていない場合のペア設定済みデバイスタイプ(なし)の新しい定義を追加しました。(I06cb8)
バージョン 1.1.0-alpha05
2024 年 12 月 11 日
androidx.wear:wear-phone-interactions:1.1.0-alpha05 がリリースされました。バージョン 1.1.0-alpha05 には、これらの commit が含まれています。
バグの修正
- API レベル 35 以上を対象として Wear OS 5(API レベル 34)以上で実行している場合にクラッシュするバグを修正しました。アプリは、
targetSdkVersionを 35 以上に更新する前に、このバージョンのライブラリに更新する必要があります。
バージョン 1.1.0
2024 年 12 月 11 日
androidx.wear:wear-remote-interactions:1.1.0 がリリースされました。バージョン 1.1.0 にはこれらの commit が含まれています。
1.0.0 以降の重要な変更
- リモート アクティビティを起動する機能が利用可能かどうかを確認するのに役立つ
RemoteActivityHelper.isRemoteActivityHelperAvailableを追加しました。(I107a9)
バージョン 1.1.0-rc01
2024 年 10 月 16 日
androidx.wear:wear-remote-interactions:1.1.0-rc01 がリリースされました。1.1.0-beta01 からの変更はありません。バージョン 1.1.0-rc01 にはこれらの commit が含まれています。
バージョン 1.1.0-beta01
2024 年 7 月 24 日
androidx.wear:wear-remote-interactions:1.1.0-beta01 がリリースされました。バージョン 1.1.0-beta01 にはこれらの commit が含まれています。Wear Remote Interactions 1.3.0-beta01 リリースでは、ライブラリのこのリリースは機能が完成し、API がロックされていることが表明されました(試験運用版とマークされている場合を除く)。
バージョン 1.1.0-alpha04
2024 年 1 月 10 日
androidx.wear:wear-phone-interactions:1.1.0-alpha04 がリリースされました。バージョン 1.1.0-alpha04 に含まれる commit については、こちらをご覧ください。
API の変更
- リモート認証が利用可能かどうかを確認する
RemoteAuthClient.isRemoteAuthAvailableを追加しました。(Ibc10c)
バージョン 1.1.0-alpha02
2024 年 1 月 10 日
androidx.wear:wear-remote-interactions:1.1.0-alpha02 がリリースされました。バージョン 1.1.0-alpha02 に含まれる commit については、こちらをご覧ください。
API の変更
- リモート アクティビティを起動する機能が利用可能かどうかを確認するのに役立つ
RemoteActivityHelper.isRemoteActivityHelperAvailableを追加しました。(I107a9) - Java で互換性のあるオプション パラメータを持つように
RemoteActivityHelperのコンストラクタを更新しました。(I75554)
バージョン 1.1.0-alpha01
2023 年 6 月 21 日
androidx.wear:wear-remote-interactions:1.1.0-alpha01 がリリースされました。バージョン 1.1.0-alpha01 に含まれる commit については、こちらをご覧ください。
バグの修正
RemoteActivityHelperでの完了とエラー処理の方法を改善しました。(I60d60)
外部からの協力
wear-remote-interactionsから Guava 依存関係を削除し、より小さな代替を使用。
Wear-Phone-Interactions バージョン 1.1.0-alpha03
2022 年 3 月 9 日
androidx.wear:wear-phone-interactions:1.1.0-alpha03 がリリースされました。バージョン 1.1.0-alpha03 に含まれる commit については、こちらをご覧ください。
バグの修正
- 指定されたリクエスト URL にリダイレクト URL が設定されていない場合、
OAuthRequestのredirectUrlが空の文字列を返すようになりました。(I44242)
Wear-Phone-Interactions バージョン 1.1.0-alpha02
2021 年 12 月 15 日
androidx.wear:wear-phone-interactions:1.1.0-alpha02 がリリースされました。バージョン 1.1.0-alpha02 に含まれる commit については、こちらをご覧ください。
バグの修正
RemoteAuthClientドキュメントのエラー(コードサンプルのスニペットのエラーとErrorCodeへの無効なリンクを含む)を修正しました。(I260e8)
Wear-Phone-Interactions バージョン 1.1.0-alpha01
2021 年 9 月 15 日
androidx.wear:wear-phone-interactions:1.1.0-alpha01 がリリースされました。バージョン 1.1.0-alpha01 に含まれる commit については、こちらをご覧ください。
API の変更
Wear Ongoing および Interactions バージョン 1.0.0
Wear-Phone-Interactions バージョン 1.0.1
2021 年 12 月 15 日
androidx.wear:wear-phone-interactions:1.0.1 がリリースされました。バージョン 1.0.1 に含まれる commit については、こちらをご覧ください。
バグの修正
excludedTagsのないブリッジ通知を無効にしようとするとBridgingManagerから例外がスローされる問題を修正しました。
Wear-Phone-Interactions Wear-Remote-Interactions バージョン 1.0.0
2021 年 9 月 15 日
androidx.wear:wear-phone-interactions:1.0.0 と androidx.wear:wear-remote-interactions:1.0.0 がリリースされました。バージョン 1.0.0 に含まれる commit については、こちらをご覧ください。
1.0.0 の主な機能
Phone Interaction Library には、ウェアラブルからスマートフォンへのインタラクションのための API が含まれています。以下の内容が含まれます。
PhoneDeviceType: 現在のスマートウォッチがペア設定されているスマートフォンのタイプを判別するためのヘルパー メソッドを提供します(このクラスは、ウェアラブル デバイスのみで利用できます)。BridgingManager、BridgingManagerService、BridgingConfigAPI: 実行時に通知を有効または無効にし、ブリッジモードの対象外の通知に対して必要に応じてタグを設定します。RemoteAuthClient: ウェアラブルでのリモート認証のサポートと OAuth PKCE 拡張機能のサポートを提供します。通信用の追加のハンドラとヘルパークラスを用意しました。
Remote Interaction Library には、ウェアラブルとスマートフォン間のインタラクションのための API が含まれています。以下の内容が含まれます。
WatchFaceConfigIntentHelper: スマートフォン上のコンパニオンのウォッチフェイス構成アクティビティで ID とコンポーネント名を指定するためのヘルパー関数を提供します。RemoteActivityHelperクラス: スマートウォッチからスマートフォンまで、他のデバイスでインテントを開くことができます。
Wear-Phone-Interactions Wear-Remote-Interactions バージョン 1.0.0-rc01
2021 年 9 月 1 日
androidx.wear:wear-phone-interactions:1.0.0-rc01 と androidx.wear:wear-remote-interactions:1.0.0-rc01 がリリースされました。バージョン 1.0.0-rc01 に含まれる commit については、こちらをご覧ください。
バグの修正
- RemoteActivityHelper の使用時に Google Play 開発者サービス内で発生したエラーが呼び出し元に伝達されないバグを修正しました(I60d60)
- 接続されているノードがない場合や、リクエストされた nodeId が見つからない場合、RemoteActivityHelper が Future を処理できないバグを修正しました(I60d60)
Wear-Ongoing バージョン 1.1
バージョン 1.1.0
2025 年 9 月 10 日
androidx.wear:wear-ongoing:1.1.0 がリリースされました。バージョン 1.1.0 にはこれらの commit が含まれています。
1.0.0 以降の重要な変更:
- アクセシビリティ サービスで使用されるコンテンツの説明フィールドを Ongoing Activities に追加しました。
- SDK 33 以降で
POST_NOTIFICATIONS権限を必要とする API にRequiresPermissionアノテーションを追加しました。
バージョン 1.1.0-rc01
2025 年 8 月 27 日
androidx.wear:wear-ongoing:1.1.0-rc01 がリリースされました。最後のベータ版からの変更はありません。バージョン 1.1.0-rc01 にはこれらの commit が含まれています。
バージョン 1.1.0-beta01
2025 年 7 月 30 日
androidx.wear:wear-ongoing:1.1.0-beta01 がリリースされました。前回のアルファ版からの重要な変更はありません。バージョン 1.1.0-beta01 にはこれらの commit が含まれています。
バージョン 1.1.0-alpha01
2023 年 8 月 23 日
androidx.wear:wear-ongoing:1.1.0-alpha01 がリリースされました。バージョン 1.1.0-alpha01 に含まれる commit については、こちらをご覧ください。
API の変更
- Ongoing Activity にコンテンツの説明フィールドを追加しました。これは、ユーザー補助サービスが進行中のアクティビティを説明するために使用します。(I79fc6)
バグの修正
- SDK 33 以降で
POST_NOTIFICATIONS権限を付与する必要がある API に@RequiresPermissionを追加しました。(Ie542e、b/238790278)
Wear-Ongoing バージョン 1.0.0
2021 年 9 月 1 日
androidx.wear:wear-ongoing:1.0.0 がリリースされました。バージョン 1.0.0 に含まれる commit については、こちらをご覧ください。
1.0.0 の主な機能
- Wear Ongoing Activities API は、サードパーティ デベロッパーを含むデベロッパー向けの API であり、自身のアクティビティを「進行中のアクティビティ」としてマークし、必要な情報を提供するために使用することができます。
- 進行中のアクティビティとは、スマートウォッチのバックグラウンドで実行されているアクティビティ(ワークアウト、通話、メディアなど)を指します。Wear 3 では、進行中と宣言されたアクティビティは、ウォッチフェイスの専用オーバーレイ アイコンと、アプリ ランチャーの別のレンダリングによって、目立つように表示されます。
- 詳しくは、Wear の進行中のアクティビティに関するガイドをご覧ください。
Wear-Phone-Interactions Wear-Remote-Interactions バージョン 1.0.0-beta01
2021 年 8 月 18 日
androidx.wear:wear-phone-interactions:1.0.0-beta01 と androidx.wear:wear-remote-interactions:1.0.0-beta01 がリリースされました。バージョン 1.0.0-beta01 に含まれる commit については、こちらをご覧ください。
API の変更
- クラス
RemoteIntentHelperの名前をRemoteActivityHelperに変更しました。関数RemoteIntentHelper#getRemoteIntentExtraIntentとRemoteIntentHelper#getRemoteIntentNodeIdの名前を、それぞれRemoteActivityHelper#getTargetIntentとRemoteActivityHelper#getTargetNodeIdに変更しました。(Id2042)
Wear-Ongoing バージョン 1.0.0-rc01
2021 年 8 月 18 日
androidx.wear:wear-ongoing:1.0.0-rc01 がリリースされました。1.0.0-beta01 からの変更はありません。バージョン 1.0.0-rc01 に含まれる commit については、こちらをご覧ください。
Wear-Ongoing バージョン 1.0.0-beta01
2021 年 8 月 4 日
androidx.wear:wear-ongoing:1.0.0-beta01 がリリースされました。バージョン 1.0.0-beta01 に含まれる commit については、こちらをご覧ください。
API の変更
- OngoingActivity.Builder の一部のセッターが、セッターとゲッターの対称性と整合性を確保するために null 引数を受け入れるようになりました(I17ee5)
Wear-Phone-Interactions バージョン 1.0.0-alpha07
2021 年 8 月 4 日
androidx.wear:wear-phone-interactions:1.0.0-alpha07 がリリースされました。バージョン 1.0.0-alpha07 に含まれる commit については、こちらをご覧ください。
API の変更
WearTypeHelper.isChinaDeviceの名前をWearTypeHelper.isChinaBuildに変更しました。(I47302)- RemoteAuthClient ライブラリを更新し、デバイスの種類(RoW / China)に基づいて redirect_uri が自動的に選択されるようにしました。(I38866)
- BridgingConfig と Bundle との変換が ClassCastException が原因で失敗するバグを修正しました。BridgingManagerService クラスの単体テストを追加しました。(I68ecb)
Wear-Remote-Interactions バージョン 1.0.0-alpha06
2021 年 8 月 4 日
androidx.wear:wear-remote-interactions:1.0.0-alpha06 がリリースされました。バージョン 1.0.0-alpha06 に含まれる commit については、こちらをご覧ください。
Wear-Phone-Interactions バージョン 1.0.0-alpha06
2021 年 7 月 21 日
androidx.wear:wear-phone-interactions:1.0.0-alpha06 がリリースされました。バージョン 1.0.0-alpha06 に含まれる commit については、こちらをご覧ください。
API の変更
BridgingManagerSeviceBinderクラスが Service のサブクラスになり、BridgingManagerSevice に名前が変更されました。(I9fca2)- OAuthRequest パラメータを含めるように
RemoteAuthClient.Callback.onAuthorizationErrorメソッドが変更されました。コールバックを必要とするメソッドでは、コールバックを実行するエグゼキュータも必要になりました。(I35e11)
バグの修正
- 認証 API をわかりやすくするために、より多くのパラメータを記録し、可能な限りプロパティを使用するようにしました。(I12287)
Wear-Phone-Interactions バージョン 1.0.0-alpha05
2021 年 6 月 30 日
androidx.wear:wear-phone-interactions:1.0.0-alpha05 がリリースされました。バージョン 1.0.0-alpha05 に含まれる commit については、こちらをご覧ください。
バグの修正
BridgingConfig.Builderのコンストラクタで渡す必要があるパラメータを文書化しました。
Wear-Ongoing バージョン 1.0.0-alpha06
2021 年 6 月 2 日
androidx.wear:wear-ongoing:1.0.0-alpha06 がリリースされました。バージョン 1.0.0-alpha06 に含まれる commit については、こちらをご覧ください。
API の変更
- Ongoing Activity に Title フィールドを追加しました。(I7a405)
バグの修正
Wear-Ongoing バージョン 1.0.0-alpha05
2021 年 5 月 18 日
androidx.wear:wear-ongoing:1.0.0-alpha05 がリリースされました。バージョン 1.0.0-alpha05 に含まれる commit については、こちらをご覧ください。
API の変更
OngoingActivityに、ビルダーを介して直接設定されたすべての値(または関連する通知から取得されたデフォルト値)を取得するゲッターが追加されました。(Id8ac8)- 新しいクラス
Statusを使用して、OngoingActivityのステータスを作成できるようになりました。 OngoingActivityDataとOngoingActivityStatusが公開 API から除外されました。
- 新しいクラス
クラス
TextStatusPartおよびTimerStatusPartが公開 API から除外されました。(I57fb6)- 静的テキストを含む
Partを作成するには、Status.TextPartを使用します。 - ストップウォッチ(カウントアップ)を含む
Partを作成するには、Status.Stopwatchを使用します。 - タイマー(カウントダウン)を含む
Partを作成するには、Status.Timerを使用します。
- 静的テキストを含む
Wear-Ongoing バージョン 1.0.0-alpha04
2021 年 5 月 5 日
androidx.wear:wear-ongoing:1.0.0-alpha04 がリリースされました。バージョン 1.0.0-alpha04 に含まれる commit については、こちらをご覧ください。
API の変更
- OngoingActivity で、メソッド fromExistingOngoingActivity の名前が recoverOngoingActivity に変更されました。
- OngoingActivity に、以前は OngoingActivityData でのみ使用可能だったゲッターの完全なセットが装備されました。(I0ee4d)
Wear-Remote-Interactions バージョン 1.0.0-alpha05
2021 年 7 月 21 日
androidx.wear:wear-remote-interactions:1.0.0-alpha05 がリリースされました。バージョン 1.0.0-alpha05 に含まれる commit については、こちらをご覧ください。
API の変更
RemoteIntentHelperクラス(以前のウェアラブル サポート ライブラリの RemoteIntent)を追加しました。これを使用すると、スマートウォッチからスマートフォンまで、他のデバイスでインテントを開くことができます。(I1d7e0)AndroidX ライブラリから PlayStoreAvailability クラスを削除しました。接続したスマートフォンで Play ストアを利用できるかどうかを検出するには、
androidx.phone.interactions.PhoneTypeHelper.getPhoneDeviceTypeメソッドを使用して、接続したスマートフォンが Android スマートフォンかどうかを確認します。次に、androidx.wear.utils.WearTypeHelper.isChinaDeviceメソッドを使用して、接続したスマートフォンが中国製デバイスかどうかを確認します。Android スマートフォンであり、中国製デバイスでない場合は、Play ストアをご利用いただけます。(Ie7dec)
Wear-Phone-Interactions バージョン 1.0.0-alpha04
2021 年 4 月 7 日
androidx.wear:wear-phone-interactions:1.0.0-alpha04 がリリースされました。バージョン 1.0.0-alpha04 に含まれる commit については、こちらをご覧ください。
API の変更
- 新しいライブラリがウェアラブル サポート ライブラリの実装と下位互換性を持てるように、
ErrorCode定数を更新しました。
バグの修正
- OAuth セッションを開始する際に新しい OAuth API によって発生する例外を修正しました。
Wear-Remote-Interactions バージョン 1.0.0-alpha03
2021 年 4 月 7 日
androidx.wear:wear-remote-interactions:1.0.0-alpha03 がリリースされました。バージョン 1.0.0-alpha03 に含まれる commit については、こちらをご覧ください。
API の変更
PlayStoreAvailabilityを、静的メソッドを使用したコンパニオン オブジェクトを含むクラスに変更しました。使用方法は変わりません。
バグの修正
- 実際の HTML 文字を使用したサンプルコードを正しく表示できるように、
WatchFaceConfigIntentHelperの概要ドキュメントを修正しました。
Wear-Ongoing Wear-Phone-Interactions バージョン 1.0.0-alpha03
2021 年 3 月 10 日
androidx.wear:wear-ongoing:1.0.0-alpha03 と androidx.wear:wear-phone-interactions:1.0.0-alpha03 がリリースされました。バージョン 1.0.0-alpha03 に含まれるコミットについては、こちらをご覧ください。
新機能
- Wearable サポート ライブラリから AndroidX に OAuthClient を移行しました。この移行されたクラスの名前を RemoteAuthClient に変更し、Wearable でのリモート認証のサポートと OAuth PKCE 拡張機能のサポートを追加しました。通信用の追加のハンドラとヘルパークラスを用意しました。
- 進行中のアクティビティは、新しい OngoingActivity.Builder コンストラクタを使用して、タグを持つ通知に関連付けることができます。
API の変更
- Ongoing Activities ライブラリ(I653b4)の通知タグのサポートを追加しました。
- Wear サポート ライブラリから AndroidX に OAuthClient を移行し、OAuth PKCE 拡張機能のサポートを追加しました(I3eaaa)
Wear-Remote-Interactions バージョン 1.0.0-alpha02
2021 年 3 月 10 日
androidx.wear:wear-remote-interactions:1.0.0-alpha02 がリリースされました。バージョン 1.0.0-alpha02 に含まれる commit については、こちらをご覧ください。
新機能
- ウェアラブル サポート ライブラリから AndroidX に PlayStoreAvailability クラスを移行しました。AndroidX は、スマートフォンで Play ストアが利用できるかどうかを確認する API を提供します。
バグの修正
- ウェアラブル サポート ライブラリから AndroidX に PlayStoreAvailability クラスを移行しました。(I69bfe)
バージョン 1.0.0-alpha02
2021 年 2 月 10 日
androidx.wear:wear-ongoing:1.0.0-alpha02 と androidx.wear:wear-phone-interactions:1.0.0-alpha02 がリリースされました。バージョン 1.0.0-alpha02 に含まれる commit については、こちらをご覧ください。
API の変更
- より複雑なステータスのサポートを追加しました。これは、1 つまたは複数のテンプレートと、テンプレートのプレースホルダを埋める一連のパーツで構成されます。OngoingActivityStatus に、1 つのパーツだけ(テキストまたはタイマー)のシンプルなステータスを作成するための静的メソッドと、より複雑なステータスを作成するためのビルダーが追加されました。(I1fe81)
- BridgingManager クラスと BridgingConfig クラスを、Wear サポート ライブラリから AndroidX に移動します。これにより、実行時に通知を有効または無効にする API、およびブリッジモードの対象外の通知に対して必要に応じてタグを設定する API が提供されます。(I3a17e)
バージョン 1.0.0-alpha01
2021 年 1 月 27 日
androidx.wear:wear-ongoing:1.0.0-alpha01、androidx.wear:wear-phone-interactions:1.0.0-alpha01、androidx.wear:wear-remote-interactions:1.0.0-alpha01 がリリースされました。バージョン 1.0.0-alpha01 に含まれるコミットについては、こちらをご覧ください。
API の変更
Ongoing Activities ライブラリを新しいサブライブラリ wear-ongoing に移行しました。現在、クラスは androidx.wear.ongoing パッケージ(以前は androidx.wear.ongoingactivities)に存在します。(I7c029)
ウェアラブルからスマートフォンへのインタラクションをサポートするクラスを含む新しいサポート ライブラリが作成されました。初期段階では、ウェアラブル サポート ライブラリから移行されたクラスが含まれます。(Id5180)
PhoneDeviceType クラスをウェアラブル サポート ライブラリから AndroidX に移行しました。移行されたクラスの名前は PhoneTypeHelper に変更されました。このクラスは、現在のスマートウォッチがペア設定されているスマートフォンのタイプを判別するためのヘルパー メソッドを提供します(このクラスは、ウェアラブル デバイスのみで利用できます)。(Ibd947)
ウェアラブルとスマートフォン間のインタラクションをサポートするクラスを含む新しいサポート ライブラリを作成しました。初期段階では、ウェアラブル サポート ライブラリから移行されたクラスが含まれます。(I9deb4)
WatchFaceCompanion クラスをウェアラブル サポート ライブラリから AndroidX に移行しました。移行されたクラスの名前は WatchFaceConfigIntentHelper に変更されました。このクラスは、スマートフォン上のコンパニオンのウォッチフェイス構成アクティビティで ID とコンポーネント名を指定するためのヘルパー関数を提供します。ウェアラブル デバイス上でウォッチフェイスを構成するためにローカルで使用することもできます。(Ia455f)
Wear Complications と Watchface 1.0.0
バージョン 1.0.0-alpha22
2021 年 9 月 15 日
androidx.wear:wear-*:1.0.0-alpha22 がリリースされました。バージョン 1.0.0-alpha22 に含まれる commit については、こちらをご覧ください。
新機能
- EditorSession がライフサイクル オブザーバーに登録するようになりました。これにより、アクティビティの終了時に明示的に EditorSession を閉じる必要がなくなりました。
API の変更
- EditorSession と ListenableEditorSession は、complicationSlotsState、ComplicationsPreviewData、ComplicationsDataSourceInfo に Kotlin StateFlow を使用するようになりました。(I761d9)
- EditorSession#userStyle が
MutableStateFlow<UserStyle>になりました。(I32ca9) - EditorSession.createOnWatchEditorSession はライフサイクル オブザーバーを使用し、onDestroy を観測すると自動的に閉じるようになりました。また、
createOnWatchEditorSessionにはアクティビティを渡すだけで済みます。同じ変更が ListenableEditorSession にも適用されました。(Ic6b7f) - CustomValueUserStyleSetting のコンストラクタが、公開 API の一部として復元されました。(I2e69a)
UserStyleはMap<UserStyleSetting, UserStyleSetting.Option>を継承するようになりました。MutableUserStyleSetting#putは、設定がスキーマに存在しない場合やオプションが設定と一致しない場合、IllegalArgumentException をスローします。(Iba40f)
バージョン 1.0.0-alpha21
2021 年 9 月 1 日
androidx.wear:wear-*:1.0.0-alpha21 がリリースされました。バージョン 1.0.0-alpha21 に含まれる commit については、こちらをご覧ください。
API の変更
- すべての公開ウォッチフェイス、クライアント、エディタ、ウォッチフェイスの追加機能の API が、Long ではなく java.time.Instant を使用するようになりました。その結果、最小 API レベルが 26 に引き上げられました。(I3cd48)
- ウォッチフェイス API と追加機能の API は、Calendar ではなく変更不可能な ZonedDateTime を使用するようになりました。(I25cf8)
- ComplicationSlot を NoDataComplicationData で初期化するようにしました。ComplicationSlot.complicationData は常に値を持つようになり、CanvasComplicationDrawable.complicationData は null 許容ではなくなりました。(I4dfd6)これにより、ウォッチフェイスを切り替える際の追加機能のちらつきが軽減されます(完全にはなくなりません)。
バージョン 1.0.0-alpha20
2021 年 8 月 18 日
androidx.wear:wear-*:1.0.0-alpha20 がリリースされました。バージョン 1.0.0-alpha20 に含まれる commit については、こちらをご覧ください。
API の変更
- ComplicationDataSourceInfoRetriever.RetrievePreviewComplicationData が null を返すときに使用できる createFallbackPreviewData を ComplicationDataSourceInfo に追加しました。(I38c4d)
- ComplicationDataSourceUpdateRequester をインターフェースに変換し、単体テストでモックできるようにしました。ComplicationDataSourceUpdateRequester.create() を使用して具体的な ComplicationDataSourceUpdateRequester を作成できます。(I7da22)
- RenderParameters.pressComplicationSlotIds を、RenderParameters.lastComplicationTapDownEvents に置き換えました。このクラスは、タップの x、y 座標(ピクセル単位)と 1 つのタイムスタンプからなる 3 つの組み合わせを含む新しい TapEvent クラスを公開します。
WatchFace.TapListener.onTapをonTapEvent(@TapType tapType: Int, tapEvent: TapEvent)に置き換えました。さらに、InteractiveWatchFaceClient.displayPressedAnimationを削除しました。(Id87d2) - setPriorityForAccessibility 用に明示的なスレッド アノテーションを追加しました(I990fa)
- ComplicationSlotBoundsType を wear/wear-watchface の androidx-wear-watchface.ComplicationSlotBoundsType に移動しました。(I09420)
- 文字列リソース ID を UserStyleSetting と Options に渡すためのサポートを追加しました。今後のオブジェクトの作成には、この方法をおすすめします。(I03d5f)
- UserStyle スキーマのワイヤサイズに上限を設定しました。また、スキーマ内のアイコンは 400 x 400 ピクセル以下にする必要が生じます。(I3b65b)
- UserStyle インスタンスの変更をサポートするために MutableUserStyle クラスを追加しました(I95a40)
ListenableWatchFaceMetadataClient.Companion#listenableCreateWatchFaceMetadataClientの名前をListenableWatchFaceMetadataClient.Companion#createListenableWatchFaceMetadataClientに変更しました。(I64ce2)- 有効なウォッチフェイスの追加機能のデータのみを含むよう EditorState.previewComplicationsData を変更しました。また、
EditorSession.DEFAULT_PREVIEW_TIME_MILLISを追加しました。このクラスは、renderWatchFaceToBitmapまたはPreviewScreenshotParamsに渡されると、ウォッチフェイスのデフォルトのプレビュー時間でのレンダリングが必要となります。(If7b3c) - CharSequence を取る UserStyleSetting コンストラクタを公開 API から削除しました。代わりに StringResource ID を必要とするコンストラクタの使用をおすすめします。(I8537b)
CurrentUserStyleRepository.UserStyleChangeListenerが SAM 変換をサポートするようになりました。(I85989)
バージョン 1.0.0-alpha19
2021 年 8 月 4 日
androidx.wear:wear-*:1.0.0-alpha19 がリリースされました。バージョン 1.0.0-alpha19 に含まれる commit については、こちらをご覧ください。
API の変更
WatchFaceMetadataClient.createWatchFaceMetadataClientのListenableFutureラッパーを提供するListenableWatchFaceMetadataClient.listenableCreateWatchFaceMetadataClientを追加しました。(I5fa37)UserStyleOption.getOptionForIdが、バイト配列の代わりにUserStyleOption.Idを受け取るようになりました。(I469be)- 定数の
BooleanOption.TRUEとBooleanOption.FALSEを指定し、インスタンスの作成を許可しません。(I46e09) - RemoteException をスローできる wear-watchface-client のメソッドに、対応するアノテーションが付けられるようになりました。(Ib8438)
- 一貫性を保つため、
EditorSession.createOnWatchEditingSessionの名前をcreateOnWatchEditorSessionに変更しました。同様に、createHeadlessEditingSessionをcreateHeadlessEditorSessionに変更しました。その guava ラッパーの名前も変更しました。(I1526b) EditorSessionがインターフェースになり、ListenableEditorSession.commitChangesOnCloseが適切に委任されるようになりました。(I7dc3e)- ID が競合する設定またはオプションを含むユーザー スタイル スキーマを拒否するようにしました(Ic2715)
UserStyleSetting.Idを受け入れるオーバーロードUserStyle.getを追加しました。(I2aa0f)
バージョン 1.0.0-alpha18
2021 年 7 月 21 日
androidx.wear:wear-*:1.0.0-alpha18 がリリースされました。バージョン 1.0.0-alpha18 に含まれる commit については、こちらをご覧ください。
API の変更
ComplicationHelperActivityをandroidx.wear:wear-watchfaceライブラリに移動しました。(I39e76)- わかりやすくするため、
ComplicationProviderの名前をComplicationDataSourceに変更し、名前に Provider を含むすべてのクラスも同様に名前を変更しました。(Iaef0b) CanvasComplication.isHighlightedをRenderParameters.pressedComplicationSlotIdsに移動しました。これはCanvasComplicationをステートレスにするための対策です。この変更をサポートするために、CanvasComplication.renderはslotIdもパラメータとして受け取るようになり、ComplicationSlotがGlesTextureComplicationに渡されるようになりました。(I50e6e)EditorRequestにheadlessDeviceConfigを追加しました。null ではない場合、このパラメータを使用することで、インタラクティブ インスタンスを操作するのではなく、EditorSession をサポートするヘッドレス インスタンスを作成できます。これによって、現在のウォッチフェイス以外のウォッチフェイスに対してエディタを呼び出せるようになります。(I0a820)- 試験運用版の
WatchFaceMetadataClientを追加しました。これにより、UserStyleSchemaなどの静的なウォッチフェイスのメタデータと、ComplicationSlotsに関する修正された詳細情報を効率的に取得できます。(I6bfdf) CanvasRenderer.uiThreadInitの名前を init に変更しました。(I6fff9)- PreviewScreenshotParams を追加しました。これは EditorRequest のオプションの新しいパラメータで、これらのパラメータを使用して commit 時にプレビューのスクリーンショットを撮影するよう EditorSession に指示します。プレビュー画像は
EditorState.previewImageで公開されます。(Ic2c16)
バグの修正
- デベロッパーは、ComplicationHelperActivity を独自のマニフェストに追加する必要がなくなりました。(I6f0c2)
バージョン 1.0.0-alpha17
2021 年 6 月 30 日
androidx.wear:wear-*:1.0.0-alpha17 がリリースされました。バージョン 1.0.0-alpha17 に含まれる commit については、こちらをご覧ください。
新機能
GlesRendererのmakeUiThreadContextCurrentとmakeBackgroundThreadContextCurrentが、Runnableを受け入れるrunUiThreadGlCommandsとrunBackgroundThreadGlCommandsにそれぞれ置き換えられました。ライブラリでは実行可能な GL コマンドを常に 1 つのみ実行できます。UiThread の初期化を簡単に行えるようにするために、レンダリングの呼び出しの前に UiThread で 1 回呼び出される
CanvasRenderer.uiThreadInitを追加しました。また、onRendererCreatedをCanvasComplicationに追加し、RendererとCanvasComplicationで状態を簡単に共有できるようにしました。わかりやすくするために、
Complicationの名前をComplicationSlotに、complicationIdの名前を用途に応じてcomplicationSlotIdまたはcomplicationInstanceIdに変更しました
API の変更
- わかりやすくするために、
Complicationの名前をComplicationSlotに、complicationIdの名前を用途に応じてcomplicationSlotIdまたはcomplicationInstanceIdに変更しました。同様に、Complication を使用するクラスの名前も変更されました。たとえば、ComplicationsManager は ComplicationSlotsManager と呼ばれるようになりました。(I4da44) - GlesRenderer の
makeUiThreadContextCurrentとmakeBackgroundThreadContextCurrentが、Runnableを受け入れるrunUiThreadGlCommandsとrunBackgroundThreadGlCommandsにそれぞれ置き換えられました。これらの関数は、レンダリング、runBackgroundThreadGlCommands、onUiThreadGlSurfaceCreatedの外部で GL 呼び出しを行う場合にのみ必要です。これは、複数の GlesRenderers がそれぞれ同じプロセスで独自のコンテキストを持つ場合があるためです(さまざまなウォッチフェイスのものである可能性があります)。また、現在の共有 GL コンテキストへのアクセスが同期されるようになりました。(I04d59) - レンダリングの呼び出しの前に UiThread で 1 回呼び出される
CanvasRenderer.uiThreadInitを追加しました。また、GlesRenderer を明確化するために、onGlContextCreatedの名前をonBackgroundThreadGlContextCreatedに、onGlSurfaceCreatedの名前をonUiThreadGlSurfaceCreatedに変更しました。(If86d0) HeadlessWatchFaceClientとInteractiveWatchFaceClientgetComplicationsSlotStateの名前をgetComplicationSlotsStateに変更しました。ComplicationSlotのcreateRoundRectComplicationBuilder、createBackgroundComplicationBuilder、createEdgeComplicationBuilderの名前が、それぞれcreateRoundRectComplicationSlotBuilder、createBackgroundComplicationSlotBuilder、createEdgeComplicationSlotBuilderに変更されました。(Ib9adc)- onRendererCreated を CanvasComplication に追加して、Renderer と CanvasComplication が状態を簡単に共有できるようにしました。(I5e1ac)
バージョン 1.0.0-alpha16
2021 年 6 月 16 日
androidx.wear:wear-*:1.0.0-alpha16 がリリースされました。バージョン 1.0.0-alpha16 に含まれる commit については、こちらをご覧ください。
新機能
- スレッドモデルの最近の変更に関連する多くのバグを修正し、ウォッチフェイス エディタでの他の問題も解決しました。
バグの修正
onComplicationProviderChooserResultでの NPE を防止しました(b/189594557)- 古いサーフェスや drawBlack の問題を修正しました(b/189452267)
complicationsManager.watchStateへのアクセスに関する競合を修正しました。(b/189457893)- バックグラウンド スレッドの全期間のバグを修正しました(b/189445428)
- R 以前のウォッチフェイス エディタの問題を修正しました(b/189126313)
- エディタ スタイルの変更でダイレクト ブート パラメータを更新しませんでした(b/187177307)
バージョン 1.0.0-alpha15
2021 年 6 月 2 日
androidx.wear:wear-*:1.0.0-alpha15 がリリースされました。バージョン 1.0.0-alpha15 に含まれる commit については、こちらをご覧ください。
新機能
ウォッチフェイスの初期化の大部分はバックグラウンド スレッドで行われるようになりましたが、すべてのウォッチフェイスの読み込みが終わった後のレンダリングなどは UiThread で行われます。読み込みとレンダリングの間にはメモリバリアがあるため、ほとんどのユーザー ウォッチフェイスでは特別なことをする必要はありません。GLES を使用するウォッチフェイスは、コンテキストがスレッド固有であるため例外です。GL リソース(テクスチャやシェーダーなど)をバックグラウンド スレッドにアップロードして UiThread で使用できるように、2 つのリンクされたコンテキストを作成しています。
ウォッチフェイスの構築を、createUserStyleSchema、createComplicationsManager、createWatchFace の 3 つの関数に分割しました。createUserStyleSchema と createComplicationsManager は高速ですが、createWatchFace はアセットの読み込みに時間がかかる場合があります。これを活用して、Complication ID から DefaultComplicationProviderPolicies とデフォルトの ComplicationType へのマップを返す、WatchFaceControlClient.getDefaultProviderPoliciesAndType が導入されました。このクエリは、ウォッチフェイスの完全な初期化を必要としないため、ヘッドレス インスタンスの作成よりも高速です。
最後に、ウォッチフェイスの追加機能は、CanvasComplication レンダラの遅延構築を可能にする CanvasComplicationFactory を使用して構築されるようになりました。
API の変更
@TargetApiが@RequiresApiに変更されました。(I0184a、b/187447093、b/187447094)- Complication ID から DefaultComplicationProviderPolicies とデフォルトの ComplicationType へのマップを返す、
WatchFaceControlClient.getDefaultProviderPoliciesAndTypeが導入されました。可能であれば、ウォッチフェイスの完全な構築を避ける高速パスを使用します。これを助けるため、WatchFaceService API を、createUserStyleSchema と createComplicationsManager という新しいメソッドを使って変更する必要がありました。これらの結果は createWatchFace に渡されます。さらに、ウォッチフェイスの追加機能は、CanvasComplication レンダラの遅延構築を可能にする CanvasComplicationFactory を使用して構築されるようになりました。(Iad6c1) - SystemProviders から MOST_RECENT_APP を削除しました。(I3df00)
- ObservableWatchData は、シールクラスになりました。(Ic940d)
- CanvasComplicationFactory.create(通常は IO 律速)は、UI スレッドでのレンダリング開始前、追加機能ごとにバックグラウンド スレッドが呼び出されるようになりました。構築とレンダリングの間にメモリバリアがあるため、特別なスレッド プリミティブは必要ありません。(Ia18f2)
- ウォッチフェイスの構築はバックグラウンド スレッドで行われ、レンダリングはすべて UI スレッドで行われますが、これに対応するために、GlesRenderer では 2 つのリンクされたコンテキストをサポートしています。WatchFaceControlClient.createHeadlessWatchFaceClient と WatchFaceControlClient.getOrCreateInteractiveWatchFaceClient は WatchFaceService.createWatchFace が完了する前に解決できる場合があります。それに続く API 呼び出しは、watchFace の初期化が完了するまでブロックされます。(Id9f41)
- EXPANSION_DP と STROKE_WIDTH_DP は、api.txt で不可視となりました。(I54801)
- EditorSession.createOnWatchEditingSession を、エラーが発生した場合に null セッションを送信するのではなく、TimeoutCancellationException をスローするようにしました。さらに、EditorRequest.createFromIntent と EditorSession.createOnWatchEditingSession の戻り値を NonNull にしました。(I41eb4)
バージョン 1.0.0-alpha14
2021 年 5 月 18 日
androidx.wear:wear-*:1.0.0-alpha14 がリリースされました。バージョン 1.0.0-alpha14 に含まれるコミットについては、こちらをご覧ください。
新機能
EditorSession.openComplicationProviderChooserは、ウォッチフェイスの追加機能の ID(ComplicationProviderInfo)を含む ChosenComplicationProvider と、プロバイダ選択アクティビティによって返される追加のエクストラを含む Bundle を返すようになりました。- さらに、コードの Kotlin への移行が着実に進んでおり、現在はほとんどのウォッチフェイス API が Kotlin で定義されています。
API の変更
- GlesRenderer プロパティ
eglContextおよびeglDisplayが null 値非許容型になりました。GL エラーは、RuntimeExceptions ではなくGlesRenderer.GlesExceptionで報告されるようになりました。(Ib1005) androidx.wear.watchface.complications.rendering.ComplicationDrawableを Java から Kotlin に移行しました。(Ibc3eb)androidx.wear.watchface.complications.rendering.ComplicationStyleを Java から Kotlin に移行しました。(I3375e)- EditorSession 内のウォッチフェイスの追加機能ごとに、ウォッチフェイスの追加機能プロバイダに関する情報を追加しました。(I37f14)
EditorSession.openComplicationProviderChooserの結果を拡張して、選択されたプロバイダから返される情報が含まれるようにしました。(Iead6d)
Wear Complications および Watchface バージョン 1.0.0-alpha13
2021 年 5 月 5 日
androidx.wear:wear-*:1.0.0-alpha13 がリリースされました。バージョン 1.0.0-alpha13 に含まれるコミットについては、こちらをご覧ください。
新機能
ウォッチフェイスは、時間とウォッチフェイスの追加機能だけでなく、重要な視覚要素も持つことができるようになりました。そのためのスクリーン リーダーをサポートできるように、ウォッチフェイスは、Renderer の additionalContentDescriptionLabels プロパティを介してユーザー補助用の ContentDescriptionLabels を指定できるようになりました。さらに、ContentDescriptionLabels の順序付けを制御するために、accessibilityTraversalIndex がウォッチフェイスの追加機能に追加されました。これは、ComplicationsUserStyleSetting によって変更できます。
デベロッパーがスクリーン リーダーについて慎重に検討することを奨励するため、
ShortTextComplicationData.Builder、LongTextComplicationData.Builder、RangedValueComplicationData.BuilderのcontentDescriptionフィールドをそれらのコンストラクタに渡すことを必須にしました。ComplicationText.EMPTYがcontentDescriptionに渡された場合、contentDescriptionはテキストとタイトルから自動的に生成されます。ウォッチフェイスが init の実行中に例外をスローした場合、
WatchFaceControlClient.getOrCreateInteractiveWatchFaceClientはServiceStartFailureExceptionをスローするようになりました。これにより、ウォッチフェイスの起動時の問題の診断がかなり容易になります。
API の変更
- ComplicationProviderInfo で、以前のバージョンの Wear OS をサポートするために必要な null のコンポーネント名を持つことができるようにしました。(I744d2)
androidx.wear.complications.SystemProvidersを Java から Kotlin に移行しました。(Ia1f8b)- android.support.wearable.complications 内にある公開 API のすべてのクラスを隠蔽し、必要に応じて、対応するラッパーを AndroidX に作成しました。(I7bd50)
TimeDifferenceComplicationText.Builderのメソッドの名前をsetMinimumUnitからsetMinimalTimeUnitに変更しました。(I20c64)ShortTextComplicationData.Builder、LongTextComplicationData.Builder、RangedValueComplicationData.BuilderのcontentDescriptionフィールドをコンストラクタに渡すことを必須にしました。(I8cb69)- ComplicationProviderService.onComplicationUpdate の名前を onComplicationRequest に変更し、このメソッドの ID と型パラメータをデータの ComplicationRequest にカプセル化しました。対応するリスナーの名前を、ComplicationRequestListener およびそのメソッド ComplicationRequestListener.onComplicationData に変更しました。(Iaf146)
ComplicationDataからメソッドisActiveAtを削除し、代わりにvalidTimeRangeフィールドを公開しました。このメソッド呼び出しは、validTimeRange.containsに置き換えることができます。(I65936)- int ではなく ComplicationType を受け取るように、メソッド ComplicationProviderService.onComplicationActivated の説明を変更しました。(Idb5ff)
- ProviderUpdateRequester を Java から Koltin に移行しました。(Ibce13)
- GlesRender.makeContextCurrent が公開されました。ウォッチフェイスのコードでは、render と onGlContextCreated の外部で gl 呼び出しを行う必要が生じることがあります。また、インタラクティブとヘッドレスの両方のコンテキストが存在する可能性があるため、この呼び出しが必要になります。(I8a43c)
- WatchFaceControlClient.getOrCreateInteractiveWatchFaceClient は、init の実行中にウォッチフェイスが例外をスローする場合、ServiceStartFailureException をスローするようになりました。さらに、createWatchFace にかかる時間が 6 秒を超えると、WatchFaceService が例外をスローするようになりました。(I59b2f)
GlesTextureComplicationの未使用の id プロパティを削除しました。(I28958)- ウォッチフェイスは、
Rendererの additionalContentDescriptionLabels プロパティからユーザー補助用の ContentDescriptionLabels を指定できるようになりました。さらに、ContentDescriptionLabels の順序付けを制御するために、accessibilityTraversalIndex がウォッチフェイスの追加機能に追加されました。これは、ComplicationsUserStyleSetting によって変更できます。(Ib7362) - ウォッチフェイスにおけるタッチイベント処理に関するドキュメントを拡張しました。(Iaf31e)
バグの修正
EditorSession.getComplicationsPreviewData()は、空でないウォッチフェイスの追加機能についてのみマップを返すようになりました。空のウォッチフェイスの追加機能については、EmptyComplicationData のインスタンスが使用されます。(I1ef7e)
Wear Complications および Watchface バージョン 1.0.0-alpha12
2021 年 4 月 21 日
androidx.wear:wear-*:1.0.0-alpha12 がリリースされました。バージョン 1.0.0-alpha12 に含まれる commit については、こちらをご覧ください。
新機能
ウォッチフェイス エディタでは、ウォッチフェイスの一部をハイライト表示し、時計のどの部分が設定されているのかを示す必要があります。スタイルとウォッチフェイスの追加機能をハイライト表示できるように、RenderParameters を拡張しました。新しいオプションとして HighlightLayer を追加しました。これは、アルファ透過を使用してウォッチフェイスの表面を不透明にします(この実装にはスクリーンショット API を使用します。柔軟性を高めるために独自の HighlightLayer も使用できます)。たとえば、スタイルを使用してウォッチハンドの外観を設定する場合、renderHighlightLayer のレンダラーは、ウォッチハンドの周りにアウトラインを描画できます。
ウォッチフェイスの追加機能プロバイダによるユーザー補助のサポートの一環として、PhotoImageComplicationData.Builder、MonochromaticImageComplicationData.Builder、SmallImageComplicationData.Builder の contentDescription フィールドを、必須のコンストラクタ引数に設定しました。ウォッチフェイスの追加機能(画面の端付近に描画されています)をサポートするために、ComplicationTapFilter と Complication.createEdgeComplicationBuilder を追加しました。画面端の追加機能のレンダリングとヒットテストはウォッチフェイスが行います。画面端のヒットテストは、コンパニオン エディタでは対応していません。
API の変更
- SystemProvider の定数に
PROVIDER_プレフィックスを追加しました。(I1e773) PhotoImageComplicationData.Builder、MonochromaticImageComplicationData.Builder、SmallImageComplicationData.BuilderのcontentDescriptionフィールドをコンストラクタに渡すことが必須になりました。(I9643a)ProviderInfoRetriever.requestPreviewComplicationDataの名前をretrievePreviewComplicationDataに変更しました。(I911ee)ComplicationProviderServiceを Java から Koltin に移行しました。(I849f2)- メソッド
ComplicationProviderService.onBindは今回が最終版です(I39af5) - インターフェース
CanvasComplicationを復元し、CanvasComplicaitonDrawable、GlesTextureComplication、ComplicationHighlightRendererをwear-watchface-complications-renderingに移動しました。(I84670) - 拡張されたハイライト レンダリングをサポートできるように
RenderParametersがリファクタリングされました。スタイルだけでなく、すべてまたは個々のウォッチフェイスの追加機能をレンダリングするよう、リクエストできるようになりました。さらに、CanvasRenderer と GlesRenderer には、エディタでリクエストされたハイライト表示をレンダリングするための新しい renderHighlightLayer 抽象メソッドが追加されました。レイヤの名前を WatchFaceLayer に変更しました。(Ic2444) - 画面端の追加機能をサポートするために
ComplicationTapFilterとComplication.createEdgeComplicationBuilderを追加しました。画面端の追加機能のレンダリングとヒットテストはウォッチフェイスが行います。エディタ内でのヒットテストには対応していません。(Ia6604) DoubleRangeUserStyleSettingとLongRangeUserStyleSettingの場合、defaultValue、maximumValue、minimumValueが kotlin プロパティになりました。さらに、toBooleanOption、toCoplicationOptions、toListOption など、UserStyleSetting.Option関数を削除しました。(I52899)- ウォッチフェイスが使用できるデバイスのプロパティに、あごのサイズを追加しました。(I76e1e)
ComplicationHighlightRendererのコンストラクタがoutlineExpansionパラメータとoutlineStrokeWidthパラメータを受け入れるようになりました。(I87009)ComplicationDrawable.getNoDataTextが公開 API の一部になりました。(I00598)
バージョン 1.0.0-alpha11
2021 年 4 月 7 日
androidx.wear:wear-*:1.0.0-alpha11 がリリースされました。バージョン 1.0.0-alpha11 に含まれる commit については、こちらをご覧ください。
新機能
- ウォッチフェイス API に改良が加えられました。ほとんどの変更は簡単な名前の変更ですが、
InteractiveWatchFaceWcsClientとInteractiveWatchFaceSysUiClientはInteractiveWatchFaceClientに統合されました。
API の変更
- ContentDescriptionLabel.text が、古いウェアラブル サポート ライブラリの TimeDependentText ではなく、ComplicationText になりました。(I80c03)
SystemProviders.GOOGLE_PAYは、すべての Android R デバイスに存在することが保証されていないため、リストから削除されました。このプロバイダは、引き続きDefaultComplicationProviderPolicyから使用できます(If01b5)- 整合性を保つため、ComplicationUpdateCallback の名前を ComplicationUpdateListener に変更しました。(I61ec7)
- UserStyle ワイヤ形式マップを
Map<String, byte[]>に変更し、利便性を高めるためにUserStyleDataクラスを公開 API に追加して、wear-watchface-client と wear-watchface-editor で使用されるようになりました。また、CustomValueUserStyleSetting.CustomValueOption.value がStringではなくbyte[]になりました。(Iaa103) UserStyleSettingとUserStyleSetting.Optionは、それぞれUserStyleSetting.IdとUserStyleSetting.Option.Idを使用して、文字列ではなく ID を保存するようになりました。(I63f72)InteractiveWatchFaceClient.SystemStateの名前をWatchUiStateに変更しました。(I6a4e0)- 対象範囲の区分を説明するのが難しかったため、
InteractiveWatchFaceWcsClientとInteractiveWatchFaceSysUiClientを統合しました。(Iff3fa) - わかりやすくするために、レイヤの列挙値の名前を変更しました。
Layer#TOP_LAYERはLayer#COMPLICATIONS_OVERLAYに、Layer#BASE_LAYERはLayer#BASEになりました(Ia144e) UserStyleListenerの名前をUserStyleChangeListenerに変更しました(I18524)UserStyleRepositoryの名前をCurrentUserStyleRepositoryに変更しました(I6ea53)InteractiveWatchFaceWcsClient.updateInstanceの名前をupdateWatchfaceInstanceに変更しました。(I321dc)- WatchFace TapType イベントの名前を、MotionEvent / Compose にあわせて変更しました。(I0dfd0)
- takeWatchfaceScreenshot の名前を renderWatchFaceToBitmap に変更し、takeComplicationScreenshot の名前を renderComplicationToBitmap に変更しました(Ie0697)。
- オープンクラス CanvasComplicationDrawable を優先して、CanvasComplication インターフェースを削除しました。(I1f81f)
WatcfaceControlServiceFactoryを公開 API から削除しました。(I1f8d3)CanvasComplication.setDataの名前をCanvasComplication.loadDataに変更しました。(If1239)ComplicationsManager.bringAttentionToComplicationの名前をdisplayPressedAnimationに変更しました。(Ic4297)WatchFaceService.createWatchFaceに@UiThreadアノテーションを追加しました。(Ib54c2)- バグを修正するために、CanvasComplicationDrawable パラメータの名前を変更しました。(I50dac)
- AIDL での
HeadlessWatchFaceClientの送信をサポートするために、HeadlessWatchFaceClient.toBundle()とHeadlessWatchFaceClient.createFromBundleを追加しました。(I07c35) - HeadlessWatchFaceClient と InteractiveWatchFaceClient に ClientDisconnectListener と isConnectionAlive() を追加しました。これにより、なんらかの理由で接続が損なわれているかどうかを確認できます(ウォッチフェイスが強制終了されているなど)。(Ie446d)
WatchFaceControlClient#getOrCreateWallpaperServiceBackedInteractiveWatchFaceWcsClientAsyncが suspend 関数になり、名前をgetOrCreateInteractiveWatchFaceClientに変更しました。(Ib745d)EditorState.commitChangesとhasCommitChanges()の名前をshouldCommitChanges()に変更しました。(I06e04)- マップに(通常)1 つ以上の追加機能があることを示すために、
previewComplicationDataの名前をpreviewComplicationsDataに変更しました。(I56c06) ComplicationsManager.displayPressedAnimationとの一貫性を保つために、InteractiveWatchFaceWcsClient.bringAttentionToComplicationの名前をdisplayPressedAnimationに変更しました。(Ic9999)- ウォッチフェイス インスタンス ID のすべてのインスタンスを、新しい WatchFaceId クラス(I45fdf)にカプセル化しました。
- 複数形を示すため、
complicationStateプロパティの名前をcomplicationsStateに変更しました。(Ided07) - wear-watchface-client Binder のさまざまな変換を削除しました。この削除は必要です。(Icc4c0)
- 整合性を保つために、
EditorServiceClientはオブザーバーではなくリスナーを使用するようにリファクタリングされました。(Iec3a4) - 欠落していた
@PxアノテーションをInteractiveWatchFaceSysUiClientとWatchFaceControlClientに追加しました。(I3277a) - 整合性を保つために、EditorObserverCallback の名前を EditorObserverListener に変更しました。(Ie572d)
- EditorState.watchFaceInstanceId は Android R API レベル以上に制限され、null 許容ではなくなりました。(Id52bb)
EditorSession.launchComplicationProviderChooserの名前をopenComplicationProviderChooserに変更しました。(I9d441)EditorSession.createOnWatchEditingSessionAsyncの名前がcreateOnWatchEditingSessionに変更され、suspend 関数になりました。(Id257b)- 欠落している複数の
@UiThreadアノテーションをEditorSessionに追加しました。(I6935c) UserStyleSetting.affectsLayersの名前をaffectedLayersに変更しました。(I6e22b)
バージョン 1.0.0-alpha10
2021 年 3 月 24 日
androidx.wear:wear-*:1.0.0-alpha10 がリリースされました。バージョン 1.0.0-alpha10 に含まれる commit については、こちらをご覧ください。
新機能
- WatchFaceService.createWatchFace の実行中に Open GL オブジェクト(テクスチャなど)を作成できるようになりました。GlesRenderer で、createWatchFace 内で実行できる initOpenGLContext への明示的な呼び出しが必要になったためです。
API の変更
IdAndComplicationDataはわかりづらかったため、公開 API から削除されました。これを使用していたクラスとインターフェースはリファクタリングされました。(I4c928)- わかりやすくするため、
ReferenceTimeをCountUpTimeReferenceとCountDownTimeReferenceに置き換えました。(Ib66c6) - 欠落していた
@Pxアノテーションと@ColorIntアノテーションを追加しました。(I9bbc3) Complication.complicationConfigExtrasが null 値非許容型になり、デフォルトでBundle.EMPTYになりました。(Iad04f)GlesRendererでは、作成後にinitOpenGLContextの呼び出しが必要になりました。この関数は内部的な詳細でしたが、現在は公開 API で利用でき、createWatchFace 内で GL 呼び出しを早く行えるようにします。(I726c2)- 不要であったため
Complication.setRendererを削除しました。(Ie992f) Complicaiton.setComplicationBoundsが公開 API から除外されました。ウォッチフェイスの追加機能の位置を調整する必要がある場合は、ComplicationsUserStyleSettingを使用します。(Ibd9e5)ComplicationsManager.TapCallback.onComplicationSingleTappedの名前をonComplicationTappedに変更しました。(I3a55c)ComplicationOutlineRenderer.drawComplicationSelectOutlineの名前をdrawComplicationOutlineに変更しました。(I14b88)
バージョン 1.0.0-alpha09
2021 年 3 月 10 日
androidx.wear:wear-complications-*:1.0.0-alpha09 と androidx.wear:wear-watchface-*:1.0.0-alpha09 がリリースされました。バージョン 1.0.0-alpha09 に含まれるコミットについては、こちらをご覧ください。
新機能
- WCS/SysUI ホストとウォッチフェイスとのインターフェースを改良しました。エディタで、スタイルの変更を通じてウォッチフェイスの追加機能を有効にするか無効にするかを決定できるようになりました(enabled = initiallyEnabled と ComplicationsUserStyleSetting からのすべてのオーバーライド)。また、
EditorService.closeEditorを使用すると、SysUI は、必要に応じてウォッチフェイス エディタをリモートで終了できます。 - さらに、強力なコマンド
updateInstanceを備えたInteractiveWatchFaceWcsClient.setUserStyleを使用して、インスタンス ID の変更、スタイルの設定、ウォッチフェイスの追加機能のクリアをすべて一度に行うことができます。
API の変更
- TraceEvents をウォッチフェイス ライブラリに追加しました。(I1a141)
ComplicationStateに新しいプロパティinitiallyEnabledを追加しました。このプロパティで、スタイルの切り替えによる影響を予測できます。(I8c905)InteractiveWatchFaceWcsClient.setUserStyleを、より強力なコマンドupdateInstanceに置き換えました。これにより、インスタンス ID の変更、スタイル設定、ウォッチフェイスの追加機能のクリアを行います。(Ife6f6)- WatchFaceClient のスクリーンショット API では、スクリーンショットの圧縮に時間がかかるため、圧縮を行わなくなりました。代わりに、後処理は呼び出し側に任せるようにします。(Id35af)
EditorService.closeEditorを介してウォッチフェイス エディタをリモートで終了できます。(Ic5aa4)- null 値許容型アノテーションを追加しました(Ic16ed)
バージョン 1.0.0-alpha08
2021 年 2 月 24 日
androidx.wear:wear-*:1.0.0-alpha08 がリリースされました。バージョン 1.0.0-alpha08 に含まれる commit については、こちらをご覧ください。
新機能
- 一部のウォッチフェイスは、1 つ以上の特定のウォッチフェイスの追加機能を中心に設計されています。これをサポートするために Complication.Builder#setFixedComplicationProvider を追加しました。true に設定されている場合、ユーザーはそのスロットのウォッチフェイスの追加機能を変更できません。
- ウォッチフェイス ライブラリは Kotlin ファーストであり、コルーチン(suspend 関数など)を使用します。Java ユーザー向けに、wear/wear-watchface-guava、wear/wear-watchface-client-guava、wear/wear-watchface-editor-guava のライブラリの相互運用性を改善するため、ListenableFuture ラッパーを追加しました。
API の変更
- プロバイダ選択アクティビティを起動するウォッチフェイスの追加機能へのダブルタップのサポートを削除しました。この機能はウォッチフェイスでは一般的ではなく、SysUI の実装が複雑にしていたためです。(I3ef24)
- バインダーが予期せず終了した場合は、ProviderInfoRetriever メソッドが ServiceDisconnectedException をスローすることがあります。(Ib2cc4)
- Android 11 以降では、ProviderChooser を実行できるタイミングに制限があります。また、新しい
wear-watchface-editorを使用してエディタがビルドされるよう、ComplicationHelperActivity を公開 API から削除しています。(Ib19c1) - ComplicationText 静的メソッドを削除し、ビルダーに置き換えました。(Ibe399)
- 各種のウォッチフェイス ライブラリの停止中のメソッドに guava ListenableFuture ラッパーを導入しました。(I16b2c)
- API を明確にするために、色合いを必要としない RenderParameters にセカンダリ コンストラクタを追加しました。
LayerMode.DRAW_OUTLINED以外の LayerModes で使用できます。(I497ea) - 以前は、ListUserStyleSetting にデフォルトの引数が含まれていたため、他とは異なっていました。今後は、StyleSetting サブクラス コンストラクタはすべてデフォルト値を最後に取得するようになります。(I9dbfd)
- CanvasComplication がリファクタリングされ、非表示メソッドを使用するようになったため、サブクラスの実装が簡単になりました(I5b321)
- EditorResult をリファクタリングして削除し、新しい EditorService と
EditorSession.broadcastState()に置き換えて、オブザーバー(通常は SysUI)に更新をストリーミングするようになりました。(Ic4370) - 一部のウォッチフェイスは、ユーザーがプロバイダを構成できないウォッチフェイスの不可欠な部分として、特定のウォッチフェイスの追加機能を中心にビルドされています。これをサポートするために、
Complication.Builder#setFixedComplicationProviderを追加しました。(I4509e) - EditorRequest が ComponentName ではなくパッケージ名を指定するようになりました。これは、SysUI でエディタのクラス名をルックアップしづらく、パッケージ名のみが必要であるためです。(Ib6814)
バージョン 1.0.0-alpha07
2021 年 2 月 10 日
androidx.wear:wear-*:1.0.0-alpha07 がリリースされました。バージョン 1.0.0-alpha07 に含まれる commit については、こちらをご覧ください。
新機能
- WatchFaceService.createWatchFace が suspend 関数になりました。IO を待機している間、ウォッチフェイスが UI スレッドをブロックする必要がなくなります。wear-watchface-editor と wear-complications-data も同様です。
API の変更
- PhotoImage クラスを削除してアイコンを直接使用します。(I8a70b)
- ComplicationData の validTimeRange を公開します。(I91366)
- 画像に似た属性をより明示的なものにします。(I81700)
- wear-watchface-editor と wear-complications-data が、コルーチンではなく suspend 関数を使用するようにリファクタリングされました。Rx java と Future の互換ラッパーをフォローする必要があります。(If3c5f)
- 接続の問題や API サポートの欠落が原因で requestPreviewComplicationData がプレビュー データを返せない場合に、ProviderInfoRetriever が PreviewNotAvailableException をスローするようになりました。(I4964d)
- WatchFaceControlService::createWatchFaceControlClient が suspended 関数になりました。また、getOrCreateWallpaperServiceBackedInteractiveWatchFaceWcsClient が getOrCreateWallpaperServiceBackedInteractiveWatchFaceWcsClientAsync と呼ばれるようになり、
Deferred<InteractiveWatchFaceWcsClient>を返すようになりました。RX java と Future の互換ラッパーをフォローする必要があります。(I5d461) CATEGORY_PROVIDER_CONFIG_ACTIONをCATEGORY_PROVIDER_CONFIGに名前変更します。(I7c068)- createOnWatchEditingSession が suspended 関数になりました。エディタのアクティビティが開始されるまでウォッチフェイスを使用できない場合があるためです。(Ida9aa)
- WatchFaceService.createWatchFace が suspend 関数になりました。以前はメインスレッドをブロックする必要がありましたが、これからは非同期初期化が可能になります。(If076a)
- UserStyle に配列演算子が追加され、UserStyle.Option にキャスト ヘルパーが追加されました。(I35036)
- UserStyle ワイヤ形式によって、マーシャリングのバグを修正し、不安定な非表示 API の一部を変更しました。(I8be09)
- UserStyle 内に単一のアプリケーション固有の文字列を格納できるように、CustomValueUserStyleSetting を追加しました。デフォルトのウォッチフェイス エディタは、この値を無視します。(Ic04d2)
- アップグレードできない R および古いバージョンの Android Wear OS のインテント エクストラには InstanceID が渡されません。これをサポートするために、InstancID を null にできるようになりました。(Id8b78)
- EditorRequest に、WatchFaceEditorContract.createIntent でコンポーネントとして設定されているエディタ ComponentName が追加されました。(I3cd06)
- ウォッチフェイスの EditorResult に、プレビュー ComplicationData が追加されました。呼び出し元は編集後にウォッチフェイスのスクリーンショットを撮ることができるようになります。(I2c561)
バグの修正
- toString() オーバーライドが UserStyle、UserStyleSetting、UserStyleSchema に追加されました。これらのクラスの操作が比較的スムーズになります。(I9f5ec)
バージョン 1.0.0-alpha06
2021 年 1 月 27 日
androidx.wear:wear-*:1.0.0-alpha06 がリリースされました。バージョン 1.0.0-alpha06 に含まれる commit については、こちらをご覧ください。
新機能
- 新しいライブラリ wear/wear-watchface-editor を導入しました。これにより、ウォッチフェイスのデベロッパーは(場合によっては OEM も)、スタイルおよびウォッチフェイスの追加機能のエディタを構築できます。SysUI は、新しい EditorSession クラスを使用して WatchFace の詳細にアクセスし、Activity.setWatchRequestResult で結果を記録するウォッチフェイスにインテントを送信します。これをサポートするため、ウォッチフェイス エディタがプレビュー ComplicationData をリクエストできるようにする ProviderInfoRetriever.requestPreviewComplicationData を追加しました。プレビュー ComplicationData の利点は、ライブデータと異なり、エディタをレンダリングする際の権限ダイアログの表示を考慮する必要がないことです(ただし、権限を有するプロバイダをユーザーが選択した場合も、権限の付与を求めるメッセージが表示されます)。
API の変更
- ComplicationProviderInfo に、プロバイダの ComponentName を示すフィールドが追加されました。このフィールドのサポートは後日 Wear OS に追加されますが、それまでは null になります。(Id8fc4)
- ProviderInfoRetriever.requestPreviewComplicationData を追加しました。これにより、ウォッチフェイス エディタでプレビュー ComplicationData をリクエストできます。これは、ライブのウォッチフェイスの追加機能が権限を必要とする場合にアクティブでない追加機能のプレビュー データを表示できるため、便利です。(I2e1df)
- ComplicationManager が WatchFace コンストラクタのオプションのパラメータになり、これを使用できるように引数の順序が変更されました。(I66c76)
- ウォッチフェイスの追加機能にオプションのバンドルを追加しました。これは、プロバイダ選択アクティビティを起動するために送信されるインテントにセットが結合される場合に使用します。(Ifd4ad)
- ウォッチフェイスと SysUi でホストされるエディタをサポートする新しい
wear-watchface-editorライブラリを追加しました。SysUI は、インテントの送信によりこれらのエディタを起動します。ウォッチフェイス アクティビティ サービスは、新しい EditorSession クラスを使用して WatchFace の詳細にアクセスし、Activity.setWatchRequestResul で結果を記録できます。(I2110d) - LayerMode.DRAW_HIGHLIGHTED の名前が LayerMode.DRAW_OUTLINED に変更され、RenderParameters.highlightComplicationId の名前が RenderParameters.selectedComplicationId に変更されました。これは、アウトラインに加えて、指定されたウォッチフェイスの追加機能にハイライトを描画します。(I90a40)
- ウォッチフェイスの作成の待機中にサービスが異常終了した場合に、WatchFaceControlClient.getOrCreateWallpaperServiceBackedInteractiveWatchFaceWcsClient の 's future が ServiceStartFailureException で解決されるようになりました。(I0f509)
- EditorSession.complicationPreviewData は ListenableFuture になりました。このデータの取得は非同期プロセスであるためです。(Iead9d)
バグの修正
- 有効なままになっている ComplicationOverlay と complicationBounds から使用されていないフィールドを削除しました。(I17b71)
バージョン 1.0.0-alpha05
2021 年 1 月 13 日
androidx.wear:wear-*:1.0.0-alpha05 がリリースされました。バージョン 1.0.0-alpha05 に含まれる commit については、こちらをご覧ください。
新機能
多くの場合、ウォッチフェイスは、不定個数の追加機能を表示する追加機能設定をサポートします。この設定を簡単に行えるように、ビルダーで setEnabled(false) を呼び出すことで、最初にウォッチフェイスの追加機能を無効にする機能をサポートするようになりました。ComplicationsUserStyleSetting を使用して、後で有効にできます。
API の変更
- ComplicationHelperActivity が int 配列ではなく
Collection<ComplicationType>を受け取るようになり、使いやすくなりました。(I1f13d) ProviderInfoRetriever.retrieveProviderInfoが正しくListenableFuture<ProviderInfo[]>を返すようになりました。(If2710)- ビルダーで setEnabled(false) を呼び出すことで、最初から無効にされた追加機能を作成できるようになりました。(Idaa53)
- WatchFaceState に、ヘッドレス インスタンスの場合にのみ true になる isHeadless プロパティが追加されました。(Ifa900)
- ComplicationDrawable で、ドローアブルの同期読み込みがオプションでサポートされるようになりました。スクリーンショットの API で使用されます。(I34d4a)
バージョン 1.0.0-alpha04
2020 年 12 月 16 日
androidx.wear:wear-*:1.0.0-alpha04 がリリースされました。バージョン 1.0.0-alpha04 に含まれる commit については、こちらをご覧ください。
新機能
- wear ウォッチフェイス ライブラリで、タイプごとに境界を設定できるようになりました。たとえば、ComplicationType.LONG_TEXT の場合には幅広い境界ボックスに切り替え、他のタイプの場合には小さな境界ボックスを使用できます。
API の変更
- Complication で、
Map<ComplicationType, RectF>をラップする ComplicationBounds を使用して、追加機能タイプごとのサイズをサポートするようになりました。(I1ebe7) - RenderParameters で、スクリーンショットで使用するハイライトの色合いを指定できるようになりました。(Iff42b)
- 境界の変更を除いて、追加機能に変更を加えるには、OS と同期させるため、ComplicationsUserStyleSetting の使用が必須になりました。(I8dc5d)
- Renderer はシールクラスになりました。これにより、CanvasRenderer と GlesRenderer が Renderer の内部クラスになりました。(Iab5d4、b/173803230)
- CanvasComplicationDrawable.drawHighlight の名前が drawOutline に変更されました。ObservableWatchData にいくつかの不足していた UiThread アノテーションが追加されました。ScreenState が WatchState から完全に削除されました。(If1393)
- wear-watchface の最小 API レベルが 25 になりました。なお、ハードウェア キャンバスのサポートには API レベル 26 以上が必要です。(Ic9bbd)
- InteractiveWatchFaceWcsClient に getComplicationIdAt ヘルパーが追加されました。(I05811)
- wear-watchface-client の API レベルが 25 に下げられましたが、スクリーン ショット API には API レベル 27 が必要です。(Id31c2)
バグの修正
- ComplicationState で、追加機能の現在の ComplicationData の ComplicationType を公開するようになりました。(I9b390)
- InteractiveWatchFaceWcs に、指定された追加機能を一時的にハイライト表示する bringAttentionToComplication メソッドが追加されました。(I6d31c)
InteractiveWatchFaceWcsClient#setUserStyleに Map<string, string=""> を受け取るオーバーロードを追加しました。これにより、UserStyle の構築に必要な追加の IPC のラウンドトリップを回避できる可能性があります。(I24eec)
バージョン 1.0.0-alpha03
2020 年 12 月 2 日
androidx.wear:wear-*:1.0.0-alpha03 がリリースされました。バージョン 1.0.0-alpha03 に含まれる commit については、こちらをご覧ください。
新機能
Complication クラスに compicationData プロパティが追加され、ウォッチフェイスが ComplicationData の変更を監視できるようになりました。これにより、追加機能のタイプに応じて追加機能のサイズを変更できるようになります。
Renderer.interactiveDrawModeUpdateDelayMillis に代入することで、可変フレームレートがサポートされるようになりました。これにより、1 秒ごとに短いアニメーションを表示するウォッチフェイスでは、アニメーションを表示していないときにスリープ状態に移行することで電力を節約できる可能性があります。
API の変更
BACKGROUND_IMAGEの名前が、関連するクラスとともにPHOTO_IMAGEに変更されました。このタイプの追加機能は、背景だけに使用されるわけではないためです。(I995c6)- DefaultComplicationProviderPolicy に適切なアノテーションである IntDefs を付けました。(I3b431)
- 隠蔽されていた TimeDependentText クラスは、ContentDescriptionLabel から公開されなくなりました。代わりに、指定した時間にテキストを取得するためのアクセサーを追加します。(Ica692)
- ObservableWatchData のコンストラクタが internal になりました。(I30121、b/173802666)
- Complication に compicationData が追加され、ウォッチフェイスから ComplicationData の変更を監視できるようになりました。また、Complication に、指定された日時でレンダリングすべきものがあるかどうかを判断するために使用できる isActiveAt 呼び出しを追加しました。(Ic0e2a)
- 空の
SharedMemoryImageが公開 API からなくなりました。(I7ee17) WatchFace.overridePreviewReferenceTimeMillisに IntRange アノテーションを付け、ゲッターとセッターの名前が一貫したものになりました。(Ia5f78)- わかりやすくするために、
Complication.BuilderをComplication.createRoundRectComplicationBuilderまたはComplication.createBackgroundComplicationBuilderで作成するようになりました(I54063) - 追加機能によって消費されないタップを WatchFace で監視できるようにする WatchFace.TapListener を追加しました。(Ic2fe1、b/172721168)
- WatchFace が、
Renderer.interactiveDrawModeUpdateDelayMillisへの代入により可変フレームレートに対応しました。これにより、アニメーションを行っていないときにスリープ状態になり、電池を節約できます。(I707c9) - WatchFace.Builder は不要になり、invalidate() と interactiveUpdateRateMillis が Renderer に移動されました。(I329ea)
- Java との相互運用性のために、WatchState にあるブール値のプロパティのゲッターの名前を変更しました(I6d2f1)
- 整合性を保つために、TapListener の名前を TapCallback に、InvalidateCallback の名前を InvalidateListener に変更しました。(I9414e)
- わかりやすくするために、Wear 2.0 のウォッチフェイス スタイル オプションを自身のクラスに移動しました。WatchFace.Builder のセッターに、対称性のある WatchFace クラスのゲッターが追加されました。(Iefdfc)
- InteractiveWatchFaceWcsClient と、壁紙サービスが接続してエンジンを作成した後で既存のインスタンスを取得するかインスタンスを作成する
WatchFaceControlClient.getOrCreateWallpaperServiceBackedInteractiveWatchFaceWcsClientを追加しました。(Id666e) - WatchFaceControlClient は、テストでモック化できるインターフェースになりました。(I875d9)
- HeadlessWatchFaceClient、InteractiveWatchFaceSysUiClientImpl、InteractiveWatchFaceWcsClient は、テストしやすいインターフェースとなりました。(I7cdc3)
wear-watchface-complications-renderingのメソッドにアノテーションを追加しました。(I0d65c)
バグの修正
- DeviceConfig から、
android.content.res.Configuration#isScreenRound()を複製していた画面形状を削除しました。(Ifadf4) UserStyleではなくMap<String, String>を受け取るように、WatchFaceControlClient.getOrCreateWallpaperServiceBackedInteractiveWatchFaceWcsClientを変更しました。これは、UserStyleはスキーマを知らずに作成することが困難で、スキーマはクライアントが作成した後でのみ取得できるためです。(Iea02a)InteractiveWatchFaceWcsClientを修正して、ワイヤ形式ではなくComplicationStateを使用するようにしました。(Icb8a4)- ウォッチフェイス エディタは組み込みクラスしか認識しないため、
UserStyleSettingsはシールクラスになりました。(I2d797)
バージョン 1.0.0-alpha02
2020 年 11 月 11 日
androidx.wear:wear-*:1.0.0-alpha02 がリリースされました。バージョン 1.0.0-alpha02 に含まれる commit については、こちらをご覧ください。
API の変更
ComplicationDetailsがComplicationStateと呼ばれるようになり、適切にラップされ、ウェアラブル サポート@ComplicationData.ComplicationTypeの使用は androidxComplicationTypeに移行されました。(I4dd36)- オプションの
highlightedComplicationIdパラメータを RenderParameters に追加しました。これにより、スクリーンショットで 1 つの追加機能のハイライト表示をリクエストできます。(I66ce9) ComplicationProviderService。整合性を保つために新しいスタイル追加機能 API を使用します(Id5aea)getPreviewReferenceTimeMillisがDeviceConfigから基準時間を取得するようになりました。(I779fe)- Renderer API サーフェスを簡略化しました。代わりに
SurfaceHolder.Callbackを使用して変更を監視できます。(I210db) CanvasComplicationRendererはRendererから拡張されていません。わかりやすくするために名前を変更しました。(Ibe880)
バグの修正
androidx.wear:wear-watchface-clientの最初のバージョン(I1e35e)- わかりやすくするために
GlesTextureComplication#rendererの名前を変更しました(Ib78f7) - わかりやすくするために
StyleCategoryの名前をStyleSettingに変更しました(I488c7)。 - API を簡潔にするために
UserStyleSchemaを追加しました(If36f8)
バージョン 1.0.0-alpha01
2020 年 10 月 28 日
androidx.wear:wear-complications-*:1.0.0-alpha01 と androidx.wear:wear-watchface-*:1.0.0-alpha01 がリリースされました。バージョン 1.0.0-alpha01 に含まれるコミットについては、こちらをご覧ください。
API の変更
- 公開 API で公開することを意図していなかったものを削除しました。(I41669)
androidx.wear:wear-complications-providerライブラリを作成しました。(I77f1f)- ComplicationsUserStyleCategory。追加機能を構成するための新しい推奨カテゴリ(I96909)
- wear-complication-data API を追加しました。(I7c268)
- 戻り値がブール値である関数に付く接頭辞が「get」ではなく「is」になりました(If36ff)
- API のアドバイスは、protected の使用を避けることです。そのため、このクラスはコンストラクタを介してパラメータを取り込むようにリファクタリングされました。(I61644)
- わかりやすくするために setBackgroundComplication の名前を変更しました。(I96fe3)
- ComplicationDrawable の isHighlighted とデータに Kotlin プロパティを使用します(I4dcc8)
- ComplicationRenderer.InvalidateCallback の代わりに Complication#invalidate() を追加しました(I4f4c6)
- これらの API は WearableSupport でサポートが終了し、今回削除されました。(Ib425c)
- Wear 2.0 のレガシー性を強調するように、一部の WatchFace ビルダー メソッドの名前を変更しました。(Idb775)
- wear / wear-watchface の最初のベータ版 API 候補(Id3981)
- API の最初のトラック バージョン。(Ie9fe6)
- ComplicationDrawable.BorderStyle IntDef を適切に非表示にし、整合性を保つために ComplicationStyle に移動しました。(I27f7a)
- 欠落していた ComplicationStyle メソッドのアノテーションを追加しました(I838fd)
- このライブラリには公開 API サーフェスがありません(I88e2b)
- すべてのスタイル カテゴリ オプション クラスが適切に最終版になりました。(Ib8323)
- API の最初のトラック バージョン。(I27c85)
バグの修正
- 明示的な getComplicationPreviewData メソッドを持つように ComplicationProviderService を変更しました。(I4905f)
- MissingGetterMatchingBuilder の API lint チェックが androidx で有効になりました(I4bbea、b/138602561)
- wear-complications-rendering の名前を変更しました。(Ifea02)
- スタイル カテゴリの表示名が CharSequences になりました(I28990)
- 現在のテーマとスタイルの命名規則に合わせて、「Override」を「Overlay」に置き換えました。(I4fde9)
- わかりやすくするために、UserStyle#getOptions の名前を変更しました。(I695b6)
バージョン 1.2.0
バージョン 1.2.0
2021 年 9 月 15 日
androidx.wear:wear:1.2.0 がリリースされました。バージョン 1.2.0 に含まれる commit については、こちらをご覧ください。
1.1.0 以降の重要な変更
ビューに内接できる最大の円の曲率に沿って曲線テキストを簡単に記述するために、CurvedText コンポーネントを追加しました。使用例を次に示します。
<androidx.wear.widget.CurvedText android:layout_width="wrap_content" android:layout_height="wrap_content" android:text="example curved text" app:anchorAngleDegrees="180" app:anchorPosition="center" app:clockwise="false" style="@android:style/TextAppearance.Large" />
時計回りまたは反時計回りに子要素を 1 つずつ弧状に配置するために、ArcLayout コンテナを追加しました。子は、標準の Android ウィジェットでも、
ArcLayout.Widgetインターフェースを実装した「曲線状の」ウィジェットでも構いません。(I536da)使用例を以下に示します。<androidx.wear.widget.ArcLayout android:layout_width="match_parent" android:layout_height="match_parent" app:anchorPosition="center"> <ImageView android:layout_width="20dp" android:layout_height="20dp" android:src="@drawable/ic_launcher" /> <androidx.wear.widget.CurvedText android:layout_width="match_parent" android:layout_height="match_parent" android:text="Curved Text" style="@android:style/TextAppearance.Small" android:padding="2dp" /> </androidx.wear.widget.WearArcLayout>
新しいレイアウト コンテナ DismissibleFrameLayout を追加しました。これは、[戻る] ボタンで閉じる操作やスワイプで閉じる操作を処理するもので、アクティビティ内での使用を意図しています。閉じる操作を行うには、リスナーを少なくとも 1 つ追加する必要があります。リスナーは通常、包含するビューまたはフラグメントを現在のアクティビティから削除します。setSwipeDismissible(boolean) と setBackButtonDismissible(boolean) を使用すると、この機能を直接制御できます。この新しいレイアウトは既存の SwipeDismissFrameLayout を置き換えるものです。
デバイスが AmbientModeSupport クラスの「常に画面表示モード」を終了したときに、Activity を「自動的に再開」することができることを通知できるようになりました。この機能は以前、サポートが終了している、WearableSupportLibrary の WearableActivity クラスで使用できました。(I336ab)
ウェアラブル サポート ライブラリから ApparelCalendarContract クラスを移行しました。この API は CalendarContract で取得できるデータのサブセットを提供しますが、ウェアラブル デバイスと自動的に同期されます。(I6f2d7)
指定された Wear デバイスが中国向けかどうかを判断するための新しい API
WearTypeHelperをandroidx.wear.utilsに追加しました。(Ib01a9)ユーザー補助機能を
androidx.wear.widget.ConfirmationOverlayに追加し、設定されていればメッセージを読み上げ、その後にアニメーションの説明を表示するようにしました。(I524dd)メッセージが提供されない場合に ConfirmationActivity がクラッシュするバグを修正しました。(Ie6055)
RecyclerView を水平方向にスクロールすると、
WearableDrawerLayoutですべてのインタラクションが参照されるバグを修正しました。(I24c7f)
バージョン 1.2.0-rc01
2021 年 9 月 1 日
androidx.wear:wear:1.2.0-rc01 がリリースされました。最後のベータ版からの変更はありません。バージョン 1.2.0-rc01 に含まれる commit については、こちらをご覧ください。
バージョン 1.2.0-beta01
2021 年 8 月 18 日
androidx.wear:wear:1.2.0-beta01 がリリースされました。バージョン 1.2.0-beta01 に含まれる commit については、こちらをご覧ください。
バグの修正
- メッセージが提供されない場合に ConfirmationActivity がクラッシュするバグを修正しました。(Ie6055)
バージョン 1.2.0-alpha13
2021 年 8 月 4 日
androidx.wear:wear:1.2.0-alpha13 がリリースされました。バージョン 1.2.0-alpha13 に含まれる commit については、こちらをご覧ください。
API の変更
WearTypeHelper.isChinaDeviceの名前をWearTypeHelper.isChinaBuildに変更しました。(I47302)
バグの修正
- ユーザー補助機能を
androidx.wear.widget.ConfirmationOverlayに追加し、設定されていればメッセージを読み上げ、その後にアニメーションの説明を表示するようにしました。(I524dd)
バージョン 1.2.0-alpha12
2021 年 7 月 21 日
androidx.wear:wear:1.2.0-alpha12 がリリースされました。バージョン 1.2.0-alpha12 に含まれる commit については、こちらをご覧ください。
API の変更
- 指定された Wear デバイスが中国向けかどうかを判断するための新しい API
WearTypeHelperをandroidx.wear.utilsに追加しました。(Ib01a9)
バージョン 1.2.0-alpha11
2021 年 6 月 30 日
androidx.wear:wear:1.2.0-alpha11 がリリースされました。バージョン 1.2.0-alpha11 に含まれる commit については、こちらをご覧ください。
バグの修正
- RecyclerView を水平方向にスクロールすると、
WearableDrawerLayoutですべてのインタラクションが参照されるバグを修正しました。(I24c7f)
バージョン 1.2.0-alpha10
2021 年 6 月 2 日
androidx.wear:wear:1.2.0-alpha10 がリリースされました。バージョン 1.2.0-alpha10 に含まれる commit については、こちらをご覧ください。
新機能
- alpha10 では、Curved Text と ArcLayouts でユーザー補助機能のサポートが向上しています。また、API を明確にするために、DismissibleFrameLayout に軽微な名前変更を加えました。
API の変更
DismissibleFrameLayoutの以下のメソッドの名前を変更しました。(Ib195e)Callback#onDismissed->Callback#onDismissedFinishedisSwipeDismissible->isDismissableBySwipeisBackButtonDismissible->isDismissableByBackButton
- 以下のメソッドは final になりました(Ib195e)。
setBackButtonDismissiblesetSwipeDismissibleregisterCallbackunregisterCallback
バグの修正
バージョン 1.2.0-alpha09
2021 年 5 月 18 日
androidx.wear:wear:1.2.0-alpha09 がリリースされました。バージョン 1.2.0-alpha09 に含まれるコミットについては、こちらをご覧ください。
API の変更
- テキストの書体と太字 / 斜体スタイルを設定する新しい関数
CurvedTextView.setTypeface()(TextViewの関数と同様)を追加しました。(I4653c) WearArcLayoutの名前をArcLayoutに変更し、WearCurvedTextの名前をCurvedTextに変更し、WearArcLayout.ArcLayoutWidgetの名前をArcLayout.Widgetに変更しました。(I6e5ce)ArcLayout.Widgetで、getThicknessPxの名前をgetThicknessに変更しました。ArcLayout.LayoutParamsの縦方向配置の定数の名前が、以前のVALIGN_ではなくVERTICAL_ALIGN_で始まるようになりました。
CurvedTextViewで、メソッドsetMinSweepDegreesおよびsetMaxSweepDegreesがsetSweepRangeDegreesに置き換えられました。(I7a9d9)
バージョン 1.2.0-alpha08
2021 年 5 月 5 日
androidx.wear:wear:1.2.0-alpha08 がリリースされました。バージョン 1.2.0-alpha08 に含まれる commit については、こちらをご覧ください。
API の変更
- コードの明瞭性を高めるために、いくつかの angle パラメータと戻り値の型に
@FloatRangeアノテーションを追加しました。(I430dd) - インターフェース
WearArcLayout.ArcLayoutWidgetで、メソッドinsideClickAreaの名前が isPointInsideClickArea に変更されました。(Ia7307)
バージョン 1.2.0-alpha07
2021 年 3 月 24 日
androidx.wear:wear:1.2.0-alpha07 がリリースされました。バージョン 1.2.0-alpha07 に含まれる commit については、こちらをご覧ください。
バグの修正
- 高さが幅よりも大きい画面サイズの使用が原因で発生する、WearArcLayout 内部の曲線でない子に関するエラーを修正しました。このような曲線でない子が、すべての画面タイプで弧の中に正しく配置されるようになりました。
バージョン 1.2.0-alpha06
2021 年 1 月 27 日
androidx.wear:wear:1.2.0-alpha06 がリリースされました。バージョン 1.2.0-alpha06 に含まれる commit については、こちらをご覧ください。
API の変更
- Ongoing Activities ライブラリを新しいサブライブラリ wear-ongoing に移行しました。現在、クラスは androidx.wear.ongoing パッケージ(以前は androidx.wear.ongoingactivities)に存在します。(I7c029)
- WearableCalendarContract クラスをウェアラブル サポート ライブラリから AndroidX に移行しました。この API は CalendarContract で取得できるデータのサブセットを提供しますが、ウェアラブル デバイスと自動的に同期されます。(I6f2d7)
バグの修正
- DismissableFrameLayout で、戻るボタンを閉じる機能をデフォルトで無効にしました。これは、ウェアラブル デバイスで全画面表示を元に戻す主な方法として、スワイプで閉じる操作が保持されるためです。(Ic24e3)
- WearArcLayout で子の表示を処理する際のいくつかの問題を修正しました(Icf912)
バージョン 1.2.0-alpha05
2021 年 1 月 13 日
androidx.wear:wear:1.2.0-alpha05 がリリースされました。バージョン 1.2.0-alpha05 に含まれる commit については、こちらをご覧ください。
バグの修正
- AmbientModeSupport クラスの javadoc を更新し、このクラスの一般的な使用例を良く表すサンプル スニペットを追加しました。
バージョン 1.2.0-alpha04
2020 年 12 月 16 日
androidx.wear:wear:1.2.0-alpha04 がリリースされました。バージョン 1.2.0-alpha04 に含まれる commit については、こちらをご覧ください。
API の変更
- デバイスが AmbientModeSupport クラスの「常に画面表示モード」を終了したときに、Activity を「自動的に再開」することができることを通知できるようになりました。この機能は以前、サポートが終了している、WearableSupportLibrary の WearableActivity クラスで使用できました。(I336ab)
- OngoingActivity
- OngoingActivity の作成時にカテゴリを設定できるようになりました(例:
OngoingActivitiy.Builder.getCategory(String))。 - OngoingActivityData に、OngoingActivity 作成時刻のタイムスタンプ(
OngoingActivityData.getTimestamp())が含まれるようになりました - (I91cb4)
- OngoingActivity の作成時にカテゴリを設定できるようになりました(例:
- レイアウト パラメータを変更して MarginLayoutParams を拡張することにより、WearArcLayout の子にマージンを設定することができるようになりました(つまり、WearArcLayout.LayoutParams が android.view.ViewGroup.MarginLayoutParams を拡張)。(I2cd88)
- WearCurvedTextView のアンカータイプのデフォルトを
WearArcLayout.ANCHOR_CENTERに変更しました(以前はWearArcLayout.ANCHOR_START)。これにより、弧レイアウトと曲線テキストのコントラクトが単純化されます。曲線テキストはデフォルトで上部に X 軸方向で中央揃えされて描画され、親の弧レイアウトは必要に応じて回転できるためです。(I105ff)
バージョン 1.2.0-alpha03
2020 年 12 月 2 日
androidx.wear:wear:1.2.0-alpha03 がリリースされました。バージョン 1.2.0-alpha03 に含まれる commit については、こちらをご覧ください。
新機能
新しいレイアウト コンテナ DismissibleFrameLayout は、[戻る] ボタンで閉じる操作やスワイプで閉じる操作を処理するもので、アクティビティ内での使用を意図したものです。閉じる操作を行うには、リスナーを少なくとも 1 つ追加する必要があります。リスナーは通常、包含するビューまたはフラグメントを現在のアクティビティから削除します。setSwipeDismissible(boolean) と setBackButtonDismissible(boolean) を使用すると、この機能を直接制御できます。この新しいレイアウトは既存の SwipeDismissFrameLayout を置き換えるものです。
曲線ウィジェットがタッチイベントを処理するようになりました。WearArcLayout 内の通常のウィジェットは、すべてのタッチイベントをウィジェットの座標空間に変換された状態で受け取ります。WearCurvedTextView は、WearArcLayout 内にあるかどうかにかかわらず、onClick ハンドラと onLongClick ハンドラを設定できます。
進行中アクティビティのクラスは、カスタムのシリアル化 / シリアル化解除を使用するのではなく VersionedParcelables になりました。静的なアイコンとタッチ インテントが必須になりました。
API の変更
- WearCurvedTextView の属性「sweepDegrees」は、このウィジェットを柔軟にレイアウトできるように、minSweepDegrees と maxSweepDegrees に分割されています。
バージョン 1.2.0-alpha02
2020 年 11 月 11 日
androidx.wear:wear:1.2.0-alpha02 がリリースされました。バージョン 1.2.0-alpha02 に含まれるコミットについては、こちらをご覧ください。
今回のリリースで、新しい「Ongoing Activities API」が初めて追加されます。デベロッパーはこの API を使用して、フィットネス エクササイズやメディア再生セッションなど、長時間実行されるアクティビティが進行中であることをユーザーに通知できます。これにより、ウォッチフェイスまたはアプリ ランチャーに表示する「走った距離と時間」や「現在再生中のトラック」などのステータスを定期的に更新できます。この機能は、進行中のアクティビティ機能が有効にした今後のデバイスをターゲットとしています。
API の変更
- 進行中のアクティビティ用の新しい API。「サポートされていないデバイス」では no-op です。(I69a31)
バージョン 1.2.0-alpha01
2020 年 10 月 28 日
androidx.wear:wear:1.2.0-alpha01 がリリースされました。バージョン 1.2.0-alpha01 に含まれる commit については、こちらをご覧ください。
新機能
- ビューに内接できる最大の円の曲率に沿って曲線テキストを簡単に記述するために、WearCurvedTextView コンポーネントを追加しました。使用例を次に示します。
<androidx.wear.widget.WearCurvedTextView
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="example curved text"
app:anchorAngleDegrees="180"
app:anchorPosition="center"
app:clockwise="false"
style="@android:style/TextAppearance.Large"
/>

- 時計回りまたは反時計回りに子要素を 1 つずつ弧状に配置するために、WearArcLayout コンテナを追加しました。子は、標準の Android ウィジェットでも、ArcLayoutWidget インターフェースを実装した「曲線状の」ウィジェットでも構いません。使用例を次に示します。
<androidx.wear.widget.WearArcLayout
android:layout_width="match_parent"
android:layout_height="match_parent"
app:anchorPosition="center">
<ImageView
android:layout_width="20dp"
android:layout_height="20dp"
android:src="@drawable/ic_launcher"
/>
<androidx.wear.widget.WearCurvedTextView
android:layout_width="match_parent"
android:layout_height="match_parent"
android:text="Curved Text"
style="@android:style/TextAppearance.Small"
android:padding="2dp"
/>
</androidx.wear.widget.WearArcLayout>

(I536da)
Wear-Input 1.2
バージョン 1.2.0
2025 年 9 月 10 日
androidx.wear:wear-input:1.2.0 と androidx.wear:wear-input-testing:1.2.0 がリリースされました。バージョン 1.2.0 にはこれらの commit が含まれています。
1.1.0 以降の重要な変更:
- 物理ボタンの位置の定数を公開しました。
android.app.RemoteInputで Wear 固有のエクストラを設定するためのWearableRemoteInputExtenderを追加しました(絵文字入力の有効化など)。
バージョン 1.2.0-rc01
2025 年 8 月 27 日
androidx.wear:wear-input:1.2.0-rc01 と androidx.wear:wear-input-testing:1.2.0-rc01 がリリースされました。最後のベータ版からの変更はありません。バージョン 1.2.0-rc01 には、これらの commit が含まれています。
バージョン 1.2.0-beta01
2025 年 7 月 30 日
androidx.wear:wear-input:1.2.0-beta01 と androidx.wear:wear-input-testing:1.2.0-beta01 がリリースされました。前回のアルファ版からの重要な変更はありません。バージョン 1.2.0-beta01 にはこれらの commit が含まれています。
バージョン 1.2.0-alpha04
2025 年 7 月 16 日
androidx.wear:wear-input:1.2.0-alpha04 と androidx.wear:wear-input-testing:1.2.0-alpha04 がリリースされました。バージョン 1.2.0-alpha04 には、これらの commit が含まれています。
新機能
- 画面に対する物理ボタンの位置を計算する際に、画面の回転を考慮します。(87a57e)
API の変更
- wear-input で LOC* を LOCATION* に名前変更。(I5e879)
バグの修正
- このライブラリは、型使用である JSpecify nullness アノテーションを使用するようになりました。Kotlin デベロッパーは、次のコンパイラ引数を使用して、正しい使用法を適用する必要があります。
-Xjspecify-annotations=strict、-Xtype-enhancement-improvements-strict-mode(Icbfb9、b/326456246)
バージョン 1.2.0-alpha02
2021 年 9 月 29 日
androidx.wear:wear-input:1.2.0-alpha02 と androidx.wear:wear-input-testing:1.2.0-alpha02 がリリースされました。バージョン 1.2.0-alpha02 に含まれる commit については、こちらをご覧ください。
API の変更
WearableRemoteInputExtenderで、絵文字の描画オプションを表示するかどうかを設定するのに使用するdisallowEmojiの名前をsetEmojisAllowedに変更しました。(I28393)
バージョン 1.2.0-alpha01
2021 年 9 月 15 日
androidx.wear:wear-input:1.2.0-alpha01 と androidx.wear:wear-input-testing:1.2.0-alpha01 がリリースされました。バージョン 1.2.0-alpha01 に含まれる commit については、こちらをご覧ください。
API の変更
WearableButtonsからすべてのボタン位置の定数を公開しました。(Ibb12c)WearableRemoteInputExtenderクラスを追加して、Wear 固有のエクストラを android.app.RemoteInput に追加できるようにしました。(I01903)
Wear-Input 1.1.0
バージョン 1.1.0
2021 年 8 月 18 日
androidx.wear:wear-input:1.1.0 と androidx.wear:wear-input-testing:1.1.0 がリリースされました。バージョン 1.1.0 に含まれる commit については、こちらをご覧ください。
1.0.0 以降の重要な変更
RemoteInputIntentHelperを追加しました。- このクラスを使用して RemoteInput Intent を作成できます。カスタマイズ可能なアクティビティでは、こうしたインテントを使用して、ユーザーに入力を求めることができます。
バージョン 1.1.0-rc01
2021 年 8 月 4 日
androidx.wear:wear-input:1.1.0-rc01 と androidx.wear:wear-input-testing:1.1.0-rc01 がリリースされました。バージョン 1.1.0-rc01 に含まれる commit については、こちらをご覧ください。
androidx.wear:wear-input:1.1.0-beta01 および androidx.wear:wear-input-testing:1.1.0-beta01 以降で API の変更はありません。
バージョン 1.1.0-beta01
2021 年 7 月 21 日
androidx.wear:wear-input:1.1.0-beta01 と androidx.wear:wear-input-testing:1.1.0-beta01 がリリースされました。1.1.0-alpha03 からの変更はありません。バージョン 1.1.0-beta01 に含まれるコミットについては、こちらをご覧ください。
バージョン 1.1.0-alpha03
2021 年 6 月 30 日
androidx.wear:wear-input:1.1.0-alpha03 と androidx.wear:wear-input-testing:1.1.0-alpha03 がリリースされました。バージョン 1.1.0-alpha03 に含まれる commit については、こちらをご覧ください。
バグの修正
RemoteInputHelper.putRemoteInputsExtraを介してRemoteInputが追加された RemoteInput インテントが拒否されるバグを修正しました。
バージョン 1.1.0-alpha02
2021 年 5 月 18 日
androidx.wear:wear-input:1.1.0-alpha02 と androidx.wear:wear-input-testing:1.1.0-alpha02 がリリースされました。バージョン 1.1.0-alpha02 に含まれる commit については、こちらをご覧ください。
API の変更
- タイトル、キャンセル、確認、処理中のラベルを表すエクストラの get または put に使用される
RemoteInputIntentHelperのメソッドは、これらのラベルについてStringではなくCharSequenceを使用するようになりました。(I0e71f)
バージョン 1.1.0-alpha01
2021 年 1 月 27 日
androidx.wear:wear-input:1.1.0-alpha01 と androidx.wear:wear-input-testing:1.1.0-alpha01 がリリースされました。バージョン 1.1.0-alpha01 に含まれる commit については、こちらをご覧ください。
API の変更
- RemoteInputIntent クラスをウェアラブル サポート ライブラリから AndroidX に移行しました。移行されたクラスの名前は RemoteInputIntentHelper に変更されました。このクラスは、インテントの開始によるリモート入力をサポートするヘルパー関数を提供します。(I47cee)
Wear-Input 1.0.0
バージョン 1.0.0
2020 年 12 月 2 日
androidx.wear:wear-input:1.0.0 と androidx.wear:wear-input-testing:1.0.0 がリリースされました。バージョン 1.0.0 に含まれるコミットについては、こちらをご覧ください。
このリリースは 1.0.0-rc01 と同一です。
1.0.0 の主な機能
ウェアラブル サポート ライブラリから Jetpack に WearableButtons の機能を移行しました。
androidx.wear:wear-inputライブラリを使用して開発したアプリのテストをサポートするためにandroidx.wear.input.WearableButtonsProviderを実装するandroidx.wear.input.test.TestWearableButtonsProviderを追加しました。
バージョン 1.0.0-rc01
2020 年 11 月 11 日
androidx.wear:wear-input:1.0.0-rc01 と androidx.wear:wear-input-testing:1.0.0-rc01 がリリースされました。バージョン 1.0.0-rc01 に含まれる commit については、こちらをご覧ください。
このリリースは 1.0.0-beta01 と同一です。
バージョン 1.0.0-beta01
2020 年 10 月 28 日
androidx.wear:wear-input:1.0.0-beta01 と androidx.wear:wear-input-testing:1.0.0-beta01 がリリースされました。1.1.0-alpha01 からの変更はありません。バージョン 1.0.0-beta01 に含まれるコミットについては、こちらをご覧ください。
Wear-Input-Testing バージョン 1.0.0-alpha01
2020 年 10 月 14 日
androidx.wear:wear-input-testing:1.0.0-alpha01 がリリースされました。バージョン 1.0.0-alpha01 に含まれるコミットについては、こちらをご覧ください。
API の変更
androidx.wear:wear-inputライブラリを使用して開発したアプリのテストをサポートするためにandroidx.wear.input.WearableButtonsProviderを実装するandroidx.wear.input.test.TestWearableButtonsProviderを追加しました。(I0ed0c)
Wear-Input バージョン 1.0.0-alpha01
2020 年 9 月 2 日
androidx.wear:wear-input:1.0.0-alpha01 がリリースされました。バージョン 1.0.0-alpha01 に含まれる commit については、こちらをご覧ください。
新機能
ウェアラブル サポート ライブラリから Jetpack に WearableButtons の機能を移行しました。次回の Jetpack リリースの androidx.wear:wear-input-testing ライブラリに、追加のテストのサポートが提供されます。
バージョン 1.1.0
バージョン 1.1.0
2020 年 10 月 14 日
androidx.wear:wear:1.1.0 がリリースされました。バージョン 1.1.0 に含まれる commit については、こちらをご覧ください。
1.0.0 以降の主な変更
- Android の命名規則を遵守するため、
BoxInsetLayoutの boxedEdges 属性(現在はlayout_BoxedEdges)にlayout_接頭辞を追加しました。これにより、Android Studio でこの属性に関するリンターエラーが解消されます。(I4272f) - 確認ダイアログが表示される持続時間を設定できるように、オプションの
EXTRA_ANIMATION_DURATION_MILLISをConfirmationActivityに追加しました。(adb83ce、b/143356547) - アクション ドロワーが初めて開くまでアクション ドロワーのインフレーションを遅らせるように、
WearableActionDrawViewを更新しました。(I01026、b/163870541)
バージョン 1.1.0-rc03
2020 年 9 月 2 日
androidx.wear:wear:1.1.0-rc03 がリリースされました。バージョン 1.1.0-rc03 に含まれる commit については、こちらをご覧ください。
バグの修正
- アクション ドロワーが開いたときにコンテンツが表示されない問題を修正しました。(I01026、b/163870541)
バージョン 1.1.0-rc02
2020 年 6 月 24 日
androidx.wear:wear:1.1.0-rc02 がリリースされました。バージョン 1.1.0-rc02 に含まれる commit については、こちらをご覧ください。
バグの修正
- Android の命名規則を遵守するため、
BoxInsetLayoutの boxedEdges 属性(現在はlayout_boxedEdges)にlayout_接頭辞を追加しました。これにより、Android Studio でこの属性に関するリンターエラーが解消されます。
バージョン 1.1.0-rc01
2020 年 5 月 14 日
androidx.wear:wear:1.1.0-rc01 がリリースされました。.1.0-beta01 からの変更はありません。バージョン 1.1.0-rc01 に含まれる commit については、こちらをご覧ください。
バージョン 1.1.0-beta01
2020 年 4 月 29 日
androidx.wear:wear:1.1.0-beta01 がリリースされました。androidx.wear:wear:1.1.0-alpha01 からの変更はありません。バージョン 1.3.0-beta01 に含まれるコミットについては、こちらをご覧ください。
バージョン 1.1.0-alpha01
2020 年 4 月 15 日
androidx.wear:wear:1.1.0-alpha01 がリリースされました。バージョン 1.1.0-alpha01 に含まれる commit については、こちらをご覧ください。
API の変更
- 確認ダイアログが表示される持続時間を設定できるように、オプションの
EXTRA_ANIMATION_DURATION_MILLISをConfirmationActivityに追加しました。(adb83ce、134523c、b/143356547)
バグの修正
- アクション ドロワーが初めて開くまでアクション ドロワーのインフレーションを遅らせるように、
WearableActionDrawViewを更新しました。(5cd32f7)