Watch Face Format の気象データ

バージョン 2 以降、Watch Face Format は気象データに対応しています。 このデータは、現在の状況から、さまざまな指標と時間枠をカバーしています。 調整できます

Weather にはを使用してアクセスします。たとえば、現在の <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 を表します。

その他の指標

Watch Face Format には、 [WEATHER.TEMPERATURE][WEATHER.UV_INDEX]。詳細については、 単位やデータタイプなど、利用可能な指標については、 データソースのリファレンス ページを参照してください。

1 時間ごと、1 日ごとの天気予報

将来の特定の時間または日付の予測条件にアクセスできます 次のとおりです。

  • [WEATHER.HOURS.1.CONDITION] - 今から 1 時間後の予測条件。
  • [WEATHER.DAYS.2.CONDITION] - 2 日後の予測条件。

時間別データは 8 時間先まで、日別データは 5 日前まで確認できます。 ありますただし、ウォッチフェイスでは、 予測データです受付時間が異なる場合があります。 使用するデバイスによっても異なります。たとえば データは今から 1 時間分利用できます。[WEATHER.HOURS.1.IS_AVAILABLE] を使用してください。

日次予測と 1 時間ごとの予測では、 [WEATHER.HOURS.<N>.TEMPERATURE][WEATHER.DAYS.<N>.CHANCE_OF_PRECIPITATION]。詳細については、 単位やデータタイプなど、利用可能な指標については、 データソースのリファレンス ページを参照してください。

気象データでのテスト

気象データを取得するには、Wear OS デバイスがデバイスの位置情報を認識している必要があります。

電力を節約するため、スマートウォッチは、内蔵 GPS センサーを使用して、 天気予報の地域を判断し、その代わりに位置情報に基づいて モバイル デバイス、または利用可能なネットワークから受信します。

位置情報をテストに利用できるようにするには、次のいずれかを行います。

  • 物理スマートフォンまたはエミュレータ スマートフォンと Wear OS エミュレータをペア設定します。
  • 次の adb コマンドを使用して位置情報をシミュレートします。
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 のサンプル