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

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

날씨는 표현식을 사용하여 액세스합니다. 예를 들어 현재 <Text> 요소에 기상 조건을 설정하려면 다음과 유사한 표현식을 사용하세요. 다음과 같습니다.

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

가용성

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

<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일 수 있습니다. 데이터가 오래되어 데이터 새로고침 시도가 실패했습니다 이러한 경우 사용 가능한 날씨가 나타날 수 있으며, 새 데이터를 가져오는 중에 오류가 발생했습니다.

데이터의 최신 상태

사용 가능한 데이터의 타임스탬프는 [WEATHER.LAST_UPDATED]: 밀리초 단위의 Unix 에포크 타임스탬프입니다.

이 값은 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 샘플