워치 페이스 형식의 날씨 데이터

워치 페이스 형식에는 버전 2부터 날씨 데이터 지원이 포함됩니다. 이 데이터는 현재 조건부터 시간별 및 일일 예측에 이르기까지 다양한 측정항목과 기간을 포함합니다.

날씨는 표현식을 사용하여 액세스합니다. 예를 들어 <Text> 요소에서 현재 날씨 상태를 표시하려면 다음과 유사한 표현식을 사용합니다.

<Text>
  <Font family="SYNC_TO_DEVICE" size="32">
    <Template>Today's weather: %s
        <Parameter expression="[WEATHER.CONDITION_NAME]"/>
    </Template>
  </Font>
</Text>

제공 지역

시계 화면은 [WEATHER.*] 객체의 다른 멤버에 액세스하기 전에 항상 [WEATHER.IS_AVAILABLE] 값을 확인해야 합니다.

<Condition>
  <Expressions>
    <Expression name="is_weather_available">[WEATHER.IS_AVAILABLE]</Expression>
  </Expressions>
  <Compare expression="is_weather_available">
    <!-- Weather is available, so show the weather data. -->
  </Compare>
  <Default>
    <!-- Weather isn't available, so show an appropriate message. -->
  </Default>
</Condition>

또한 시계 화면은 날씨 데이터 로드 중 오류를 나타내는 [WEATHER.IS_ERROR]를 확인해야 합니다.

[WEATHER.IS_AVAILABLE][WEATHER.IS_ERROR]가 모두 true일 수 있습니다. 여기서 데이터가 오래되고 데이터 새로고침 시도는 실패합니다. 이 경우 새 데이터를 가져오는 중에 오류가 발생했음을 나타내는 표시기와 함께 사용 가능한 날씨를 표시할 수 있습니다.

데이터의 최신 상태

사용 가능한 데이터의 타임스탬프는 밀리초 단위의 Unix 에포크 타임스탬프인 [WEATHER.LAST_UPDATED]를 사용하여 액세스할 수 있습니다.

이 값은 날씨 샘플과 같이 icuText(,) 메서드를 사용하여 형식을 지정하여 인간이 읽을 수 있는 표현을 얻을 수 있습니다.

기상 상황

현재 조건은 [WEATHER.CONDITION]에서 확인할 수 있으며 사람이 읽을 수 있는 버전은 [WEATHER.CONDITION_NAME]입니다.

[WEATHER.CONDITION]의 값은 데이터 소스에서 확인할 수 있습니다. 예를 들어 4HEAVY_RAIN를 나타냅니다.

기타 측정항목

워치 페이스 형식은 [WEATHER.TEMPERATURE][WEATHER.UV_INDEX]와 같은 다양한 추가 측정항목을 제공합니다. 단위, 데이터 유형 등 사용 가능한 측정항목에 대한 자세한 내용은 데이터 소스 참조 페이지를 확인하세요.

시간별 및 일일 예보

다음과 같이 특정 시간 또는 미래의 예측 조건에 액세스할 수 있습니다.

  • [WEATHER.HOURS.1.CONDITION] - 지금부터 1시간 후의 예측 조건입니다.
  • [WEATHER.DAYS.2.CONDITION] - 지금부터 2일 후의 예측 조건입니다.

시간별 데이터는 최대 8시간 전에, 일일 데이터는 최대 5일 전에 사용할 수 있습니다. 그러나 시계 화면은 항상 예측 데이터의 사용 가능 여부를 확인해야 합니다. 시간이나 날짜 범위가 다른 시간 또는 기기에서 사용될 수 있습니다. 예를 들어 지금부터 1시간 이후의 예측 데이터를 사용할 수 있는지 확인하려면 [WEATHER.HOURS.1.IS_AVAILABLE]를 사용하세요.

일일 및 시간별 예측에는 [WEATHER.HOURS.<N>.TEMPERATURE][WEATHER.DAYS.<N>.CHANCE_OF_PRECIPITATION]와 같은 다양한 측정항목도 포함됩니다. 단위, 데이터 유형 등 사용 가능한 측정항목에 대한 자세한 내용은 데이터 소스 참조 페이지를 확인하세요.

날씨 데이터로 테스트

날씨 데이터를 가져오려면 Wear OS 기기가 기기 위치를 알고 있어야 합니다.

전력을 절약하기 위해 시계는 온보드 GPS 센서를 사용하여 날씨 예보의 위치를 확인하는 대신 연결된 휴대기기 또는 사용 가능한 네트워크의 위치를 사용합니다.

테스트에 위치 데이터를 사용하려면 다음 중 하나를 실행하세요.

adb unroot
adb shell cmd location set-location-enabled true
adb root
adb shell appops set 0 android:mock_location allow
adb shell cmd location providers add-test-provider gps
adb shell cmd location providers set-test-provider-enabled gps true
adb shell cmd location providers set-test-provider-location gps --location 37.773972,-122.431297

추가 세부정보

날씨 데이터에 액세스하고 렌더링하는 전체 예는 GitHub 샘플을 참조하세요.