ข้อมูลสภาพอากาศใน Watch Face Format

Watch Face Format รองรับข้อมูลสภาพอากาศตั้งแต่เวอร์ชัน 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] อาจเป็นจริงได้ ที่ข้อมูลไม่อัปเดตและพยายามรีเฟรชข้อมูลไม่สำเร็จ ในกรณีดังกล่าว สามารถแสดงสภาพอากาศที่มีอยู่ พร้อมกับสัญญาณบอกสถานะเพื่อแสดงว่าที่นั่น เกิดข้อผิดพลาดในการดึงข้อมูลใหม่

ความใหม่ของข้อมูล

การประทับเวลาของข้อมูลที่มีอยู่สามารถเข้าถึงได้โดยใช้ [WEATHER.LAST_UPDATED] ซึ่งเป็นการประทับเวลา Unix Epoch ในหน่วยมิลลิวินาที

คุณสามารถจัดรูปแบบค่านี้ได้โดยใช้เมธอด icuText(,) ในการรับแอตทริบิวต์ การนำเสนอที่มนุษย์อ่านได้ ดังที่แสดงในตัวอย่างสภาพอากาศ

สภาพอากาศ

สภาพอากาศปัจจุบันมีอยู่ใน [WEATHER.CONDITION] โดย เวอร์ชันที่มนุษย์อ่านได้ใน [WEATHER.CONDITION_NAME]

ดูค่าของ [WEATHER.CONDITION] ได้ในแหล่งข้อมูล สำหรับ ตัวอย่างเช่น 4 แสดงถึง HEAVY_RAIN

เมตริกอื่นๆ

Watch Face Format มอบเมตริกเพิ่มเติมมากมาย เช่น [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