Эй, ребята! Возьмите чашку кофе ☕️ и давайте создадим виджет списка контактов, используя Jetpack Glance, предоставленный Google.

Что такое Взгляд?
Jetpack Glance — это платформа для создания небольших, легких и эффективных виджетов приложений с использованием API Kotlin. Он предназначен для отображения информации, которую пользователи должны знать с первого взгляда .
Что будем строить?
Как я упоминал в начале, мы создадим виджет списка контактов. Вот как это будет выглядеть.

Настраивать
Давайте добавим зависимости в модуль вашего приложения на основе необходимых вам функций.
dependencies {
// For AppWidgets support
implementation("androidx.glance:glance-appwidget:1.0.0-beta01")
// For interop APIs with Material 2
implementation("androidx.glance:glance-material:1.0.0-beta01")
// For interop APIs with Material 3
implementation("androidx.glance:glance-material3:1.0.0-beta01")
}
Создание виджета списка контактов
Создайте новый файл .kt с именем ContactListWidget . Первое, что нам нужно сделать, это наследоваться от GlanceAppWidget. После этого переопределите функцию provideGlance. Здесь мы создадим пользовательский интерфейс виджета.
Откройте блок provideContent, этот метод очень похож на setContent и позволяет нам использовать компонуемые объекты Jetpack Compose.
override suspend fun provideGlance(context: Context, id: GlanceId) {
provideContent {
// ...
}
}
Перед созданием виджета давайте создадим для него тему.
Тема
Во-первых, мы должны создать файл colorScheme. В моем случае я просто удалил частную собственность из темы приложения, а затем добавил их сюда.
private val colorScheme = ColorProviders(
light = LightColorScheme,
dark = DarkColorScheme
)
После этого мы можем вызвать GlanceTheme и передать ему новый colorScheme.
override suspend fun…