スナップ

Jetpack Compose スタイルの API を使用して、リモート サーフェスのレイアウトを作成します。
最新の更新 安定版リリース リリース候補版 ベータ版リリース アルファ版リリース
2024 年 2 月 7 日 - - - 1.0.0-alpha05

依存関係の宣言

Glance への依存関係を追加するには、Google の Maven リポジトリをプロジェクトに追加する必要があります。詳しくは、Google の Maven リポジトリをご覧ください。

アプリまたはモジュールの build.gradle ファイルに、必要なアーティファクトの依存関係を追加します。

Groovy

dependencies {
    // For Glance support
    implementation "androidx.glance:glance:1.1.0-alpha01"
    // For AppWidgets support
    implementation "androidx.glance:glance-appwidget:1.1.0-alpha01"

    // 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-alpha01")
    
    // For AppWidgets support
    implementation("androidx.glance:glance-appwidget:1.1.0-alpha01")

    // 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-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 を追加しました。(I6344cb/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
  • 進行状況インジケーターに合わせて、isLinearProgressIndicatorisIndeterminateLinearProgressIndicatorisIndeterminateCircularProgressIndicator のフィルタを追加しました。ノードのサブ階層に特定のマッチャーと一致する子孫があるかどうかをテストする hasAnyDescendants フィルタが追加されました。(Ifd426
  • アサーションとフィルタを追加して、サービス、アクティビティ、ブロードキャストを開始するクリック アクションをテストできるようにします。入力要素がチェックされているかどうかのテストも含まれます。(I3041c

バージョン 1.0.0

バージョン 1.0.0-alpha06

2024 年 2 月 7 日

androidx.glance:glance-appwidget-preview:1.0.0-alpha06androidx.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 の変更

  • ラムダを受け入れるすべての要素にオプションのキーパラメータを追加しました。(Id96c1b/282445798
  • actionStartActivityActivityOptions バンドルの設定のサポートを追加しました。(I6a08d
  • d、e、f、g-paths の公開 API ファイルと試験運用版 API ファイルをマージしました。(I03646b/278769092
  • なし。API ファイルの変更は単にメソッドの並べ替えです。(I5fa95
  • GlanceAppWidgetReceiver リクエストに CoroutineContext を設定する API を追加しました。(I0a100
  • リスト内のすべてのアクションに使用される LazyColumnLazyVerticalGridActivityOptions を提供する新しい API を追加しました。(Id8d71

バグの修正

  • なし。API ファイルの変更は単にメソッドの並べ替えです。(I5fa95
  • Glance テキスト コンポーネント スタイルのデモ(Ie78a4

バージョン 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 のサポートを追加しました。
  • GlanceAppWidgetWorkManager セッション ベースの更新メカニズムに移動しました。AppWidgets の Glance を使用するユーザーは、古い Content メソッドの代わりに GlanceAppWidget.provideGlance をオーバーライドする必要があります。これはワーカーで行うようになったので、別のワーカーを用意することなくリソース、データベース、ネットワーク アイテムを読み込むのに適した場所になりました。

API の変更

  • ButtonCheckboxRadioButtonSwitch 用の *Defaults API を追加しました。Jetpack Compose のパターンと合わせて、ひと目でわかるようになっています。(I94828
  • 新しい Glance テンプレート モジュール(I94459
  • ResourceColorProvider をモジュール内部にしました。互換性を破る変更。ResourceColorProvider は動的なテーマ設定にのみ使用し、一部の色が動的リソースであり、一部が完全に解決される状況を避けるために必要です。(Ib0db7
  • TextStyle のオプションとして FontFamily を追加しました。(Ic19bab/274179837
  • Enum.valueOf の値パラメータ名が変更されました。(Ia9b89
  • 列挙型 valueOf から例外がスローされるようになりました。(I818fe
  • provideGlance をメインのエントリポイントとして使用するように GlanceAppWidget を更新しました。GlanceAppWidget.Content は非推奨になりました。(I202b5
  • 画像の色合いを指定するオプションを追加しました。(I26192b/212418562
  • 非推奨になった非表示関数の戻り値の型の null 可能性を拡大。(Ibf7b0
  • @JvmDefaultWithCompatibility アノテーションを追加しました。(I8f206
  • 未使用の SingleEntityTemplateData.displayHeader を削除しました。(I7f094
  • コールバックとしてラムダを使用するためのサポートを追加しました。(Ia0bbd
  • DayNightColorProvider を Glance モジュールに移動しました。(I1842cb/256934779
  • Templates から LocalColorProvider を削除します。テンプレートで GlanceTheme.colors が使用されるようになりました。(Ic15e2
  • Text(style: TextStyle) から null 可能性を削除しました。(I7123bb/237012816
  • デフォルトのテキスト色は黒です。null 可能性を削除しました。(I3072cb/237012816
  • 動的テーマを ColorProviders 独自のオブジェクトにする。ResourceColorProvider をモジュール内部にしました。(Id0e2db/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-alpha05androidx.glance:glance-appwidget:1.0.0-alpha05androidx.glance:glance-wear-tiles:1.0.0-alpha05 がリリースされました。バージョン 1.0.0-alpha05 に含まれる commit については、こちらをご覧ください

新機能

  • GlanceAppWidgetManagerrequestPinGlanceAppWidget を追加し、ホーム画面に Glance ベースのウィジェットを追加するようユーザーに促すプロンプトをアプリで表示できるようにしました。(Ic6e47
  • GlanceAppWidgetReceiverACTION_DEBUG_UPDATE を追加し、デベロッパーが、ユーザーに root 権限のあるデバイスとエミュレータ上で adb からウィジェットを強制的に更新できるようにしました。(I94ae1

API の変更

  • Glance テンプレートのヘッダー アクション ボタンを削除し、ユースケースを簡素化しました。(Ie4387
  • ブロック サブシステムの設計を再利用するように、単一エンティティ テンプレートをリファクタリングしました。(Iecd2c
  • Text/Image/Action ブロックの設計を使用するように、Glance リスト テンプレートをリファクタリングしました。(If0cc1
  • TextBlockImageBlock の優先度の数値の範囲を追加しました。(I73100

バグの修正

  • マテリアル 3 の依存関係を削除しました。(I28d1c
  • Glance テンプレートのレイアウトに余白やスペースを追加できるように、一貫性のあるシステムに移行しました。(I29773
  • 圧縮リリースによるビルドがブロックされていた、不正な形式の Proguard ルールを修正しました。

バージョン 1.0.0-alpha04

2022 年 8 月 10 日

androidx.glance:glance:1.0.0-alpha04androidx.glance:glance-appwidget:1.0.0-alpha04androidx.glance:glance-wear-tiles:1.0.0-alpha04 がリリースされました。バージョン 1.0.0-alpha04 に含まれる commit については、こちらをご覧ください

新機能

  • ボタンの色分け機能を追加しました。
  • コンパイル時のチェックに役立つ GlanceComposable アノテーションを追加しました。
  • Wear 固有の Glance 機能を追加しました。

API の変更

  • Glance Gallery Data API と簡略ビューを更新しました。(Ibc7a8
  • ボタンを設定するための ButtonColors を追加しました。(Iea88db/236305351
  • ColorProvider.resolve の名前を ColorProvider.getColor に変更しました。(Ic9dfe
  • TextStylecopy() メソッドを追加しました。(I9aef6
  • Glance のテーマの一部として使用できる ColorProviders クラスを追加しました。(I848b9b/237012816
  • リストのスタイルと折りたたみビューにリスト テンプレートのサポートを追加しました。(I50cdc
  • GlanceModiierGlanceCurvedModifier にセマンティクスを追加しました。(Ifda7e
  • GlanceComposable アノテーションを追加しました。(I5dbf0
  • Glance テンプレートをメインの Glance プロジェクトに移動しました。(I9db94
  • ColorProvider.resolve() を追加しました。(Ife532b/214733442
  • 既存の appWidgetId から GlanceId を取得する、または設定アクティビティからインテントを取得する、新しいメソッドを追加しました。(Icb70cb/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 を作成します。また curvedLinecurvedSpacer を追加しました。これは proto タイルでそれぞれ ArcLineArcSpacer に変換されます。(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
  • SingleEntityTemplateColorProvider を使用します(I01ee0
  • テンプレート クラス名を更新しました(I3720e
  • LinearProgressIndicatorCircularProgressIndicator コンポーザブルを追加しました。(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 コンポーザブルとして、CurvedRowCurvedText があります。
  • TimelineMode.SingleEntryTimelineMode.TimeBoundEntries を定義することで、タイルのさまざまなタイムライン モードを処理できます。
  • ローカル コンポジション LocalTimeInterval は特定の時間間隔を参照します。
  • BorderModifer は、要素の周囲に枠線を付ける GlanceModifier です。

また、今回のリリースでは、AppWidget Glance に進行状況インジケーターも追加しました。

API の変更

  • LinearProgressIndicatorCircularProgressIndicator コンポーザブルを追加しました。(Ie116b
  • actionStartBroadcastReceiveractionSendBroadcast に変更しました。(I7d555
  • GlanceAppWidget onDelete コールバックにコンテキストを渡すようにしました。(I4c795

バグの修正

  • 空の OPTIONS_APPWIDGET_SIZES が存在する場合の処理を修正しました。(I01f82

バージョン 1.0.0-alpha01

2021 年 12 月 15 日

androidx.glance:glance:1.0.0-alpha01androidx.glance:glance-appwidget:1.0.0-alpha01androidx.glance:glance-appwidget-proto:1.0.0-alpha01 がリリースされました。バージョン 1.0.0-alpha01 に含まれる commit については、こちらをご覧ください

初回リリースの機能

  • Glance の初回リリースには、Compose Runtime を使用して AppWidget を作成する最初の API セットと、「Glanceables」に最適化された新しいコンポーザブルのセットが含まれています。

機能