Glance

Jetpack Compose 스타일의 API를 사용하여 원격 표면의 레이아웃을 빌드합니다.
최근 업데이트 공개 버전 출시 후보 버전 베타 버전 알파 버전
2022년 10월 5일 - - - 1.0.0-alpha05

종속 항목 선언

Glance의 종속 항목을 추가하려면 프로젝트에 Google Maven 저장소를 추가해야 합니다. 자세한 내용은 Google Maven 저장소를 읽어보세요.

다음과 같이 앱 또는 모듈의 build.gradle 파일에 필요한 아티팩트의 종속 항목을 추가합니다.

Groovy

dependencies {
    // For AppWidgets support
    implementation "androidx.glance:glance-appwidget:1.0.0-alpha05"

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

    // 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.0.0

버전 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에 포함된 커밋을 확인하세요.

새로운 기능

  • 앱이 홈 화면에 Glance 기반 위젯을 추가하기 위해 사용자에게 메시지를 표시할 수 있도록 GlanceAppWidgetManagerrequestPinGlanceAppWidget을 추가합니다. (Ic6e47)
  • 개발자가 루팅된 기기와 에뮬레이터의 adb에서 위젯을 강제로 업데이트할 수 있도록 ACTION_DEBUG_UPDATEGlanceAppWidgetReceiver에 추가합니다. (I94ae1)

API 변경사항

  • 사용 사례를 간소화하기 위해 Glance 템플릿에서 헤더 작업 버튼을 삭제합니다. (Ie4387)
  • Block 하위 시스템 설계를 재사용하도록 Single Entity Template을 리팩터링했습니다. (Iecd2c)
  • Text/Image/Action Block 디자인을 사용하도록 Glance List Template을 리팩터링했습니다. (If0cc1)
  • TextBlockImageBlock에 우선순위 번호 범위를 추가합니다. (I73100)

버그 수정

  • Material3 종속 항목을 삭제했습니다. (I28d1c)
  • Glance Template 레이아웃에서 여백 및 간격을 추가하기 위해 더 일관된 시스템으로 이동합니다. (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에 포함된 커밋을 확인하세요.

새로운 기능

  • 버튼 색상 지정 기능을 추가합니다.
  • 컴파일 시간을 더 잘 확인하기 위해 GlanceComposable 주석을 추가합니다.
  • Wear 전용 Glance 기능을 추가합니다.

API 변경사항

  • Glance Gallery Data API와 축소 뷰를 업데이트합니다. (Ibc7a8)
  • 버튼 구성을 위한 ButtonColors를 추가합니다. (Iea88d, b/236305351)
  • ColorProvider.resolveColorProvider.getColor로 이름을 바꿨습니다. (Ic9dfe)
  • TextStylecopy() 메서드를 추가합니다. (I9aef6)
  • Glance 테마의 일부로 사용할 수 있는 ColorProviders 클래스를 추가합니다. (I848b9, b/237012816)
  • 목록 스타일 및 축소 뷰에 목록 템플릿 지원을 추가합니다. (I50cdc)
  • GlanceModiierGlanceCurvedModifier에 시맨틱을 추가합니다. (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 카드 구성을 위한 GlanceWearTiles를 추가했습니다. (Ia9f65)
  • GlanceCurvedModifier에 클릭 가능 항목을 추가했습니다. (Iec2a0)
  • CurvedRow를 범위로 구현하고, DSL을 만들어 일반 컴포저블 또는 곡선 요소를 추가합니다. proto 카드에서 ArcLineArcSpacer로 변환되는 curvedLinecurvedSpacer도 추가했습니다. (Ib955b)
  • Tiramisu DP2와 일치하도록 코어 및 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에 포함된 커밋을 확인하세요.

새로운 기능

  • 환경설정 기본값의 상태 정의가 간소화되었습니다.

API 변경사항

  • PreferencesGlanceStateDefinition을 기본 상태로 처리하여 상태 처리를 간소화합니다. GlanceAppWidget.updateAppWidgetState를 삭제하고 기본적으로 Preferences를 사용하는 updateAppWidgetState를 도입했습니다. (I58963)
  • Glance TemplateText 클래스를 추가하고 템플릿 디자인을 업데이트했습니다. (I4e146)
  • 자유형 템플릿의 개요 인프라를 추가했습니다. (If03d6)
  • SingleEntityTemplate 레이아웃을 업데이트했습니다. (If925d)
  • LazyVerticalGrid가 추가되었습니다. (I5f442)
  • SingleEntityTemplate에서 ColorProvider를 사용합니다. (I01ee0)
  • 템플릿 클래스 이름을 업데이트했습니다. (I3720e)
  • LinearProgressIndicatorCircularProgressIndicator 컴포저블이 추가되었습니다. (Ie116b)

버그 수정

  • 초기 템플릿 구현으로 '단일 항목 템플릿' 데이터와 예시 템플릿 레이아웃을 정의했습니다. (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에 포함된 커밋을 확인하세요.

새로운 기능

이 버전에는 'Glanceable'에 최적화된 컴포저블을 Compose 런타임에 사용하여 Wear 타일을 빌드하기 위한 API 집합이 포함되어 있습니다.

  • 구성 가능한 Content() 함수에서 타일을 만드는 서비스인 GlanceTileService를 확장하여 Wear 타일 서비스를 선언합니다.
  • Glance 컴포저블의 Wear 타일: CurvedRow, CurvedText
  • TimelineMode.SingleEntryTimelineMode.TimeBoundEntries를 정의하여 타일의 다양한 타임라인 모드를 처리합니다.
  • LocalTimeInterval은 특정한 시간 간격을 나타내는 로컬 컴포지션입니다.
  • BorderModifer는 요소 주위에 테두리를 적용하는 GlanceModifier입니다.

또한 이 버전에서는 AppWidget Glance에 진행률 표시기가 추가됩니다.

API 변경사항

  • LinearProgressIndicatorCircularProgressIndicator 컴포저블이 추가되었습니다. (Ie116b)
  • actionStartBroadcastReceiveractionSendBroadcast로 변경합니다. (I7d555)
  • GlanceAppWidget onDelete 콜백에 컨텍스트를 전달합니다. (I4c795)

버그 수정

  • OPTIONS_APPATTRIBUTE_SIZES가 존재하지만 비어 있을 때의 처리 방법을 수정했습니다. (I01f82)

버전 1.0.0-alpha01

2021년 12월 15일

androidx.glance:glance:1.0.0-alpha01, androidx.glance:glance-appwidget:1.0.0-alpha01androidx.glance:glance-appwidget-proto:1.0.0-alpha01이 출시되었습니다. 버전 1.0.0-alpha01에 포함된 커밋을 확인하세요.

최초 출시의 기능

  • Glance의 첫 출시 버전에는 Compose Runtime을 사용하여 'Glanceable'에 최적화된 일련의 새로운 컴포저블을 포함하는 AppWidget을 빌드하기 위한 첫 번째 API 모음이 포함되어 있습니다.

기능