スナップ
最新の更新 | 安定版リリース | リリース候補版 | ベータ版リリース | アルファ版リリース |
---|---|---|---|---|
2024 年 6 月 12 日 | 1.1.0 | - | - | - |
依存関係の宣言
Glance への依存関係を追加するには、Google の Maven リポジトリをプロジェクトに追加する必要があります。詳しくは、Google の Maven リポジトリをご覧ください。
アプリまたはモジュールの build.gradle
ファイルに、必要なアーティファクトの依存関係を追加します。
Groovy
dependencies { // For Glance support implementation "androidx.glance:glance:1.1.0" // For AppWidgets support implementation "androidx.glance:glance-appwidget:1.1.0" // For Wear-Tiles support implementation "androidx.glance:glance-wear-tiles:1.0.0-alpha05" } android { buildFeatures { compose true } composeOptions { kotlinCompilerExtensionVersion = "1.1.0-beta03" } kotlinOptions { jvmTarget = "1.8" } }
Kotlin
dependencies { // For Glance support implementation("androidx.glance:glance:1.1.0") // For AppWidgets support implementation("androidx.glance:glance-appwidget:1.1.0") // For Wear-Tiles support implementation("androidx.glance:glance-wear-tiles:1.0.0-alpha05") } android { buildFeatures { compose = true } composeOptions { kotlinCompilerExtensionVersion = "1.1.0-beta03" } kotlinOptions { jvmTarget = "1.8" } }
依存関係について詳しくは、ビルド依存関係の追加をご覧ください。
フィードバック
お寄せいただいたフィードバックは Jetpack 改善の参考にさせていただきます。新しい問題が見つかった場合や、このライブラリを改善するアイデアをお持ちの場合は、お知らせください。新しい問題を報告していただく前に、このライブラリの既存の問題をご確認ください。スターボタンをクリックすると、既存の問題に投票できます。
詳細については、Issue Tracker のドキュメントをご覧ください。
バージョン 1.1
バージョン 1.1.0
2024 年 6 月 12 日
androidx.glance:glance-*:1.1.0
がリリースされました。バージョン 1.1.0 に含まれる commit については、こちらをご覧ください。
1.0.0 以降の重要な変更
- Glance を安定版 1.1.0 に移動しました。
バージョン 1.1.0-rc01
2024 年 5 月 14 日
androidx.glance:glance-*:1.1.0-rc01
がリリースされました。バージョン 1.1.0-rc01 に含まれる commit については、こちらをご覧ください。
新機能
- Glance のプレビュー アノテーションに幅と高さのパラメータを追加しました。1.1.0 をリリース候補版に移行。
API の変更
- Scaffold に省略可能なパラメータを追加しました。(If753f)
- Glance の
@Preview
に幅と高さのパラメータを追加しました。(Ibabe8) - Glance Wear タイルのプレビューのサポートを削除しました。(I3850a)
FontStyle
のカスタム ウェイト値を設定するための API を追加しました。(I7390a)Viewfinder
のImplementationMode
列挙型の名前を変更し、基になる実装をより正確に反映し、TransformationInfo.sourceRotation
の固定定数を追加しました。(Ic6149)
バグの修正
- 下位互換性モードで
ViewGroups
のレンダリングの問題の原因となっていたバグを修正しました。(I8de92)
外部からの協力
- 試験運用版の
SharedTransitionScope
がクラスではなくインターフェースになりました。(Iaf856、b/338415048、b/338414702)
バージョン 1.1.0-beta02
2024 年 4 月 17 日
androidx.glance:glance-*:1.1.0-beta02
がリリースされました。このバージョンには、以前のリリースにはなかったソース JAR が含まれています。
バージョン 1.1.0-beta01
2024 年 4 月 3 日
androidx.glance:glance-*:1.1.0-beta01
がリリースされました。バージョン 1.1.0-beta01 に含まれる commit については、こちらをご覧ください。
バージョン 1.1.0-alpha01
2024 年 2 月 7 日
androidx.glance:glance-*:1.1.0-alpha01
がリリースされました。バージョン 1.1.0-alpha01 に含まれる commit については、こちらをご覧ください。
新機能
- UI Automator を必要としない Glance の単体テスト ライブラリ。ビューをインフレートすることなく、Glance コードを直接テストできる。
- 上位レベルのコンポーネントでレイアウトをシンプルにします。
- 新しい修飾子とテーマ オプション。
- コンポジションから RemoteView のフローを取得するための新しい API
runComposition
API の変更
- スナップショットのテーマに新しい
widgetBackground
カラーロールが追加されました。(Ia2ab8) GlanceAppWidget.runComposition
を追加しました。(I6344c、b/298066147)- 新しい
TopBar
コンポーネントを追加しました。(Ibd361) clickable
修飾子にオーバーライドを追加します。(Iacecf)- ボタンの色合いを調整するための新しい API を追加しました。これは 1.0 がリリースされるまでは試験運用中です。(I92523)
- テスト用に小さな分離されたコンポーザブルを提供する
provideComposable
や、提供されたコンテンツから Glance のコンポーザブル要素を見つけるonNode
など、GlanceAppWidgetUnitTest
のメソッドを呼び出すスコープを提供するrunGlanceAppWidgetUnitTest
を追加します。これにより、appWidget で個々のコンポーズ可能な関数の単体テストを記述して、特定の入力が与えられた場合、その関数が意図したとおりのコンポーズ可能な要素のセットを出力することを検証できます。(I2f682) - 単体テストで使用するために、セマンティクスに
testTag
修飾子を追加しました。(I8f62f) TitleBar
の更新 - テキストとアイコンを個別に着色できます。(Ia0a60)- スキャフォールド コンポーネントを追加しました。(I8a736)
actionRunCallack
をテストするhasActionRunCallbackClickAction
フィルタとassertHasActionRunCallbackClickAction
アサーションを追加しました。また、アクション関連のテストフィルタの省略形のバリアント関数(hasStartActivityClickAction<activityClass>(..)
、hasStartServiceAction<receiverClass>(..)
、hasSendBroadcastAction<receiverClass>(..)
)も追加されています。assertHasXXX
に対応する類似バリエーションを追加します。(Ieca63)- リリースされていない API を移動します。修飾子を内部からパブリックに変更しましたが、ライブラリ制限付きに変更しました。(If2a08)
- エラーが発生したときにデベロッパーがコードを実行できる
onCompositionError
メソッドを追加しました。(I9b56f) - ボタンとアイコンボタンの API をひと目で追加しました。(I0fd6f)
- 進行状況インジケーターに合わせて、
isLinearProgressIndicator
、isIndeterminateLinearProgressIndicator
、isIndeterminateCircularProgressIndicator
のフィルタを追加しました。ノードのサブ階層に特定のマッチャーと一致する子孫があるかどうかをテストするhasAnyDescendants
フィルタが追加されました。(Ifd426) - アサーションとフィルタを追加して、サービス、アクティビティ、ブロードキャストを開始するクリック アクションをテストできるようにします。入力要素がチェックされているかどうかのテストも含まれます。(I3041c)
バージョン 1.0.0
バージョン 1.0.0-alpha06
2024 年 2 月 7 日
androidx.glance:glance-appwidget-preview:1.0.0-alpha06
と androidx.glance:glance-preview:1.0.0-alpha06
がリリースされました。バージョン 1.0.0-alpha06 に含まれる commit については、こちらをご覧ください。
新機能
- メインの Glance モジュールに合わせてバージョンを更新しました。
バージョン 1.0.0
2023 年 9 月 6 日
androidx.glance:glance-*:1.0.0
がリリースされました。バージョン 1.0.0 に含まれる commit については、こちらをご覧ください。
1.0.0 の主な機能
- Glance を安定版 1.0.0 に移行する
バージョン 1.0.0-rc01
2023 年 7 月 26 日
androidx.glance:glance-*:1.0.0-rc01
がリリースされました。バージョン 1.0.0-rc01 に含まれる commit については、こちらをご覧ください。
1.0.0 の安定版リリースに向けて、Glance を rc01 に移動しました。
新機能
- より安定したアクション呼び出しのため、アクション ラムダにキーパラメータを追加しました。
startActivity
アクションにActvityOptions
に提供する機能を追加しました。- Android 14 のサポートが追加されました
API の変更
- ラムダを受け入れるすべての要素にオプションのキーパラメータを追加しました。(Id96c1、b/282445798)
actionStartActivity
のActivityOptions
バンドルの設定のサポートを追加しました。(I6a08d)- d、e、f、g-paths の公開 API ファイルと試験運用版 API ファイルをマージしました。(I03646、b/278769092)
- なし。API ファイルの変更は単にメソッドの並べ替えです。(I5fa95)
GlanceAppWidgetReceiver
リクエストにCoroutineContext
を設定する API を追加しました。(I0a100)- リスト内のすべてのアクションに使用される
LazyColumn
とLazyVerticalGrid
にActivityOptions
を提供する新しい API を追加しました。(Id8d71)
バグの修正
バージョン 1.0.0-beta01
2023 年 5 月 10 日
androidx.glance:glance-*:1.0.0-beta01
がリリースされました。バージョン 1.0.0-beta01 に含まれる commit については、こちらをご覧ください。
新機能
- ライブラリをベータ版に移行します。
GlanceTheme
を使用したテーマ設定のサポートにより、Glance のマテリアル 2 とマテリアル 3 のスタイルテーマをサポートするため、glance-material と gram-material3 モジュールを追加しました。- テキスト API に
FontFamily
のサポートを追加しました。 GlanceAppWidget
をWorkManager
セッション ベースの更新メカニズムに移動しました。AppWidgets
の Glance を使用するユーザーは、古いContent
メソッドの代わりにGlanceAppWidget.provideGlance
をオーバーライドする必要があります。これはワーカーで行うようになったので、別のワーカーを用意することなくリソース、データベース、ネットワーク アイテムを読み込むのに適した場所になりました。
API の変更
Button
、Checkbox
、RadioButton
、Switch
用の*Defaults
API を追加しました。Jetpack Compose のパターンと合わせて、ひと目でわかるようになっています。(I94828)- 新しい Glance テンプレート モジュール(I94459)
ResourceColorProvider
をモジュール内部にしました。互換性を破る変更。ResourceColorProvider
は動的なテーマ設定にのみ使用し、一部の色が動的リソースであり、一部が完全に解決される状況を避けるために必要です。(Ib0db7)TextStyle
のオプションとしてFontFamily
を追加しました。(Ic19ba、b/274179837)Enum.valueOf
の値パラメータ名が変更されました。(Ia9b89)- 列挙型
valueOf
から例外がスローされるようになりました。(I818fe) provideGlance
をメインのエントリポイントとして使用するようにGlanceAppWidget
を更新しました。GlanceAppWidget.Content
は非推奨になりました。(I202b5)- 画像の色合いを指定するオプションを追加しました。(I26192、b/212418562)
- 非推奨になった非表示関数の戻り値の型の null 可能性を拡大。(Ibf7b0)
@JvmDefaultWithCompatibility
アノテーションを追加しました。(I8f206)- 未使用の
SingleEntityTemplateData.displayHeader
を削除しました。(I7f094) - コールバックとしてラムダを使用するためのサポートを追加しました。(Ia0bbd)
DayNightColorProvider
を Glance モジュールに移動しました。(I1842c、b/256934779)- Templates から
LocalColorProvider
を削除します。テンプレートでGlanceTheme.colors
が使用されるようになりました。(Ic15e2) Text(style: TextStyle)
から null 可能性を削除しました。(I7123b、b/237012816)- デフォルトのテキスト色は黒です。null 可能性を削除しました。(I3072c、b/237012816)
- 動的テーマを
ColorProviders
独自のオブジェクトにする。ResourceColorProvider
をモジュール内部にしました。(Id0e2d、b/237012816) ImageSize
に未定義のカテゴリを追加します。(I2fa39)- 非推奨の
GlanceAppWidget.Content
関数を削除しました。(Ib05f6) - 修飾子をパラメータとして
AndroidRemoteViews
に追加します。(I515d4) GlanceAppWidget.compose
を追加して単体テストを簡素化しました。(Ie9b28)
バグの修正
- Glance のテキスト フォントのデモ ウィジェットを追加しました。(I5c3d7)
- 修飾子で
AndroidRemoteViews
のサイズを大きくしました。 - テーマカラーの不一致に関する問題を解決しました
- 競合を回避するためにすべてのリソースに接頭辞を追加
バージョン 1.0.0-alpha05
2022 年 10 月 5 日
androidx.glance:glance:1.0.0-alpha05
、androidx.glance:glance-appwidget:1.0.0-alpha05
、androidx.glance:glance-wear-tiles:1.0.0-alpha05
がリリースされました。バージョン 1.0.0-alpha05 に含まれる commit については、こちらをご覧ください。
新機能
GlanceAppWidgetManager
にrequestPinGlanceAppWidget
を追加し、ホーム画面に Glance ベースのウィジェットを追加するようユーザーに促すプロンプトをアプリで表示できるようにしました。(Ic6e47)GlanceAppWidgetReceiver
にACTION_DEBUG_UPDATE
を追加し、デベロッパーが、ユーザーに root 権限のあるデバイスとエミュレータ上で adb からウィジェットを強制的に更新できるようにしました。(I94ae1)
API の変更
- Glance テンプレートのヘッダー アクション ボタンを削除し、ユースケースを簡素化しました。(Ie4387)
- ブロック サブシステムの設計を再利用するように、単一エンティティ テンプレートをリファクタリングしました。(Iecd2c)
Text/Image/Action
ブロックの設計を使用するように、Glance リスト テンプレートをリファクタリングしました。(If0cc1)TextBlock
とImageBlock
の優先度の数値の範囲を追加しました。(I73100)
バグの修正
- マテリアル 3 の依存関係を削除しました。(I28d1c)
- Glance テンプレートのレイアウトに余白やスペースを追加できるように、一貫性のあるシステムに移行しました。(I29773)
- 圧縮リリースによるビルドがブロックされていた、不正な形式の Proguard ルールを修正しました。
バージョン 1.0.0-alpha04
2022 年 8 月 10 日
androidx.glance:glance:1.0.0-alpha04
、androidx.glance:glance-appwidget:1.0.0-alpha04
、androidx.glance:glance-wear-tiles:1.0.0-alpha04
がリリースされました。バージョン 1.0.0-alpha04 に含まれる commit については、こちらをご覧ください。
新機能
- ボタンの色分け機能を追加しました。
- コンパイル時のチェックに役立つ
GlanceComposable
アノテーションを追加しました。 - Wear 固有の Glance 機能を追加しました。
API の変更
- Glance Gallery Data API と簡略ビューを更新しました。(Ibc7a8)
- ボタンを設定するための
ButtonColors
を追加しました。(Iea88d、b/236305351) ColorProvider.resolve
の名前をColorProvider.getColor
に変更しました。(Ic9dfe)TextStyle
にcopy()
メソッドを追加しました。(I9aef6)- Glance のテーマの一部として使用できる
ColorProviders
クラスを追加しました。(I848b9、b/237012816) - リストのスタイルと折りたたみビューにリスト テンプレートのサポートを追加しました。(I50cdc)
GlanceModiier
とGlanceCurvedModifier
にセマンティクスを追加しました。(Ifda7e)GlanceComposable
アノテーションを追加しました。(I5dbf0)- Glance テンプレートをメインの Glance プロジェクトに移動しました。(I9db94)
ColorProvider.resolve()
を追加しました。(Ife532、b/214733442)- 既存の
appWidgetId
からGlanceId
を取得する、または設定アクティビティからインテントを取得する、新しいメソッドを追加しました。(Icb70c、b/230391946) GlanceComposable
アノテーションを追加しました。(I2c21f)GlanceAppWidget
の外部でコンポジションを実行するGlanceRemoteViews
を追加しました。(I18f92)ProgressIndicatorDefaults
の色を削除しました。(I40299)- API レビューのフィードバックに従って公開 API との整合性を保つため、
ActionCallback
の onRun メソッドの名前を onAction に変更しました。(Icfa57) - 地図を使用するように Glance テンプレートのレイアウトを変換しました。(I46bfd)
RadioButton
コンポーザブルを追加しました。(I4ecce)- Wear Tiles を作成するための
GlanceWearTiles
を追加しました。(Ia9f65) GlanceCurvedModifier
にクリック可能な要素を追加しました。(Iec2a0)CurvedRow
をスコープとして実装し、通常のコンポーザブル要素または曲線要素を追加する DSL を作成します。またcurvedLine
とcurvedSpacer
を追加しました。これは proto タイルでそれぞれArcLine
とArcSpacer
に変換されます。(Ib955b)- Tiramisu DP2 と一致するよう core と appcompat の null 可能性を更新しました。(I0cbb7)
- glance-wear-tiles での
RuncallbackAction
のサポートを追加しました。現時点では、パラメータなしのRunCallbackAction
のみがサポートされます。(Ide64a)
外部からの協力
- test-coroutines-lib の移行により :compose:ui:ui-test API(updateApi)を更新しました。(I3366d)
バージョン 1.0.0-alpha03
2022 年 2 月 23 日
androidx.glance:glance-*:1.0.0-alpha03
がリリースされました。バージョン 1.0.0-alpha03 に含まれる commit については、こちらをご覧ください。
新機能
- 状態定義をデフォルトの Preferences に簡略化しました。
API の変更
- 状態処理を、
PreferencesGlanceStateDefinition
をデフォルトの状態処理にすることで簡略化しました。GlanceAppWidget.updateAppWidgetState
を削除し、デフォルトでPreferences
を使用するupdateAppWidgetState
を導入しました。(I58963) - Glance TemplateText クラスを追加し、テンプレート デザインを更新しました。(I4e146)
- Freeform テンプレート用のアウトライン インフラストラクチャを追加しました。(If03d6)
SingleEntityTemplate
レイアウトの更新(If925d)LazyVerticalGrid
を追加しました(I5f442)SingleEntityTemplate
でColorProvider
を使用します(I01ee0)- テンプレート クラス名を更新しました(I3720e)
LinearProgressIndicator
とCircularProgressIndicator
コンポーザブルを追加しました。(Ie116b)
バグの修正
- 初期 glance テンプレートの実装、「単一アイテム テンプレート」データとサンプル テンプレート レイアウトの定義(I35837)
- タイル コンテンツをデフォルトで中央に揃えます(I264be)
- glance-wear-tiles での fillMaxSize / Width / Height のバグを修正しました(I0a39f)
バージョン 1.0.0-alpha02
2022 年 1 月 26 日
androidx.glance:glance-*:1.0.0-alpha02
がリリースされました。バージョン 1.0.0-alpha02 に含まれる commit については、こちらをご覧ください。
新機能
このリリースには、Compose ランタイムを使用して Wear Tiles を作成するための API セットと、「一目でわかる」ように最適化されたコンポーザブルが含まれています。
GlanceTileService
(コンポーズ可能な Content() 関数内でタイルを作成するサービス)を拡張することにより、Wear Tiles のサービスを宣言します。- Wear Tiles 専用の Glance コンポーザブルとして、
CurvedRow
とCurvedText
があります。 TimelineMode.SingleEntry
とTimelineMode.TimeBoundEntries
を定義することで、タイルのさまざまなタイムライン モードを処理できます。- ローカル コンポジション
LocalTimeInterval
は特定の時間間隔を参照します。 BorderModifer
は、要素の周囲に枠線を付けるGlanceModifier
です。
また、今回のリリースでは、AppWidget Glance に進行状況インジケーターも追加しました。
API の変更
LinearProgressIndicator
とCircularProgressIndicator
コンポーザブルを追加しました。(Ie116b)actionStartBroadcastReceiver
をactionSendBroadcast
に変更しました。(I7d555)GlanceAppWidget
onDelete コールバックにコンテキストを渡すようにしました。(I4c795)
バグの修正
- 空の OPTIONS_APPWIDGET_SIZES が存在する場合の処理を修正しました。(I01f82)
バージョン 1.0.0-alpha01
2021 年 12 月 15 日
androidx.glance:glance:1.0.0-alpha01
、androidx.glance:glance-appwidget:1.0.0-alpha01
、androidx.glance:glance-appwidget-proto:1.0.0-alpha01
がリリースされました。バージョン 1.0.0-alpha01 に含まれる commit については、こちらをご覧ください。
初回リリースの機能
- Glance の初回リリースには、Compose Runtime を使用して AppWidget を作成する最初の API セットと、「Glanceables」に最適化された新しいコンポーザブルのセットが含まれています。
機能
- GlanceAppWidget と GlanceAppWidgetReceiver を使用してアプリ ウィジェットを宣言します。
- Glance コンポーザブルの初期のセット(Box、Row、Column、Text、Button、LazyColumn、Image、Spacer)で UI を作成します。
- GlanceModifier メソッドを使用してコンポーザブルに修飾子を適用します。
- 事前定義された Action を使用してユーザー操作を処理します。
- ActionParameters で Action にパラメータを指定します。
- SizeMode.Single、SizeMode.Exact、または SizeMode.Responsive を定義することで、各種のサイズモードを処理します。
- GlanceStateDefinition を指定することで GlanceAppWidget の状態を維持します。
- LocalContext、LocalState、LocalGlanceId、LocalSize などのローカル コンポジション。
- AndroidRemoteViews Composable で、既存の RemoteViews と相互運用します。