Wear
androidx.wear.activity
androidx.wear.ambient
androidx.wear.input
androidx.wear.utils
androidx.wear.widget
androidx.wear.widget.drawer
(ดูเอกสารอ้างอิงสำหรับแพ็กเกจ Wear ทั้งหมด)
ตารางนี้แสดงอาร์ติแฟกต์ทั้งหมดในกลุ่ม androidx.wear
อาร์ติแฟกต์ | รุ่นที่เสถียร | รุ่นที่อาจได้รับการเผยแพร่ | รุ่นเบต้า | รุ่นอัลฟ่า |
---|---|---|---|---|
Wear | 1.3.0 | - | - | 1.4.0-alpha01 |
wear-input | 1.1.0 | - | - | 1.2.0-alpha02 |
wear-input-testing | 1.1.0 | - | - | 1.2.0-alpha02 |
wear-ongoing | 1.0.0 | - | - | 1.1.0-alpha01 |
wear-phone-interactions | 1.1.0 | - | - | - |
wear-remote-interactions | 1.1.0 | - | - | 1.2.0-alpha01 |
การประกาศทรัพยากร Dependency
หากต้องการเพิ่มทรัพยากร Dependency ใน Wear คุณต้องเพิ่มที่เก็บ Maven ของ Google ลงในโปรเจ็กต์ อ่านข้อมูลเพิ่มเติมได้ที่ที่เก็บ Maven ของ Google
เพิ่มการอ้างอิงสำหรับอาร์ติแฟกต์ที่คุณต้องการในไฟล์ build.gradle
สำหรับแอปหรือโมดูลของคุณ
Groovy
dependencies { implementation "androidx.wear:wear:1.3.0" // Add support for wearable specific inputs implementation "androidx.wear:wear-input:1.1.0" implementation "androidx.wear:wear-input-testing:1.1.0" // Use to implement wear ongoing activities implementation "androidx.wear:wear-ongoing:1.0.0" // Use to implement support for interactions from the Wearables to Phones implementation "androidx.wear:wear-phone-interactions:1.1.0" // Use to implement support for interactions between the Wearables and Phones implementation "androidx.wear:wear-remote-interactions:1.1.0" }
Kotlin
dependencies { implementation("androidx.wear:wear:1.3.0") // Add support for wearable specific inputs implementation("androidx.wear:wear-input:1.1.0") implementation("androidx.wear:wear-input-testing:1.1.0") // Use to implement wear ongoing activities implementation("androidx.wear:wear-ongoing:1.0.0") // Use to implement support for interactions from the Wearables to Phones implementation("androidx.wear:wear-phone-interactions:1.1.0") // Use to implement support for interactions between the Wearables and Phones implementation("androidx.wear:wear-remote-interactions:1.1.0") }
ดูข้อมูลเพิ่มเติมเกี่ยวกับการพึ่งพาได้ที่เพิ่มการพึ่งพาบิลด์
ความคิดเห็น
ความคิดเห็นของคุณจะช่วยให้ Jetpack ทำงานได้ดียิ่งขึ้น โปรดแจ้งให้เราทราบหากพบปัญหาใหม่หรือมี ไอเดียในการปรับปรุงไลบรารีนี้ โปรดดูปัญหาที่มีอยู่ ในไลบรารีนี้ก่อนสร้างปัญหาใหม่ คุณสามารถโหวตปัญหาที่มีอยู่ได้โดย คลิกปุ่มดาว
ดูข้อมูลเพิ่มเติมได้ในเอกสารประกอบของเครื่องมือติดตามปัญหา
Wear Core เวอร์ชัน 1.0
เวอร์ชัน 1.0.0-alpha01
29 พฤษภาคม 2024
androidx.wear:wear-core:1.0.0-alpha01
ได้รับการเผยแพร่แล้ว เวอร์ชัน 1.0.0-alpha01 มีการเปลี่ยนแปลงเหล่านี้
การเปลี่ยนแปลง API
- เพิ่มคลาส
WearApiVersionhelper
ใหม่เพื่อช่วยในการตรวจสอบความเข้ากันได้ของ API รันไทม์ใน Wear ไคลเอ็นต์สามารถใช้คลาสตัวช่วยแบบคงที่นี้และเมธอดที่ระบุ (#isApiVersionAtLeast(VERSION)
) เพื่อตรวจสอบความเข้ากันได้
Wear Tooling Preview เวอร์ชัน 1.0
เวอร์ชัน 1.0.0
29 พฤศจิกายน 2023
androidx.wear:wear-tooling-preview:1.0.0
ได้รับการเผยแพร่แล้ว เวอร์ชัน 1.0.0 มีคอมมิตเหล่านี้
ฟีเจอร์ในเวอร์ชัน 1.0.0
- เพิ่ม
WearDevices
เพื่อแสดงรายการอุปกรณ์ Wear ที่ถูกต้องซึ่งใช้แสดงตัวอย่าง UI ได้
เวอร์ชัน 1.0.0-rc01
15 พฤศจิกายน 2023
androidx.wear:wear-tooling-preview:1.0.0-rc01
จะได้รับการเผยแพร่โดยไม่มีการเปลี่ยนแปลง เวอร์ชัน 1.0.0-rc01 มีคอมมิตเหล่านี้
เวอร์ชัน 1.0.0-beta01
18 ตุลาคม 2023
androidx.wear:wear-tooling-preview:1.0.0-beta01
จะได้รับการเผยแพร่โดยไม่มีการเปลี่ยนแปลง เวอร์ชัน 1.0.0-beta01 มีคอมมิตเหล่านี้
เวอร์ชัน 1.0.0-alpha01
23 สิงหาคม 2023
androidx.wear:wear-tooling-preview:1.0.0-alpha01
ได้รับการเผยแพร่แล้ว เวอร์ชัน 1.0.0-alpha01 มีคอมมิตต่อไปนี้
การเปลี่ยนแปลง API
- เพิ่ม
WearDevices
เพื่อแสดงรายการอุปกรณ์ Wear ที่ถูกต้องซึ่งใช้แสดงตัวอย่าง UI ได้ (Ib036e)
Wear เวอร์ชัน 1.4
เวอร์ชัน 1.4.0-alpha01
15 พฤศจิกายน 2023
androidx.wear:wear:1.4.0-alpha01
ได้รับการเผยแพร่แล้ว เวอร์ชัน 1.4.0-alpha01 มีคอมมิตต่อไปนี้
การแก้ไขข้อบกพร่อง
- จัดไอคอน
ConfirmationOverlay
ไว้ตรงกลางแนวตั้งเมื่อไม่มีข้อความ (I496d8)
Wear เวอร์ชัน 1.3
เวอร์ชัน 1.3.0
9 สิงหาคม 2023
androidx.wear:wear:1.3.0
เปิดตัวโดยไม่มีการเปลี่ยนแปลงใดๆ ตั้งแต่ 1.3.0-rc01
เวอร์ชัน 1.3.0 มีคอมมิตเหล่านี้
การเปลี่ยนแปลงที่สำคัญตั้งแต่เวอร์ชัน 1.2.0
- ย้ายข้อมูล
AmbientModeSupport
เพื่อใช้LifecycleObserver
เลิกใช้งานAmbientModeSupport
เพื่อเปลี่ยนไปใช้คลาสใหม่ที่รับรู้ถึงวงจรของคอมโพเนนต์ - อัปเดต
ConfirmationOverlay
ด้วยไอคอน/เลย์เอาต์ แบบอักษร และเมตริกแบบอักษรใหม่ - อัปเดต
SwipeDismissTransitionHelper
ให้ใช้ Drawable พื้นหลังแทนView
ที่ 2 เพื่อแก้ไขข้อผิดพลาดเมื่อใช้FragmentContainerView
SwipeDismissFrameLayout
อัปเดตภาพเคลื่อนไหวให้สอดคล้องกับการใช้งานแพลตฟอร์ม Wear และ Wear ComposeSwipeDismissFrameLayout
แก้ไขข้อบกพร่องเพื่อหลีกเลี่ยงการปิด Fragment โดยไม่ตั้งใจด้วยการปัดแนวตั้งArcLayout
ตอนนี้รองรับน้ำหนักการขยายซึ่งทำงานในลักษณะเดียวกับน้ำหนักเลย์เอาต์ปกติแล้ว- รองรับ
layoutDirection
ในArcLayout
เวอร์ชัน 1.3.0-rc01
21 มิถุนายน 2023
androidx.wear:wear:1.3.0-rc01
เปิดตัวโดยไม่มีการเปลี่ยนแปลงใดๆ ตั้งแต่ 1.3.0-beta01
เวอร์ชัน 1.3.0-rc01 มีคอมมิตต่อไปนี้
เวอร์ชัน 1.3.0-beta01
7 มิถุนายน 2023
androidx.wear:wear:1.3.0-beta01
ได้รับการเผยแพร่แล้ว เวอร์ชัน 1.3.0-beta01 มีคอมมิตเหล่านี้
การเปลี่ยนแปลง API
- อัปเดต
AmbientLifecycleObserver
หลังจากได้รับความคิดเห็นAmbientLifecycleObserverInterface
เปลี่ยนชื่อเป็นAmbientLifecycleObserver
แล้ว และรับอินสแตนซ์ได้โดยการเรียกใช้AmbientLifecycleObserver(...)
isAmbient
ได้ย้ายไปเป็นฟิลด์แทนที่จะเป็นเมธอด (I84b4f)
การแก้ไขข้อบกพร่อง
- เพิ่มการตรวจสอบค่า Null เพื่อจัดการกรณีที่มุมมองหลักเป็น Null ขณะรีเซ็ตค่าอัลฟ่าและการแปลใน
SwipeToDismiss
(Ib0ec7)
เวอร์ชัน 1.3.0-alpha05
19 เมษายน 2023
androidx.wear:wear:1.3.0-alpha05
ได้รับการเผยแพร่แล้ว เวอร์ชัน 1.3.0-alpha05 มีคอมมิตต่อไปนี้
การเปลี่ยนแปลง API
- ย้ายข้อมูล
AmbientModeSupport
เพื่อใช้LifecycleObserver
เลิกใช้งานAmbientModeSupport
เพื่อเปลี่ยนไปใช้คลาสใหม่ที่รับรู้ถึงวงจรขององค์ประกอบ (I1593b)
การแก้ไขข้อบกพร่อง
- อัปเดต
SwipeDismissTransitionHelper
แนวทางขอบพื้นหลังเพื่อใช้ Drawable แทนการเพิ่มมุมมองเพื่อแก้ไขข้อผิดพลาดขณะใช้FragmentContainerView
(I851cd)
เวอร์ชัน 1.3.0-alpha04
25 มกราคม 2023
androidx.wear:wear:1.3.0-alpha04
ได้รับการเผยแพร่แล้ว เวอร์ชัน 1.3.0-alpha04 มีคอมมิตต่อไปนี้
การแก้ไขข้อบกพร่อง
- เราได้อัปเดตภาพเคลื่อนไหวใน
SwipeDismissFrameLayout
ให้สอดคล้องกับแพลตฟอร์ม Wear และการใช้งาน Wear Compose (I7261b)
เวอร์ชัน 1.3.0-alpha03
24 สิงหาคม 2022
androidx.wear:wear:1.3.0-alpha03
ได้รับการเผยแพร่แล้ว เวอร์ชัน 1.3.0-alpha03 มีคอมมิตต่อไปนี้
ฟีเจอร์ใหม่
ArcLayout
ตอนนี้รองรับน้ำหนักการขยายซึ่งทำงานในลักษณะเดียวกับน้ำหนักเลย์เอาต์ปกติแล้ว ซึ่งหมายความว่าคุณสามารถระบุขนาดสัมพัทธ์ขององค์ประกอบย่อยได้โดยไม่ต้องคำนวณมุมโดยตรง นอกจากนี้ เรายังได้เพิ่มความพยายามอย่างเต็มที่MaxAngleDegrees
ซึ่งจะได้รับการพิจารณาเมื่อขยายองค์ประกอบย่อยที่มีน้ำหนัก เช่น คุณสามารถยึดอาร์คที่มีองค์ประกอบย่อยหลายรายการที่มีน้ำหนักไว้ที่ 90 องศาได้ ซึ่งจะยังคงคำนึงถึงพื้นที่ที่องค์ประกอบที่ไม่ได้ขยายใช้ด้วย
การเปลี่ยนแปลง API
- เราได้เพิ่มค่า
ArcLayout.LayoutParams
ซึ่งช่วยให้วิดเจ็ตขยายเพื่อเติมเต็มพื้นที่ว่างได้ หากมีวิดเจ็ตมากกว่า 1 รายการ ส่วนแบ่งพื้นที่ว่างของวิดเจ็ตจะสอดคล้องกับค่าArcLayout.LayoutParams
นอกจากนี้ เรายังเพิ่มArcLayout.setMaxAngleDegrees
เพื่อให้คุณจำกัดการขยายที่ 90 องศาได้ (โปรดทราบว่าการดำเนินการนี้จะไม่มีผลกับเลย์เอาต์ของวิดเจ็ตย่อยที่มีขนาดคงที่) ในที่สุดArcLayout.Widget
ก็มีsetSweepAngleDegrees
ซึ่งช่วยให้ArcLayout
สามารถแจ้งขนาดของวิดเจ็ตที่มีน้ำหนักที่ไม่ใช่ 0 ได้ (I75f24) - อัปเดตค่า Null ของ
setColorFilter
(I99ddf, b/236498063)
เวอร์ชัน 1.3.0-alpha02
23 กุมภาพันธ์ 2022
androidx.wear:wear:1.3.0-alpha02
ได้รับการเผยแพร่แล้ว เวอร์ชัน 1.3.0-alpha02 มีคอมมิตเหล่านี้
ฟีเจอร์ใหม่
- รองรับ
layoutDirection
ในArcLayout
(I14d49) - ข้อความคำอธิบายเนื้อหาที่ปรับปรุงแล้วสำหรับ ConfirmationOverlay (I0fdf8)
- อัปเดต
ConfirmationOverlay
ด้วยไอคอน/เลย์เอาต์ใหม่ (If5b54)
การแก้ไขข้อบกพร่อง
- เพิ่มกฎ ProGuard เพื่อให้มั่นใจว่าระบบจะเก็บโค้ดที่เกี่ยวข้องกับ Ambient ไว้ (Idaa10)
- หลีกเลี่ยงการปิด Fragment ใน SwipeDismissFrameLayout โดยไม่ตั้งใจด้วยการปัดแนวตั้ง (Idb6d8)
- แก้ไข ConfirmationOverlay เมื่อไม่มีข้อความ (I63e6f)
การมีส่วนร่วมภายนอก
- Dae Gyu LEE (Samsung) - Avoid accidentally dismissing of fragments in SwipeDismissFrameLayout with a vertical fling (Idb6d8)
เวอร์ชัน 1.3.0-alpha01
29 กันยายน 2021
androidx.wear:wear:1.3.0-alpha01
ได้รับการเผยแพร่แล้ว เวอร์ชัน 1.3.0-alpha01 มีคอมมิตต่อไปนี้
การแก้ไขข้อบกพร่อง
ConfirmationOverlay
จะเลื่อนไอคอนขึ้นเพื่อรองรับข้อความที่ยาวขึ้น โดยไม่ให้ข้อความเข้าไปในขอบของอุปกรณ์ (หรือ นอกหน้าจอ) (I54bff)
Wear-Remote-Interactions เวอร์ชัน 1.2.0
เวอร์ชัน 1.2.0-alpha01
2 กรกฎาคม 2025
androidx.wear:wear-remote-interactions:1.2.0-alpha01
ได้รับการเผยแพร่แล้ว เวอร์ชัน 1.2.0-alpha01 มีการเปลี่ยนแปลงเหล่านี้
ฟีเจอร์ใหม่
- อัปเดต
RemoteActivityHelper.startRemoteActivity
เพื่อใช้ Wear SDK API สาธารณะใหม่ (startRemoteActivity
) หากพร้อมใช้งาน (ตั้งแต่ Wear 6 เป็นต้นไป) (Id1e77)
Wear Ongoing & Interactions เวอร์ชัน 1.1.0
เวอร์ชัน 1.1.0
26 กุมภาพันธ์ 2025
androidx.wear:wear-phone-interactions:1.1.0
ได้รับการเผยแพร่แล้ว เวอร์ชัน 1.1.0 มีการเปลี่ยนแปลงเหล่านี้
การเปลี่ยนแปลงที่สำคัญตั้งแต่เวอร์ชัน 1.0.0
- เวอร์ชันนี้มีการแก้ไขข้อบกพร่องที่สำคัญสำหรับแอปที่ทำงานบน Wear OS 5 (API ระดับ 34) ขึ้นไปและกำหนดเป้าหมายเป็น API ระดับ 35 ขึ้นไป
- แอปควรอัปเดตเป็นไลบรารีเวอร์ชันนี้ก่อนอัปเดต
targetSdkVersion
เป็น 35 ขึ้นไป - มิฉะนั้นระบบจะแสดงข้อยกเว้นรันไทม์
- เพิ่มคำจำกัดความใหม่สำหรับประเภทอุปกรณ์ที่จับคู่แล้ว -
none
เมื่ออุปกรณ์ไม่ได้จับคู่กับโทรศัพท์
เวอร์ชัน 1.1.0-rc01
12 กุมภาพันธ์ 2025
androidx.wear:wear-phone-interactions:1.1.0-rc01
เปิดตัวโดยไม่มีการเปลี่ยนแปลงที่สำคัญนับตั้งแต่เวอร์ชันเบต้าล่าสุด เวอร์ชัน 1.1.0-rc01 มีการเปลี่ยนแปลงเหล่านี้
เวอร์ชัน 1.1.0-beta01
29 มกราคม 2025
androidx.wear:wear-phone-interactions:1.1.0-beta01
ได้รับการเผยแพร่แล้ว เวอร์ชัน 1.1.0-beta01 มีการเปลี่ยนแปลงเหล่านี้
ฟีเจอร์ใหม่
การเปิดตัว Wear Phone Interactions เวอร์ชัน 1.1.0-beta01 แสดงให้เห็นว่าไลบรารีเวอร์ชันนี้มีฟีเจอร์ครบถ้วนและ API ถูกล็อกแล้ว (ยกเว้นที่ทำเครื่องหมายว่าเป็นการทดลอง) Wear Phone Interactions 1.1 มีฟังก์ชันการทำงานและ API ใหม่ต่อไปนี้
- เพิ่มพร็อพเพอร์ตี้
redirectUrl
ลงในOAuthRequest
แล้ว - การแก้ไขเอกสารประกอบ
- เพิ่มประเภทใน
PhoneTypeHelper
เพื่อระบุเมื่ออุปกรณ์ไม่ได้จับคู่กับโทรศัพท์ แทนที่จะใช้ประเภทที่ไม่รู้จักที่มีอยู่
การเปลี่ยนแปลง API
- เพิ่มคำจำกัดความใหม่สำหรับประเภทอุปกรณ์ที่จับคู่แล้ว - ไม่มี เมื่ออุปกรณ์ไม่ได้จับคู่กับโทรศัพท์ (I06cb8)
เวอร์ชัน 1.1.0-alpha05
11 ธันวาคม 2024
androidx.wear:wear-phone-interactions:1.1.0-alpha05
ได้รับการเผยแพร่แล้ว เวอร์ชัน 1.1.0-alpha05 มีการคอมมิตเหล่านี้
การแก้ไขข้อบกพร่อง
- แก้ไขข้อบกพร่องที่ทำให้เกิดข้อขัดข้องเมื่อเรียกใช้ใน Wear OS 5 (API ระดับ 34) ขึ้นไปขณะกำหนดเป้าหมายเป็น API ระดับ 35 ขึ้นไป แอปควรอัปเดตเป็นไลบรารีเวอร์ชันนี้ก่อนอัปเดต
targetSdkVersion
เป็น 35 ขึ้นไป
เวอร์ชัน 1.1.0
11 ธันวาคม 2024
androidx.wear:wear-remote-interactions:1.1.0
ได้รับการเผยแพร่แล้ว เวอร์ชัน 1.1.0 มีการเปลี่ยนแปลงเหล่านี้
การเปลี่ยนแปลงที่สำคัญตั้งแต่เวอร์ชัน 1.0.0
- เราได้เพิ่ม
RemoteActivityHelper.isRemoteActivityHelperAvailable
ซึ่งจะช่วยตรวจสอบว่าฟังก์ชันการเปิดตัวกิจกรรมระยะไกลพร้อมใช้งานหรือไม่ (I107a9)
เวอร์ชัน 1.1.0-rc01
16 ตุลาคม 2024
androidx.wear:wear-remote-interactions:1.1.0-rc01
เปิดตัวโดยไม่มีการเปลี่ยนแปลงใดๆ ตั้งแต่ 1.1.0-beta01
เวอร์ชัน 1.1.0-rc01 มีการเปลี่ยนแปลงเหล่านี้
เวอร์ชัน 1.1.0-beta01
24 กรกฎาคม 2024
androidx.wear:wear-remote-interactions:1.1.0-beta01
ได้รับการเผยแพร่แล้ว เวอร์ชัน 1.1.0-beta01 มีการเปลี่ยนแปลงเหล่านี้ การเปิดตัว Wear Remote Interactions เวอร์ชัน 1.3.0-beta01 แสดงให้เห็นว่าไลบรารีเวอร์ชันนี้มีฟีเจอร์ครบถ้วนและ API ถูกล็อกแล้ว (ยกเว้นที่ทำเครื่องหมายว่าเป็นการทดลอง)
เวอร์ชัน 1.1.0-alpha04
10 มกราคม 2024
androidx.wear:wear-phone-interactions:1.1.0-alpha04
ได้รับการเผยแพร่แล้ว เวอร์ชัน 1.1.0-alpha04 มีคอมมิตเหล่านี้
การเปลี่ยนแปลง API
- เราได้เพิ่ม
RemoteAuthClient.isRemoteAuthAvailable
ซึ่งจะตรวจสอบว่าการตรวจสอบสิทธิ์จากระยะไกลพร้อมใช้งานหรือไม่ (Ibc10c)
เวอร์ชัน 1.1.0-alpha02
10 มกราคม 2024
androidx.wear:wear-remote-interactions:1.1.0-alpha02
ได้รับการเผยแพร่แล้ว เวอร์ชัน 1.1.0-alpha02 มีคอมมิตเหล่านี้
การเปลี่ยนแปลง API
- เราได้เพิ่ม
RemoteActivityHelper.isRemoteActivityHelperAvailable
ซึ่งจะช่วยตรวจสอบว่าฟังก์ชันการเปิดตัวกิจกรรมระยะไกลพร้อมใช้งานหรือไม่ (I107a9) - เราได้อัปเดตตัวสร้างของ
RemoteActivityHelper
ให้มีพารามิเตอร์ที่ไม่บังคับซึ่งเข้ากันได้ใน Java (I75554)
เวอร์ชัน 1.1.0-alpha01
21 มิถุนายน 2023
androidx.wear:wear-remote-interactions:1.1.0-alpha01
ได้รับการเผยแพร่แล้ว เวอร์ชัน 1.1.0-alpha01 มีคอมมิตเหล่านี้
การแก้ไขข้อบกพร่อง
- ปรับปรุงวิธีจัดการการดำเนินการให้เสร็จสมบูรณ์และการจัดการข้อผิดพลาดใน
RemoteActivityHelper
(I60d60)
การมีส่วนร่วมภายนอก
- นำการอ้างอิง Guava ออกจาก
wear-remote-interactions
และใช้ทางเลือกอื่นที่มีขนาดเล็กกว่า
Wear-Phone-Interactions เวอร์ชัน 1.1.0-alpha03
9 มีนาคม 2022
androidx.wear:wear-phone-interactions:1.1.0-alpha03
ได้รับการเผยแพร่แล้ว เวอร์ชัน 1.1.0-alpha03 มีคอมมิตเหล่านี้
การแก้ไขข้อบกพร่อง
redirectUrl
จากOAuthRequest
จะแสดงผลสตริงว่างหากไม่ได้ตั้งค่า URL เปลี่ยนเส้นทางใน URL ของคำขอที่ระบุ (I44242)
Wear-Phone-Interactions เวอร์ชัน 1.1.0-alpha02
15 ธันวาคม 2021
androidx.wear:wear-phone-interactions:1.1.0-alpha02
ได้รับการเผยแพร่แล้ว เวอร์ชัน 1.1.0-alpha02 มีคอมมิตเหล่านี้
การแก้ไขข้อบกพร่อง
- แก้ไขข้อผิดพลาดในเอกสารประกอบของ
RemoteAuthClient
รวมถึงข้อผิดพลาดในข้อมูลโค้ดตัวอย่างและลิงก์ที่ใช้งานไม่ได้ไปยังErrorCode
(I260e8)
Wear-Phone-Interactions เวอร์ชัน 1.1.0-alpha01
15 กันยายน 2021
androidx.wear:wear-phone-interactions:1.1.0-alpha01
ได้รับการเผยแพร่แล้ว เวอร์ชัน 1.1.0-alpha01 มีคอมมิตเหล่านี้
การเปลี่ยนแปลง API
Wear Ongoing & Interactions เวอร์ชัน 1.0.0
Wear-Phone-Interactions เวอร์ชัน 1.0.1
15 ธันวาคม 2021
androidx.wear:wear-phone-interactions:1.0.1
ได้รับการเผยแพร่แล้ว เวอร์ชัน 1.0.1 มีคอมมิตเหล่านี้
การแก้ไขข้อบกพร่อง
- ระบบจะส่งข้อยกเว้นที่แก้ไขแล้วจาก
BridgingManager
เมื่อพยายามปิดใช้การแจ้งเตือนการเชื่อมต่อโดยไม่มีexcludedTags
Wear-Phone-Interactions Wear-Remote-Interactions เวอร์ชัน 1.0.0
15 กันยายน 2021
androidx.wear:wear-phone-interactions:1.0.0
และ androidx.wear:wear-remote-interactions:1.0.0
เปิดตัวแล้ว เวอร์ชัน 1.0.0 มีคอมมิตเหล่านี้
ฟีเจอร์หลักของเวอร์ชัน 1.0.0
ไลบรารีการโต้ตอบทางโทรศัพท์มี API สำหรับการโต้ตอบจากอุปกรณ์ที่สวมใส่ได้ไปยังโทรศัพท์ โดยมีข้อมูลต่อไปนี้
PhoneDeviceType
โดยมีเมธอดตัวช่วยในการระบุประเภทโทรศัพท์ที่นาฬิกาปัจจุบันจับคู่ไว้ เพื่อใช้ในอุปกรณ์ที่สวมใส่ได้เท่านั้นBridgingManager
,BridgingManagerService
และBridgingConfig
API เพื่อเปิด/ปิดใช้การแจ้งเตือนขณะรันไทม์ และตั้งค่าแท็กสำหรับการแจ้งเตือนที่ได้รับการยกเว้นจากโหมดการเชื่อมต่อ (ไม่บังคับ)RemoteAuthClient
โดยให้การสนับสนุนการตรวจสอบสิทธิ์จากระยะไกลในอุปกรณ์ที่สวมใส่ได้พร้อมกับการสนับสนุนการเพิ่มส่วนขยาย PKCE ของ OAuth โดยจะมีตัวแฮนเดิลและคลาสตัวช่วยเพิ่มเติมสำหรับการสื่อสาร
ไลบรารีการโต้ตอบระยะไกลมี API สำหรับการโต้ตอบระหว่างอุปกรณ์ที่สวมใส่ได้กับโทรศัพท์ โดยมีข้อมูลต่อไปนี้
WatchFaceConfigIntentHelper
ซึ่งมีฟังก์ชันตัวช่วยในการระบุรหัสและชื่อคอมโพเนนต์ในกิจกรรมการกำหนดค่าหน้าปัดสำหรับแอปคู่หูในโทรศัพท์RemoteActivityHelper
ซึ่งใช้เพื่อเปิด Intent ในอุปกรณ์อื่นๆ ได้ (เช่น จากนาฬิกาไปยังโทรศัพท์)
Wear-Phone-Interactions Wear-Remote-Interactions เวอร์ชัน 1.0.0-rc01
1 กันยายน 2021
androidx.wear:wear-phone-interactions:1.0.0-rc01
และ androidx.wear:wear-remote-interactions:1.0.0-rc01
เปิดตัวแล้ว เวอร์ชัน 1.0.0-rc01 มีคอมมิตเหล่านี้
การแก้ไขข้อบกพร่อง
- แก้ไขข้อบกพร่องที่ป้องกันไม่ให้ข้อผิดพลาดที่เกิดขึ้นภายในบริการ Google Play เผยแพร่ไปยังผู้เรียกใช้เมื่อใช้ RemoteActivityHelper (I60d60)
- แก้ไขข้อบกพร่องที่ RemoteActivityHelper จะไม่ดำเนินการตาม Future หากไม่มีโหนดที่เชื่อมต่อ หรือหากไม่พบ nodeId ที่ขอ (I60d60)
Wear-Ongoing เวอร์ชัน 1.1
เวอร์ชัน 1.1.0-alpha01
23 สิงหาคม 2023
androidx.wear:wear-ongoing:1.1.0-alpha01
ได้รับการเผยแพร่แล้ว เวอร์ชัน 1.1.0-alpha01 มีคอมมิตเหล่านี้
การเปลี่ยนแปลง API
- เพิ่มช่องคำอธิบายเนื้อหาลงในกิจกรรมที่กำลังดำเนินอยู่ บริการการช่วยเหลือพิเศษจะใช้ข้อความนี้เพื่ออธิบายกิจกรรมที่กำลังดำเนินอยู่ (I79fc6)
การแก้ไขข้อบกพร่อง
- เพิ่ม
@RequiresPermission
ลงใน API ที่ต้องให้สิทธิ์POST_NOTIFICATIONS
ใน SDK 33 ขึ้นไป (Ie542e, b/238790278)
Wear-Ongoing เวอร์ชัน 1.0.0
1 กันยายน 2021
androidx.wear:wear-ongoing:1.0.0
ได้รับการเผยแพร่แล้ว เวอร์ชัน 1.0.0 มีคอมมิตเหล่านี้
ฟีเจอร์หลักของเวอร์ชัน 1.0.0
- Wear Ongoing Activities API เป็น API สำหรับนักพัฒนาแอป รวมถึงนักพัฒนาแอปบุคคลที่สาม ซึ่งใช้เพื่อทำเครื่องหมายกิจกรรมเป็น "กิจกรรมที่กำลังดำเนินอยู่" และให้ข้อมูลที่จำเป็น
- กิจกรรมต่อเนื่องหมายถึงกิจกรรมที่อาจทำงานอยู่เบื้องหลังของนาฬิกา (เช่น การออกกำลังกาย การโทร และสื่อ) ใน Wear 3 ระบบจะทำให้กิจกรรมที่ประกาศว่ากำลังดำเนินอยู่โดดเด่นมากขึ้นผ่านไอคอนซ้อนทับเฉพาะบนหน้าปัดและมีการแสดงผลที่แตกต่างกันในตัวเรียกใช้แอป
- ดูข้อมูลเพิ่มเติมได้ที่คู่มือกิจกรรมต่อเนื่องของ Wear
Wear-Phone-Interactions Wear-Remote-Interactions เวอร์ชัน 1.0.0-beta01
18 สิงหาคม 2021
androidx.wear:wear-phone-interactions:1.0.0-beta01
และ androidx.wear:wear-remote-interactions:1.0.0-beta01
เปิดตัวแล้ว เวอร์ชัน 1.0.0-beta01 มีคอมมิตเหล่านี้
การเปลี่ยนแปลง API
- เปลี่ยนชื่อชั้นเรียน
RemoteIntentHelper
เป็นRemoteActivityHelper
แล้ว เปลี่ยนชื่อฟังก์ชันRemoteIntentHelper#getRemoteIntentExtraIntent
และRemoteIntentHelper#getRemoteIntentNodeId
เป็นRemoteActivityHelper#getTargetIntent
และRemoteActivityHelper#getTargetNodeId
ตามลำดับ (Id2042)
Wear-Ongoing เวอร์ชัน 1.0.0-rc01
18 สิงหาคม 2021
androidx.wear:wear-ongoing:1.0.0-rc01
เปิดตัวโดยไม่มีการเปลี่ยนแปลงใดๆ ตั้งแต่ 1.0.0-beta01
เวอร์ชัน 1.0.0-rc01 มีคอมมิตเหล่านี้
Wear-Ongoing เวอร์ชัน 1.0.0-beta01
4 สิงหาคม 2021
androidx.wear:wear-ongoing:1.0.0-beta01
ได้รับการเผยแพร่แล้ว เวอร์ชัน 1.0.0-beta01 มีคอมมิตเหล่านี้
การเปลี่ยนแปลง API
- ตอนนี้ Setter บางรายการใน OngoingActivity.Builder ยอมรับอาร์กิวเมนต์ Null เพื่อให้ Setter และ Getter มีความสมมาตรและความสอดคล้องกัน (I17ee5)
Wear-Phone-Interactions เวอร์ชัน 1.0.0-alpha07
4 สิงหาคม 2021
androidx.wear:wear-phone-interactions:1.0.0-alpha07
ได้รับการเผยแพร่แล้ว เวอร์ชัน 1.0.0-alpha07 มีคอมมิตเหล่านี้
การเปลี่ยนแปลง API
- เปลี่ยนชื่อ
WearTypeHelper.isChinaDevice
เป็นWearTypeHelper.isChinaBuild
แล้ว (I47302) - เราได้อัปเดตไลบรารี RemoteAuthClient เพื่อเลือก redirect_uri โดยอัตโนมัติตามประเภทอุปกรณ์ (RoW/จีน) (I38866)
- แก้ไขข้อบกพร่องที่ทำให้การแปลง BridgingConfig เป็น/จาก Bundle ไม่สำเร็จด้วย ClassCastException เพิ่มการทดสอบหน่วยสำหรับคลาส BridgingManagerService (I68ecb)
Wear-Remote-Interactions เวอร์ชัน 1.0.0-alpha06
4 สิงหาคม 2021
androidx.wear:wear-remote-interactions:1.0.0-alpha06
ได้รับการเผยแพร่แล้ว เวอร์ชัน 1.0.0-alpha06 มีคอมมิตเหล่านี้
Wear-Phone-Interactions เวอร์ชัน 1.0.0-alpha06
21 กรกฎาคม 2021
androidx.wear:wear-phone-interactions:1.0.0-alpha06
ได้รับการเผยแพร่แล้ว เวอร์ชัน 1.0.0-alpha06 มีคอมมิตเหล่านี้
การเปลี่ยนแปลง API
- ตอนนี้คลาส
BridgingManagerSeviceBinder
เป็นคลาสย่อยของ Service และเปลี่ยนชื่อเป็น BridgingManagerSevice แล้ว (I9fca2) - มีการเปลี่ยนแปลงเมธอด
RemoteAuthClient.Callback.onAuthorizationError
เพื่อรวมพารามิเตอร์ OAuthRequest ตอนนี้เมธอดที่ต้องใช้การเรียกกลับยังต้องมีตัวดำเนินการเพื่อให้เรียกใช้การเรียกกลับได้ด้วย (I35e11)
การแก้ไขข้อบกพร่อง
- เราได้ปรับปรุง API การตรวจสอบสิทธิ์ให้ชัดเจนยิ่งขึ้นด้วยพารามิเตอร์ที่มีเอกสารประกอบมากขึ้น และโดยการใช้พร็อพเพอร์ตี้เมื่อเป็นไปได้ (I12287)
Wear-Phone-Interactions เวอร์ชัน 1.0.0-alpha05
30 มิถุนายน 2021
androidx.wear:wear-phone-interactions:1.0.0-alpha05
ได้รับการเผยแพร่แล้ว เวอร์ชัน 1.0.0-alpha05 มีคอมมิตต่อไปนี้
การแก้ไขข้อบกพร่อง
- พารามิเตอร์ที่บันทึกไว้ซึ่งควรส่งในเครื่องมือสร้างสำหรับ
BridgingConfig.Builder
Wear-Ongoing เวอร์ชัน 1.0.0-alpha06
2 มิถุนายน 2021
androidx.wear:wear-ongoing:1.0.0-alpha06
ได้รับการเผยแพร่แล้ว เวอร์ชัน 1.0.0-alpha06 มีคอมมิตเหล่านี้
การเปลี่ยนแปลง API
- เพิ่มช่องชื่อลงในกิจกรรมที่กำลังดำเนินอยู่ (I7a405)
การแก้ไขข้อบกพร่อง
SerializationHelper.copy()
จะทำสำเนาป้องกันของ ข้อมูล (I8b276)- ปรับปรุงเอกสารประกอบ setCategory (Iff01f)
Wear-Ongoing เวอร์ชัน 1.0.0-alpha05
18 พฤษภาคม 2021
androidx.wear:wear-ongoing:1.0.0-alpha05
ได้รับการเผยแพร่แล้ว เวอร์ชัน 1.0.0-alpha05 มีคอมมิตต่อไปนี้
การเปลี่ยนแปลง API
OngoingActivity
ตอนนี้มีตัวรับเพื่อดึงค่าทั้งหมดที่ตั้งค่าโดยตรงผ่าน Builder (หรือค่าเริ่มต้นที่นำมาจากการแจ้งเตือนที่เชื่อมโยง) (Id8ac8)- ตอนนี้ระบบใช้คลาสใหม่
Status
เพื่อสร้างสถานะของOngoingActivity
OngoingActivityData
และOngoingActivityStatus
ไม่ได้เป็นส่วนหนึ่งของ API สาธารณะอีกต่อไป
- ตอนนี้ระบบใช้คลาสใหม่
คลาส
TextStatusPart
และTimerStatusPart
จะไม่อยู่ใน Public API อีกต่อไป (I57fb6)- หากต้องการสร้าง
Part
ด้วยข้อความแบบคงที่ ให้ใช้Status.TextPart
- หากต้องการสร้าง
Part
ด้วยนาฬิกาจับเวลา (นับขึ้น) ให้ใช้Status.Stopwatch
- หากต้องการสร้าง
Part
พร้อมตัวจับเวลา (นับถอยหลัง) ให้ใช้Status.Timer
- หากต้องการสร้าง
Wear-Ongoing เวอร์ชัน 1.0.0-alpha04
5 พฤษภาคม 2021
androidx.wear:wear-ongoing:1.0.0-alpha04
ได้รับการเผยแพร่แล้ว เวอร์ชัน 1.0.0-alpha04 มีคอมมิตเหล่านี้
การเปลี่ยนแปลง API
- ใน OngoingActivity ตอนนี้เมธอดจากExistingOngoingActivity จะเรียกว่า recoverOngoingActivity
- ตอนนี้ OngoingActivity มีตัวรับค่าครบชุดแล้ว ซึ่งก่อนหน้านี้มีเฉพาะใน OngoingActivityData เท่านั้น (I0ee4d)
Wear-Remote-Interactions เวอร์ชัน 1.0.0-alpha05
21 กรกฎาคม 2021
androidx.wear:wear-remote-interactions:1.0.0-alpha05
ได้รับการเผยแพร่แล้ว เวอร์ชัน 1.0.0-alpha05 มีคอมมิตต่อไปนี้
การเปลี่ยนแปลง API
เราได้เพิ่มคลาส
RemoteIntentHelper
(เดิมคือ RemoteIntent ในไลบรารีการรองรับอุปกรณ์ที่สวมใส่ได้) ซึ่งใช้เปิด Intent ในอุปกรณ์อื่นๆ ได้ (เช่น จากนาฬิกาไปยังโทรศัพท์) (I1d7e0)ระบบได้นำคลาส PlayStoreAvailability ออกจากไลบรารี AndroidX แล้ว หากต้องการตรวจหาว่า Play Store พร้อมใช้งานในโทรศัพท์ที่เชื่อมต่อหรือไม่ ให้ใช้วิธี
androidx.phone.interactions.PhoneTypeHelper.getPhoneDeviceType
เพื่อพิจารณาว่าโทรศัพท์ที่เชื่อมต่อเป็นโทรศัพท์ Android หรือไม่ จากนั้นใช้วิธีandroidx.wear.utils.WearTypeHelper.isChinaDevice
เพื่อตรวจสอบว่าโทรศัพท์ที่เชื่อมต่อเป็นอุปกรณ์ของจีนหรือไม่ หากโทรศัพท์เป็นโทรศัพท์ Android และไม่ใช่โทรศัพท์ที่ผลิตในจีน คุณจะใช้ Play Store ได้ (Ie7dec)
Wear-Phone-Interactions เวอร์ชัน 1.0.0-alpha04
7 เมษายน 2021
androidx.wear:wear-phone-interactions:1.0.0-alpha04
ได้รับการเผยแพร่แล้ว เวอร์ชัน 1.0.0-alpha04 มีคอมมิตเหล่านี้
การเปลี่ยนแปลง API
- อัปเดตค่าคงที่
ErrorCode
เพื่อให้ไลบรารีใหม่เข้ากันได้แบบย้อนหลังกับการใช้งานในไลบรารีการสนับสนุนอุปกรณ์ที่สวมใส่ได้
การแก้ไขข้อบกพร่อง
- แก้ไขข้อยกเว้นที่เกิดจาก OAuth API ใหม่เมื่อเริ่มเซสชัน OAuth
Wear-Remote-Interactions เวอร์ชัน 1.0.0-alpha03
7 เมษายน 2021
androidx.wear:wear-remote-interactions:1.0.0-alpha03
ได้รับการเผยแพร่แล้ว เวอร์ชัน 1.0.0-alpha03 มีคอมมิตต่อไปนี้
การเปลี่ยนแปลง API
- เปลี่ยน
PlayStoreAvailability
ให้เป็นคลาสที่มีออบเจ็กต์คู่ที่มีเมธอดแบบคงที่ การใช้งานจะยังคงเหมือนเดิม
การแก้ไขข้อบกพร่อง
- แก้ไขเอกสารสรุปสำหรับ
WatchFaceConfigIntentHelper
เพื่อแสดงโค้ดตัวอย่างที่มีอักขระ HTML จริงอย่างถูกต้อง
Wear-Ongoing Wear-Phone-Interactions เวอร์ชัน 1.0.0-alpha03
10 มีนาคม 2021
androidx.wear:wear-ongoing:1.0.0-alpha03
และ androidx.wear:wear-phone-interactions:1.0.0-alpha03
เปิดตัวแล้ว เวอร์ชัน 1.0.0-alpha03 มีคอมมิตต่อไปนี้
ฟีเจอร์ใหม่
- ย้ายข้อมูล OAuthClient จากไลบรารีการสนับสนุน Wearable ไปยัง AndroidX เราเปลี่ยนชื่อคลาสที่ย้ายข้อมูลนี้เป็น RemoteAuthClient และรองรับการตรวจสอบสิทธิ์จากระยะไกลในอุปกรณ์ที่สวมใส่ได้ รวมถึงรองรับการเพิ่มส่วนขยาย PKCE ของ OAuth โดยจะมีตัวแฮนเดิลและคลาสตัวช่วยเพิ่มเติมสำหรับการสื่อสาร
- ตอนนี้คุณเชื่อมโยงกิจกรรมที่กำลังดำเนินอยู่กับการแจ้งเตือนที่มีแท็กได้แล้วโดยใช้ตัวสร้าง OngoingActivity.Builder ใหม่
การเปลี่ยนแปลง API
- เพิ่มการรองรับแท็กการแจ้งเตือนในคลังกิจกรรมต่อเนื่อง (I653b4)
- ย้ายข้อมูล OAuthClient จากไลบรารีการสนับสนุนของ Wear ไปยัง AndroidX และเพิ่มการรองรับส่วนขยาย PKCE ของ OAuth (I3eaaa)
Wear-Remote-Interactions เวอร์ชัน 1.0.0-alpha02
10 มีนาคม 2021
androidx.wear:wear-remote-interactions:1.0.0-alpha02
ได้รับการเผยแพร่แล้ว เวอร์ชัน 1.0.0-alpha02 มีคอมมิตเหล่านี้
ฟีเจอร์ใหม่
- ย้ายข้อมูลคลาส PlayStoreAvailability จาก Wearable Support Library ไปยัง AndroidX ซึ่งมี API สำหรับตรวจสอบว่า Play Store พร้อมใช้งานในโทรศัพท์หรือไม่
การแก้ไขข้อบกพร่อง
- การย้ายข้อมูลคลาส PlayStoreAvailability จาก ไลบรารีการสนับสนุนของอุปกรณ์ที่สวมใส่ได้ไปยัง AndroidX (I69bfe)
เวอร์ชัน 1.0.0-alpha02
10 กุมภาพันธ์ 2021
androidx.wear:wear-ongoing:1.0.0-alpha02
และ androidx.wear:wear-phone-interactions:1.0.0-alpha02
เปิดตัวแล้ว เวอร์ชัน 1.0.0-alpha02 มีคอมมิตเหล่านี้
การเปลี่ยนแปลง API
- เพิ่มการรองรับสถานะที่ซับซ้อนมากขึ้น ประกอบด้วยเทมเพลต (หรือหลายเทมเพลต) และชุดชิ้นส่วนที่จะใช้เพื่อเติมตัวยึดตำแหน่งของเทมเพลต ตอนนี้ OngoingActivityStatus มีเมธอดแบบคงที่สำหรับสร้างสถานะอย่างง่ายที่มีเพียงส่วนเดียว (ข้อความหรือตัวจับเวลา) และ Builder สำหรับสร้างสถานะที่ซับซ้อนมากขึ้น (I1fe81)
- ย้ายคลาส BridgingManager และ BridgingConfig จาก Wear Support Library ไปยัง AndroidX ซึ่งมี API สำหรับเปิด/ปิดใช้การแจ้งเตือนที่รันไทม์ และตั้งค่าแท็กสำหรับการแจ้งเตือนที่ได้รับการยกเว้นจากโหมดการเชื่อมต่อ (ไม่บังคับ) (I3a17e)
เวอร์ชัน 1.0.0-alpha01
27 มกราคม 2021
androidx.wear:wear-ongoing:1.0.0-alpha01
androidx.wear:wear-phone-interactions:1.0.0-alpha01
และ androidx.wear:wear-remote-interactions:1.0.0-alpha01
ออกอากาศแล้ว เวอร์ชัน 1.0.0-alpha01 มีคอมมิตต่อไปนี้
การเปลี่ยนแปลง API
ย้ายข้อมูลไลบรารีกิจกรรมที่กำลังดำเนินอยู่ไปยังไลบรารีย่อยใหม่ชื่อ wear-ongoing ตอนนี้คลาสต่างๆ อยู่ในแพ็กเกจ androidx.wear.ongoing (ก่อนหน้านี้คือ androidx.wear.ongoingactivities) (I7c029)
สร้างไลบรารีการสนับสนุนใหม่เพื่อเก็บคลาสที่รองรับการโต้ตอบจากอุปกรณ์ที่สวมใส่ได้ไปยังโทรศัพท์ ระบบจะใส่ข้อมูลชั้นเรียนที่ย้ายข้อมูลจาก Wearable Support Library ไว้ให้ (Id5180)
ย้ายข้อมูลคลาส PhoneDeviceType จากไลบรารีการสนับสนุนของ Wearable ไปยัง AndroidX ระบบจะเปลี่ยนชื่อคลาสที่ย้ายข้อมูลเป็น PhoneTypeHelper ซึ่งมีเมธอดตัวช่วยในการระบุประเภทโทรศัพท์ที่นาฬิกาปัจจุบันจับคู่ไว้ เพื่อใช้ในอุปกรณ์ที่สวมใส่ได้เท่านั้น (Ibd947)
สร้างไลบรารีการสนับสนุนใหม่เพื่อเก็บคลาสที่รองรับการโต้ตอบระหว่างอุปกรณ์ที่สวมใส่ได้กับโทรศัพท์ ระบบจะใส่ข้อมูลของคลาสที่ย้ายมาจาก Wearable Support Library ไว้ให้ (I9deb4)
ย้ายข้อมูลคลาส WatchFaceCompanion จากไลบรารีการสนับสนุนอุปกรณ์ที่สวมใส่ได้ไปยัง AndroidX ระบบจะเปลี่ยนชื่อคลาสที่ย้ายข้อมูลเป็น WatchFaceConfigIntentHelper ซึ่งมีฟังก์ชันตัวช่วยในการระบุรหัสและชื่อคอมโพเนนต์ในกิจกรรมการกำหนดค่าหน้าปัดในแอปที่ใช้ร่วมกันบนโทรศัพท์ และยังใช้ในเครื่องเพื่อกำหนดค่าหน้าปัดบนอุปกรณ์ที่สวมใส่ได้ด้วย (Ia455f)
ข้อมูลแทรกของ Wear และ Watchface 1.0.0
เวอร์ชัน 1.0.0-alpha22
15 กันยายน 2021
androidx.wear:wear-*:1.0.0-alpha22
ได้รับการเผยแพร่แล้ว เวอร์ชัน 1.0.0-alpha22 มีคอมมิตต่อไปนี้
ฟีเจอร์ใหม่
- ตอนนี้ EditorSession จะติดตามผู้สังเกตการณ์วงจรของกิจกรรม ดังนั้นคุณจึงไม่ต้องปิดอย่างชัดเจนเมื่อกิจกรรมสิ้นสุดลง
การเปลี่ยนแปลง API
- ตอนนี้ EditorSession และ ListenableEditorSession ใช้ StateFlow ของ Kotlin สำหรับ complicationSlotsState, ComplicationsPreviewData และ ComplicationsDataSourceInfo แล้ว (I761d9)
- ตอนนี้ EditorSession#userStyle เป็น
MutableStateFlow<UserStyle>
(I32ca9) แล้ว - ตอนนี้ EditorSession.createOnWatchEditorSession ใช้ Lifecycle Observer และจะปิดโดยอัตโนมัติเมื่อสังเกตเห็น onDestroy นอกจากนี้
createOnWatchEditorSession
ยังกำหนดให้ส่งกิจกรรมเท่านั้น นอกจากนี้ เรายังได้นำการเปลี่ยนแปลงที่เหมือนกันไปใช้กับ ListenableEditorSession ด้วย (Ic6b7f) - มีการคืนค่าตัวสร้างของ CustomValueUserStyleSetting เป็นส่วนหนึ่งของ API สาธารณะ (I2e69a)
- ตอนนี้
UserStyle
จะรับค่าจากMap<UserStyleSetting, UserStyleSetting.Option>
และMutableUserStyleSetting#put
จะส่ง IllegalArgumentException หากการตั้งค่าไม่ได้อยู่ในสคีมาหรือหากตัวเลือกไม่ตรงกับการตั้งค่า (Iba40f)
เวอร์ชัน 1.0.0-alpha21
1 กันยายน 2021
androidx.wear:wear-*:1.0.0-alpha21
ได้รับการเผยแพร่แล้ว เวอร์ชัน 1.0.0-alpha21 มีคอมมิตเหล่านี้
การเปลี่ยนแปลง API
- ตอนนี้ API ของหน้าปัด ไคลเอ็นต์ เอดิเตอร์ และภาวะแทรกซ้อนสาธารณะทั้งหมดใช้ java.time.Instant สำหรับเวลาแทน Long แล้ว ดังนั้นระดับ API ขั้นต่ำจึงเพิ่มขึ้นเป็น 26 (I3cd48)
- ตอนนี้ API ของหน้าปัดและภาวะแทรกซ้อนใช้ ZonedDateTime ที่เปลี่ยนแปลงไม่ได้แทน Calendar แล้ว (I25cf8)
- ตอนนี้ ComplicationSlots จะเริ่มต้นด้วย NoDataComplicationData, ComplicationSlot.complicationData จะมีค่าเสมอ และ CanvasComplicationDrawable.complicationData จะไม่เป็น Null อีกต่อไป (I4dfd6) ซึ่งจะช่วยลด (แต่ไม่ได้ขจัด) การกะพริบของข้อมูลแทรกเมื่อสลับระหว่างหน้าปัด
เวอร์ชัน 1.0.0-alpha20
18 สิงหาคม 2021
androidx.wear:wear-*:1.0.0-alpha20
ได้รับการเผยแพร่แล้ว เวอร์ชัน 1.0.0-alpha20 มีคอมมิตเหล่านี้
การเปลี่ยนแปลง API
- เราได้เพิ่ม createFallbackPreviewData ลงใน ComplicationDataSourceInfo ซึ่งใช้ได้เมื่อ ComplicationDataSourceInfoRetriever.retrievePreviewComplicationData แสดงผลเป็น null (I38c4d)
- เราได้เปลี่ยน ComplicationDataSourceUpdateRequester เป็นอินเทอร์เฟซเพื่อให้จำลองในการทดสอบหน่วยได้ คุณสร้าง ComplicationDataSourceUpdateRequester ที่เฉพาะเจาะจงได้ด้วย ComplicationDataSourceUpdateRequester.create() (I7da22)
- RenderParameters.pressedComplicationSlotIds ถูกแทนที่ด้วย RenderParameters.lastComplicationTapDownEvents ซึ่งแสดงคลาส TapEvent ใหม่ที่มีพิกัด x, y ของการแตะในหน่วยพิกเซลและการประทับเวลา
WatchFace.TapListener.onTap
ถูกแทนที่ด้วยonTapEvent(@TapType tapType: Int, tapEvent: TapEvent)
แล้ว นอกจากนี้ เราได้นำInteractiveWatchFaceClient.displayPressedAnimation
ออกแล้ว (Id87d2) - เพิ่มคำอธิบายประกอบการแยกเธรดอย่างชัดเจนสำหรับ setImportantForAccessibility (I990fa)
- ย้าย ComplicationSlotBoundsType ไปยัง androidx-wear-watchface.ComplicationSlotBoundsType ใน wear/wear-watchface แล้ว (I09420)
- เราได้เพิ่มการรองรับการส่งรหัสทรัพยากรสตริงไปยัง UserStyleSetting และ Options ตอนนี้เราขอแนะนำให้สร้างออบเจ็กต์เหล่านั้นด้วยวิธีนี้ (I03d5f)
- มีการกำหนดขีดจำกัดขนาดสูงสุดของสคีมา UserStyle นอกจากนี้ ไอคอนในสคีมาต้องมีขนาดไม่เกิน 400x400 พิกเซล (I3b65b)
- เราได้เพิ่มคลาส MutableUserStyle เพื่อรองรับการเปลี่ยนแปลงอินสแตนซ์ UserStyle (I95a40)
- เราได้เปลี่ยนชื่อ
ListenableWatchFaceMetadataClient.Companion#listenableCreateWatchFaceMetadataClient
เป็นListenableWatchFaceMetadataClient.Companion#createListenableWatchFaceMetadataClient
แล้ว (I64ce2) - เราได้แก้ไข EditorState.previewComplicationsData ให้มีเฉพาะข้อมูลสำหรับภาวะแทรกซ้อนที่เปิดใช้ และเพิ่ม
EditorSession.DEFAULT_PREVIEW_TIME_MILLIS
ซึ่งหากส่งไปยังคำขอrenderWatchFaceToBitmap
หรือPreviewScreenshotParams
จะแสดงผลตามเวลาแสดงตัวอย่างเริ่มต้นของหน้าปัดนาฬิกา (If7b3c) - เราได้นำตัวสร้าง UserStyleSetting ที่รับ CharSequence ออกจาก API สาธารณะแล้ว ขอแนะนำให้ใช้ตัวสร้างที่ต้องใช้รหัส StringResource แทน (I8537b)
CurrentUserStyleRepository.UserStyleChangeListener
รองรับ Conversion ของ SAM แล้ว (I85989)
เวอร์ชัน 1.0.0-alpha19
4 สิงหาคม 2021
androidx.wear:wear-*:1.0.0-alpha19
ได้รับการเผยแพร่แล้ว เวอร์ชัน 1.0.0-alpha19 มีคอมมิตเหล่านี้
การเปลี่ยนแปลง API
- เราได้เพิ่ม
ListenableWatchFaceMetadataClient.listenableCreateWatchFaceMetadataClient
ซึ่งมี WrapperListenableFuture
สำหรับWatchFaceMetadataClient.createWatchFaceMetadataClient
(I5fa37) - ตอนนี้
UserStyleOption.getOptionForId
ยอมรับUserStyleOption.Id
แทนอาร์เรย์ไบต์แล้ว (I469be) - ระบุค่าคงที่
BooleanOption.TRUE
และBooleanOption.FALSE
และไม่อนุญาตให้สร้างอินสแตนซ์ (I46e09) - ตอนนี้เราได้ใส่คำอธิบายประกอบให้กับเมธอดใน wear-watchface-client ที่สามารถส่ง RemoteException ได้แล้ว (Ib8438)
- เราได้เปลี่ยนชื่อ
EditorSession.createOnWatchEditingSession
เป็นcreateOnWatchEditorSession
เพื่อให้สอดคล้องกัน และในทำนองเดียวกันcreateHeadlessEditingSession
ก็เปลี่ยนเป็นcreateHeadlessEditorSession
แล้ว นอกจากนี้ เรายังได้เปลี่ยนชื่อแรปเปอร์ของฝรั่งด้วย (I1526b) - ตอนนี้
EditorSession
เป็นอินเทอร์เฟซและListenableEditorSession.commitChangesOnClose
ได้รับการมอบสิทธิ์อย่างถูกต้องแล้ว (I7dc3e) - ตอนนี้เราจะปฏิเสธสคีมาสไตล์ของผู้ใช้ที่มีการตั้งค่าหรือตัวเลือกที่มีรหัสที่ขัดแย้งกัน (Ic2715)
- เราได้เพิ่มฟังก์ชัน
UserStyle.get
ที่โอเวอร์โหลดซึ่งยอมรับUserStyleSetting.Id
(I2aa0f)
เวอร์ชัน 1.0.0-alpha18
21 กรกฎาคม 2021
androidx.wear:wear-*:1.0.0-alpha18
ได้รับการเผยแพร่แล้ว เวอร์ชัน 1.0.0-alpha18 มีคอมมิตเหล่านี้
การเปลี่ยนแปลง API
- เราได้ย้าย
ComplicationHelperActivity
ไปยังคลังandroidx.wear:wear-watchface
แล้ว (I39e76) - เพื่อความสอดคล้องและความชัดเจน เราได้เปลี่ยนชื่อ
ComplicationProvider
เป็นComplicationDataSource
และเปลี่ยนชื่อชั้นเรียนทั้งหมดที่มีคำว่า "ผู้ให้บริการ" ในชื่อในลักษณะเดียวกัน (Iaef0b) CanvasComplication.isHighlighted
ได้ย้ายไปที่RenderParameters.pressedComplicationSlotIds
แล้ว ซึ่งเป็นขั้นตอนในการทำให้CanvasComplication
เป็นแบบไม่เก็บสถานะ เพื่อรองรับการเปลี่ยนแปลงนี้ ตอนนี้CanvasComplication.render
ยังใช้slotId
เป็นพารามิเตอร์ได้ด้วย และเราจะส่งComplicationSlot
ไปยังGlesTextureComplication
(I50e6e)- เราได้เพิ่ม
headlessDeviceConfig
ลงในEditorRequest
หากไม่ใช่ค่า Null ระบบจะใช้พารามิเตอร์นี้เพื่อสร้างอินสแตนซ์แบบไม่มีส่วนหัวเพื่อสนับสนุน EditorSession แทนที่จะดำเนินการกับอินสแตนซ์แบบอินเทอร์แอกทีฟ ซึ่งช่วยให้เรียกใช้เครื่องมือแก้ไขสำหรับหน้าปัดที่ไม่ใช่หน้าปัดปัจจุบันได้ (I0a820) - เราได้เพิ่ม
WatchFaceMetadataClient
เวอร์ชันทดลอง ซึ่งช่วยให้ดึงข้อมูลเมตาของหน้าปัดแบบคงที่ได้อย่างมีประสิทธิภาพ เช่นUserStyleSchema
และรายละเอียดที่แก้ไขแล้วเกี่ยวกับComplicationSlots
(I6bfdf) - เราได้เปลี่ยนชื่อ
CanvasRenderer.uiThreadInit
เป็น init แล้ว (I6fff9) - เราได้เพิ่ม PreviewScreenshotParams ซึ่งเป็นพารามิเตอร์ใหม่ที่ไม่บังคับสำหรับ EditorRequest ซึ่งจะสั่งให้ EditorSession จับภาพหน้าจอตัวอย่างเมื่อมีการคอมมิตด้วยพารามิเตอร์เหล่านี้ รูปภาพตัวอย่างจะแสดงใน
EditorState.previewImage
(Ic2c16)
การแก้ไขข้อบกพร่อง
- นักพัฒนาแอปไม่จำเป็นต้องเพิ่ม ComplicationHelperActivity ลงในไฟล์ Manifest ของตนเองอีกต่อไป (I6f0c2)
เวอร์ชัน 1.0.0-alpha17
30 มิถุนายน 2021
androidx.wear:wear-*:1.0.0-alpha17
ได้รับการเผยแพร่แล้ว เวอร์ชัน 1.0.0-alpha17 มีคอมมิตเหล่านี้
ฟีเจอร์ใหม่
ใน
GlesRenderer
,makeUiThreadContextCurrent
และmakeBackgroundThreadContextCurrent
ได้ถูกแทนที่ด้วยrunUiThreadGlCommands
และrunBackgroundThreadGlCommands
ซึ่งทั้ง 2 รายการยอมรับRunnable
ไลบรารีจะช่วยให้มั่นใจว่ามีเพียงคำสั่ง GL ที่เรียกใช้ได้เท่านั้นที่ทำงานในเวลาใดก็ตามเราได้เพิ่ม
CanvasRenderer.uiThreadInit
ซึ่งจะเรียกใช้ครั้งเดียวใน UiThread ก่อนที่จะมีการเรียกใช้เพื่อแสดงผล เพื่อให้การเริ่มต้น UiThread ง่ายขึ้น นอกจากนี้ เรายังเพิ่มonRendererCreated
ลงในCanvasComplication
ซึ่งช่วยให้Renderer
และCanvasComplication
แชร์สถานะได้ง่ายขึ้นเพื่อความชัดเจน เราได้เปลี่ยนชื่อ
Complication
เป็นComplicationSlot
และcomplicationId
เป็นcomplicationSlotId
หรือcomplicationInstanceId
แล้วแต่การใช้งาน
การเปลี่ยนแปลง API
- เพื่อความชัดเจน เราได้เปลี่ยนชื่อ
Complication
เป็นComplicationSlot
และcomplicationId
เป็นcomplicationSlotId
หรือcomplicationInstanceId
แล้วแต่การใช้งาน คลาสที่ใช้ Complication ก็ได้รับการเปลี่ยนชื่อในลักษณะเดียวกัน เช่น ตอนนี้ ComplicationsManager เปลี่ยนชื่อเป็น ComplicationSlotsManager แล้ว (I4da44) - ใน GlesRenderer
makeUiThreadContextCurrent
และmakeBackgroundThreadContextCurrent
จะถูกแทนที่ด้วยrunUiThreadGlCommands
และrunBackgroundThreadGlCommands
ซึ่งทั้ง 2 รายการยอมรับRunnable
ฟังก์ชันเหล่านี้จำเป็นต่อเมื่อคุณต้องการเรียกใช้ GL นอกการแสดงผลrunBackgroundThreadGlCommands
และonUiThreadGlSurfaceCreated
ซึ่งจำเป็นเนื่องจากอาจมี GlesRenderer หลายรายการที่มีบริบทของตัวเองในกระบวนการเดียวกัน ซึ่งอาจมาจากหน้าปัดนาฬิกาที่แตกต่างกัน นอกจากนี้ ระบบยังซิงค์การเข้าถึงบริบท GL ปัจจุบันที่แชร์ด้วย (I04d59) - เราได้เพิ่ม
CanvasRenderer.uiThreadInit
ซึ่งจะเรียกใช้ 1 ครั้งใน UiThread ก่อนที่จะมีการเรียกใช้เพื่อแสดงผล นอกจากนี้ เพื่อความชัดเจนใน GlesRenderer เราได้เปลี่ยนชื่อonGlContextCreated
เป็นonBackgroundThreadGlContextCreated
และonGlSurfaceCreated
เป็นonUiThreadGlSurfaceCreated
(If86d0) HeadlessWatchFaceClient
และInteractiveWatchFaceClient
getComplicationsSlotState
ได้เปลี่ยนชื่อเป็นgetComplicationSlotsState
แล้ว ในComplicationSlot
:createRoundRectComplicationBuilder
,createBackgroundComplicationBuilder
และcreateEdgeComplicationBuilder
ได้เปลี่ยนชื่อเป็นcreateRoundRectComplicationSlotBuilder
,createBackgroundComplicationSlotBuilder
และcreateEdgeComplicationSlotBuilder
ตามลำดับ (Ib9adc)- เราได้เพิ่ม onRendererCreated ลงใน CanvasComplication ซึ่งช่วยให้ Renderer และ CanvasComplication แชร์สถานะได้ง่ายขึ้น (I5e1ac)
เวอร์ชัน 1.0.0-alpha16
16 มิถุนายน 2021
androidx.wear:wear-*:1.0.0-alpha16
ได้รับการเผยแพร่แล้ว เวอร์ชัน 1.0.0-alpha16 มีคอมมิตเหล่านี้
ฟีเจอร์ใหม่
- เราได้แก้ไขข้อบกพร่องหลายอย่างที่เกี่ยวข้องกับการเปลี่ยนแปลงโมเดลการแยกเธรดล่าสุด รวมถึงแก้ไขปัญหาอื่นๆ เกี่ยวกับเครื่องมือแก้ไขหน้าปัดด้วย
การแก้ไขข้อบกพร่อง
- ป้องกัน NPE ใน
onComplicationProviderChooserResult
(b/189594557) - แก้ไขปัญหาเกี่ยวกับพื้นผิวที่ล้าสมัยและ drawBlack (b/189452267)
- แก้ไขปัญหาการเข้าถึง
complicationsManager.watchState
(b/189457893) - แก้ไขข้อบกพร่องเกี่ยวกับอายุการใช้งานของเธรดเบื้องหลัง (b/189445428)
- แก้ไขปัญหาเกี่ยวกับโปรแกรมแก้ไขหน้าปัดสำหรับนาฬิกาเวอร์ชันก่อน R (b/189126313)
- ไม่อัปเดตพารามิเตอร์การบูตโดยตรงสำหรับการเปลี่ยนแปลงสไตล์ของเอดิเตอร์ (b/187177307)
เวอร์ชัน 1.0.0-alpha15
2 มิถุนายน 2021
androidx.wear:wear-*:1.0.0-alpha15
ได้รับการเผยแพร่แล้ว เวอร์ชัน 1.0.0-alpha15 มีคอมมิตต่อไปนี้
ฟีเจอร์ใหม่
ตอนนี้การเริ่มต้นหน้าปัดส่วนใหญ่จะดำเนินการในเธรดเบื้องหลัง แต่หลังจากโหลดการแสดงผลหน้าปัดทั้งหมดแล้ว ระบบจะดำเนินการใน UiThread มีตัวกั้นหน่วยความจำระหว่างการโหลดและการแสดงผล ดังนั้นหน้าปัดส่วนใหญ่ของผู้ใช้จึงไม่จำเป็นต้องดำเนินการใดๆ เป็นพิเศษ หน้าปัดที่ใช้ GLES อาจเป็นข้อยกเว้นเนื่องจากบริบทเป็นแบบเฉพาะเธรด และเราสร้างบริบทที่ลิงก์ 2 รายการเพื่อให้สามารถอัปโหลดทรัพยากร GL (เช่น พื้นผิวและ Shader) ในเธรดเบื้องหลังและใช้ใน UiThread ได้
เราได้แบ่งการสร้างหน้าปัดออกเป็น 3 ฟังก์ชัน ได้แก่ createUserStyleSchema, createComplicationsManager และ createWatchFace เราถือว่า createUserStyleSchema และ createComplicationsManager ทำงานได้อย่างรวดเร็ว ส่วน createWatchFace อาจใช้เวลาสักครู่ในการโหลดชิ้นงาน เราจึงได้เปิดตัว WatchFaceControlClient.getDefaultProviderPoliciesAndType
ซึ่งจะแสดงผลแผนที่ของรหัสภาวะแทรกซ้อนไปยัง DefaultComplicationProviderPolicies และ ComplicationType เริ่มต้น วิธีนี้เร็วกว่าการสร้างอินสแตนซ์แบบไม่มีส่วนหัว เนื่องจากไม่จำเป็นต้องเริ่มต้นหน้าปัดอย่างเต็มรูปแบบเพื่อทำการค้นหา
สุดท้ายนี้ ตอนนี้เราได้สร้างข้อมูลแทรกด้วย CanvasComplicationFactory ซึ่งช่วยให้สร้างโปรแกรมแสดงผล CanvasComplication แบบเลซีได้
การเปลี่ยนแปลง API
- แทนที่
@TargetApi
ด้วย@RequiresApi
แล้ว (I0184a, b/187447093, b/187447094) - เราได้เปิดตัว
WatchFaceControlClient.getDefaultProviderPoliciesAndType
ซึ่งจะแสดงผลแมปของรหัสภาวะแทรกซ้อนไปยัง DefaultComplicationProviderPolicies และ ComplicationType เริ่มต้น ระบบจะใช้เส้นทางที่รวดเร็วซึ่งหลีกเลี่ยงการสร้างหน้าปัดอย่างเต็มรูปแบบเมื่อเป็นไปได้ เราจึงต้องเปลี่ยนแปลง WatchFaceService API โดยมี 2 เมธอดใหม่ ได้แก่ createUserStyleSchema และ createComplicationsManager ซึ่งผลลัพธ์จะส่งไปยัง createWatchFace นอกจากนี้ ตอนนี้เราได้สร้างข้อมูลแทรกด้วย CanvasComplicationFactory ซึ่งช่วยให้สร้างโปรแกรมแสดงผล CanvasComplication แบบเลซีได้ (Iad6c1) - เราได้นำ MOST_RECENT_APP ออกจาก SystemProviders แล้ว (I3df00)
- ตอนนี้ ObservableWatchData เป็นคลาสที่ปิดผนึกแล้ว (Ic940d)
- ตอนนี้ระบบจะเรียกใช้ CanvasComplicationFactory.create (ซึ่งมักจะเชื่อมโยงกับ I/O) ในเธรดพื้นหลังสำหรับภาวะแทรกซ้อนแต่ละรายการก่อนที่การแสดงผลใน UI เธรดจะเริ่มขึ้น มีตัวกั้นหน่วยความจำระหว่างการสร้างและการแสดงผล จึงไม่จำเป็นต้องใช้ Primitive แบบพิเศษ (Ia18f2)
- ตอนนี้การสร้างหน้าปัดจะทำในเธรดเบื้องหลัง แม้ว่าการแสดงผลทั้งหมดจะทำในเธรด UI แต่ GlesRenderer รองรับบริบทที่ลิงก์ 2 รายการเพื่อรองรับการดำเนินการนี้ WatchFaceControlClient.createHeadlessWatchFaceClient และ WatchFaceControlClient.getOrCreateInteractiveWatchFaceClient อาจทำงานเสร็จก่อนที่ WatchFaceService.createWatchFace จะเสร็จสมบูรณ์ การเรียก API ครั้งต่อๆ ไปจะถูกบล็อกจนกว่าการเริ่มต้น watchFace จะเสร็จสมบูรณ์ (Id9f41)
- EXPANSION_DP และ STROKE_WIDTH_DP จะไม่ปรากฏใน api.txt อีกต่อไป (I54801)
- เราได้แก้ไขให้ EditorSession.createOnWatchEditingSession แสดง TimeoutCancellationException หากเกิดข้อผิดพลาดแทนที่จะส่งเซสชันเป็น Null นอกจากนี้ ค่าที่ส่งกลับของ EditorRequest.createFromIntent และ EditorSession.createOnWatchEditingSession จะเป็น NonNull แล้ว (I41eb4)
เวอร์ชัน 1.0.0-alpha14
18 พฤษภาคม 2021
androidx.wear:wear-*:1.0.0-alpha14
ได้รับการเผยแพร่แล้ว เวอร์ชัน 1.0.0-alpha14 มีคอมมิตต่อไปนี้
ฟีเจอร์ใหม่
EditorSession.openComplicationProviderChooser
จะแสดงผล ChosenComplicationProvider ซึ่งมีรหัสภาวะแทรกซ้อนComplicationProviderInfo
และ Bundle ที่มีข้อมูลเพิ่มเติมที่ตัวเลือกผู้ให้บริการแสดงผล- นอกจากนี้ เรายังย้ายข้อมูลโค้ดไปยัง Kotlin อย่างต่อเนื่อง และตอนนี้ API หน้าปัดส่วนใหญ่ก็กำหนดไว้ใน Kotlin แล้ว
การเปลี่ยนแปลง API
- ตอนนี้พร็อพเพอร์ตี้
eglContext
และeglDisplay
ของ GlesRenderer จะไม่เป็นค่าว่างแล้ว ตอนนี้ระบบจะรายงานข้อผิดพลาด GL ผ่านGlesRenderer.GlesException
แทนที่จะผ่าน RuntimeExceptions (Ib1005) - เราได้ย้ายข้อมูล
androidx.wear.watchface.complications.rendering.ComplicationDrawable
จาก Java ไปยัง Kotlin (Ibc3eb) - เราได้ย้ายข้อมูล
androidx.wear.watchface.complications.rendering.ComplicationStyle
จาก Java ไปยัง Kotlin (I3375e) - เราได้เพิ่มข้อมูลเกี่ยวกับผู้ให้บริการแทรกข้อมูลสำหรับแทรกข้อมูลแต่ละรายการภายใน EditorSession (I37f14)
- เราได้ขยายผลลัพธ์ของ
EditorSession.openComplicationProviderChooser
เพื่อรวมข้อมูลที่ส่งคืนโดย (Iead6d)
ข้อมูลแทรกของ Wear และหน้าปัดเวอร์ชัน 1.0.0-alpha13
5 พฤษภาคม 2021
androidx.wear:wear-*:1.0.0-alpha13
ได้รับการเผยแพร่แล้ว เวอร์ชัน 1.0.0-alpha13 มีคอมมิตต่อไปนี้
ฟีเจอร์ใหม่
หน้าปัดอาจมีองค์ประกอบภาพที่สำคัญนอกเหนือจากการแสดงเวลาและข้อมูลแทรก ตอนนี้หน้าปัดสามารถระบุ ContentDescriptionLabels ของการช่วยเหลือพิเศษผ่านพร็อพเพอร์ตี้ additionalContentDescriptionLabels ของ Renderer เพื่อรองรับโปรแกรมอ่านหน้าจอสำหรับฟีเจอร์นี้ นอกจากนี้ เรายังได้เพิ่ม ContentDescriptionLabels accessibilityTraversalIndex ลงใน Complication เพื่อควบคุมลำดับการแสดงผล โดยแก้ไขได้ด้วย ComplicationsUserStyleSetting
เพื่อกระตุ้นให้นักพัฒนาแอปพิจารณาโปรแกรมอ่านหน้าจออย่างรอบคอบ เราจึงกำหนดให้ฟิลด์
ShortTextComplicationData.Builder
,LongTextComplicationData.Builder
และRangedValueComplicationData.Builder
ของcontentDescription
ต้องส่งไปยังตัวสร้างของฟิลด์เหล่านั้น หากส่งComplicationText.EMPTY
สำหรับcontentDescription
ระบบจะสร้างcontentDescription
จากข้อความและชื่อโดยอัตโนมัติWatchFaceControlClient.getOrCreateInteractiveWatchFaceClient
จะแสดงServiceStartFailureException
หากหน้าปัดนาฬิกาแสดงข้อยกเว้นระหว่างการเริ่มต้น ซึ่งจะช่วยให้วินิจฉัยปัญหาในระหว่างการเริ่มต้นหน้าปัดนาฬิกาได้ง่ายขึ้นมาก
การเปลี่ยนแปลง API
- เราได้เพิ่มการรองรับการมีชื่อคอมโพเนนต์เป็น Null ใน ComplicationProviderInfo ซึ่งจำเป็นต่อการรองรับ Wear OS เวอร์ชันเก่า (I744d2)
- เราได้ย้ายข้อมูล
androidx.wear.complications.SystemProviders
จาก Java ไปยัง Kotlin แล้ว (Ia1f8b) - เราได้ซ่อนคลาสทั้งหมดจาก API สาธารณะที่อยู่ใน android.support.wearable.complications และสร้าง Wrapper ที่เกี่ยวข้องใน AndroidX เมื่อจำเป็น (I7bd50)
- เราได้เปลี่ยนชื่อเมธอดใน
TimeDifferenceComplicationText.Builder
จากsetMinimumUnit
เป็นsetMinimalTimeUnit
(I20c64) - เราได้กำหนดให้ฟิลด์
ShortTextComplicationData.Builder
,LongTextComplicationData.Builder
และRangedValueComplicationData.Builder
contentDescription
ต้องส่งในเครื่องมือสร้าง (I8cb69) - เราได้เปลี่ยนชื่อ ComplicationProviderService.onComplicationUpdate เป็น onComplicationRequest และ แคปซูลพารามิเตอร์รหัสและประเภทของเมธอดนี้เป็น ComplicationRequest ของข้อมูล เราได้เปลี่ยนชื่อ Listener ที่เกี่ยวข้องเป็น ComplicationRequestListener และเปลี่ยนชื่อเมธอดเป็น ComplicationRequestListener.onComplicationData (Iaf146)
- เราได้นำเมธอด
isActiveAt
ออกจากComplicationData
และ แสดงฟิลด์validTimeRange
แทน คุณแทนที่การเรียกใช้เมธอดนี้ด้วยvalidTimeRange.contains
ได้ (I65936) - เราได้เปลี่ยนคำอธิบายของเมธอด ComplicationProviderService.onComplicationActivated เพื่อรับ ComplicationType แทน int (Idb5ff)
- ย้ายข้อมูล ProviderUpdateRequester จาก Java ไปยัง Koltin (Ibce13)
- ตอนนี้ GlesRender.makeContextCurrent เป็นแบบสาธารณะแล้ว โค้ดหน้าปัดอาจต้องทำการเรียกใช้ gl นอกการแสดงผลและ onGlContextCreated และเนื่องจากอาจมีทั้งบริบทแบบอินเทอร์แอกทีฟและแบบไม่มีส่วนหัว จึงจำเป็นต้องเรียกใช้ (I8a43c)
- ตอนนี้ WatchFaceControlClient.getOrCreateInteractiveWatchFaceClient จะแสดง ServiceStartFailureException หากวอทช์เฟสแสดงข้อผิดพลาดระหว่างการเริ่มต้น นอกจากนี้ ตอนนี้ WatchFaceService จะแสดงข้อยกเว้นหาก createWatchFace ใช้เวลานานกว่า 6 วินาที (I59b2f)
- เราได้นำพร็อพเพอร์ตี้รหัสที่ไม่ได้ใช้ของ
GlesTextureComplication
ออกแล้ว (I28958) - ตอนนี้หน้าปัดสามารถระบุ ContentDescriptionLabels เพื่อการช่วยเหลือพิเศษผ่านพร็อพเพอร์ตี้
Renderer
's additionalContentDescriptionLabels ได้แล้ว นอกจากจะควบคุมลำดับของ ContentDescriptionLabels แล้ว เรายังได้เพิ่ม accessibilityTraversalIndex ลงใน Complication ด้วย โดยแก้ไขได้ด้วย ComplicationsUserStyleSetting (Ib7362) - ขยายเอกสารประกอบเกี่ยวกับการจัดการเหตุการณ์สัมผัสในหน้าปัด (Iaf31e)
การแก้ไขข้อบกพร่อง
EditorSession.getComplicationsPreviewData()
จะแสดงผลแผนที่สำหรับทุกภาวะแทรกซ้อนที่ไม่ได้ว่างเปล่าเท่านั้น ระบบจะใช้อินสแตนซ์ของ EmptyComplicationData สำหรับข้อมูลแทรกที่ว่างเปล่า (I1ef7e)
ข้อมูลแทรกของ Wear และหน้าปัดเวอร์ชัน 1.0.0-alpha12
21 เมษายน 2021
androidx.wear:wear-*:1.0.0-alpha12
ได้รับการเผยแพร่แล้ว เวอร์ชัน 1.0.0-alpha12 มีคอมมิตต่อไปนี้
ฟีเจอร์ใหม่
เอดิเตอร์หน้าปัดต้องไฮไลต์ส่วนต่างๆ ของหน้าปัดเพื่อช่วยสื่อให้เห็นว่ากำลังกำหนดค่าส่วนใดของนาฬิกา เราได้ขยาย RenderParameters เพื่อให้ไฮไลต์ทั้งรูปแบบและข้อมูลแทรกได้ มี HighlightLayer ใหม่ที่ไม่บังคับซึ่งออกแบบมาให้วางซ้อนบนหน้าปัดนาฬิกาที่มีความโปร่งใสแบบอัลฟ่า (API ภาพหน้าจอสามารถวางซ้อนให้คุณได้ หรือจะให้ HighlightLayer แยกต่างหากเพื่อความยืดหยุ่นสูงสุดก็ได้) เช่น สมมติว่าคุณมีสไตล์ที่ให้คุณกำหนดค่าลักษณะที่ปรากฏของเข็มนาฬิกา ตัวแสดงผลใน renderHighlightLayer จะวาดเส้นขอบรอบเข็มนาฬิกาได้
เราได้กำหนดให้ฟิลด์ contentDescription ของ PhotoImageComplicationData.Builder, MonochromaticImageComplicationData.Builder และ SmallImageComplicationData.Builder เป็นอาร์กิวเมนต์ของตัวสร้างที่จำเป็น เพื่อสนับสนุนให้ผู้ให้บริการข้อมูลแทรกรองรับการช่วยเหลือพิเศษ เพิ่ม ComplicationTapFilter และ Complication.createEdgeComplicationBuilder เพื่อรองรับข้อมูลแทรกที่ขอบ (วาดรอบขอบของหน้าจอ) การแสดงผลและการทดสอบการแตะของข้อมูลแทรกที่ขอบขึ้นอยู่กับหน้าปัด เครื่องมือแก้ไขร่วมไม่รองรับการทดสอบการเข้าชมที่ขอบ
การเปลี่ยนแปลง API
- เพิ่มคำนำหน้า
PROVIDER_
ให้กับค่าคงที่ใน SystemProviders (I1e773) - เราได้กำหนดให้ฟิลด์
PhotoImageComplicationData.Builder
,MonochromaticImageComplicationData.Builder
และSmallImageComplicationData.Builder
contentDescription
เป็นฟิลด์ที่ต้องระบุ เพื่อส่งในตัวสร้าง (I9643a) - เปลี่ยนชื่อ
ProviderInfoRetriever.requestPreviewComplicationData
เป็นretrievePreviewComplicationData
แล้ว (I911ee) - ย้ายข้อมูล
ComplicationProviderService
จาก Java ไปยัง Kotlin (I849f2) - ตอนนี้เมธอด
ComplicationProviderService.onBind
พร้อมใช้งานแล้ว (I39af5) - เราได้คืนค่าอินเทอร์เฟซ
CanvasComplication
และย้ายCanvasComplicaitonDrawable
,GlesTextureComplication
และComplicationHighlightRenderer
ไปยังwear-watchface-complications-rendering
แล้ว (I84670) RenderParameters
ได้รับการปรับโครงสร้างใหม่เพื่อรองรับการแสดงผลไฮไลต์เพิ่มเติม ตอนนี้คุณขอให้แสดงไฮไลต์สำหรับสไตล์ รวมถึงภาวะแทรกซ้อนทั้งหมดหรือภาวะแทรกซ้อนเดียวได้แล้ว นอกจากนี้ CanvasRenderer และ GlesRenderer ยังมีเมธอด renderHighlightLayer แบบใหม่ที่เป็นนามธรรมสำหรับการแสดงผลการไฮไลต์ที่เอดิเตอร์ขอ เปลี่ยนชื่อเลเยอร์เป็น WatchFaceLayer แล้ว (Ic2444)- เพิ่ม
ComplicationTapFilter
และComplication.createEdgeComplicationBuilder
เพื่อรองรับข้อมูลแทรกที่ขอบ การแสดงผลและการทดสอบการแตะของข้อมูลแทรกที่ขอบขึ้นอยู่กับหน้าปัด ระบบไม่รองรับการทดสอบ Hit จากภายในเอดิเตอร์ (Ia6604) - สำหรับ
DoubleRangeUserStyleSetting
และLongRangeUserStyleSetting
: ตอนนี้defaultValue
,maximumValue
และminimumValue
เป็นพร็อพเพอร์ตี้ Kotlin แล้ว นอกจากนี้ เรายังได้นำUserStyleSetting.Option
ฟังก์ชันต่างๆ เช่น toBooleanOption, toCoplicationOptions, toListOption และฟังก์ชันที่คล้ายกันออกด้วย (I52899) - เพิ่มขนาดคางลงในพร็อพเพอร์ตี้ของอุปกรณ์ที่พร้อมใช้งานกับหน้าปัด (I76e1e)
- ตอนนี้เครื่องมือสร้างของ
ComplicationHighlightRenderer
ยอมรับพารามิเตอร์outlineExpansion
และoutlineStrokeWidth
แล้ว (I87009) - ตอนนี้
ComplicationDrawable.getNoDataText
เป็นส่วนหนึ่งของ API สาธารณะแล้ว (I00598)
เวอร์ชัน 1.0.0-alpha11
7 เมษายน 2021
androidx.wear:wear-*:1.0.0-alpha11
ได้รับการเผยแพร่แล้ว เวอร์ชัน 1.0.0-alpha11 มีคอมมิตเหล่านี้
ฟีเจอร์ใหม่
- เราได้ปรับปรุง API หน้าปัดเพิ่มเติม การเปลี่ยนแปลงส่วนใหญ่เป็นการเปลี่ยนชื่ออย่างง่าย แต่เราได้รวม
InteractiveWatchFaceWcsClient
และInteractiveWatchFaceSysUiClient
เข้ากับInteractiveWatchFaceClient
การเปลี่ยนแปลง API
- ตอนนี้ ContentDescriptionLabel.text เป็น ComplicationText แล้ว ไม่ใช่ TimeDependentText ในไลบรารีการสนับสนุนอุปกรณ์ที่สวมใส่ได้แบบเดิม (I80c03)
SystemProviders.GOOGLE_PAY
ไม่รับประกันว่าจะพร้อมใช้งานในอุปกรณ์ Android R ทุกเครื่อง จึงได้นำออกจากรายการแล้ว คุณยังคงใช้ผู้ให้บริการนี้ผ่านDefaultComplicationProviderPolicy
ได้ (If01b5)- เราได้เปลี่ยนชื่อ ComplicationUpdateCallback เป็น ComplicationUpdateListener เพื่อให้สอดคล้องกัน (I61ec7)
- เราได้เปลี่ยนแผนผังรูปแบบการส่งผ่านข้อมูล UserStyle เป็น
Map<String, byte[]>
และเพื่อความสะดวก เราได้เพิ่มคลาสUserStyleData
ลงใน API สาธารณะ และตอนนี้ wear-watchface-client และ wear-watchface-editor ก็ใช้คลาสนี้แล้ว นอกจากนี้ ตอนนี้ CustomValueUserStyleSetting.CustomValueOption.value เป็นbyte[]
แทนString
แล้ว (Iaa103) - ตอนนี้
UserStyleSetting
และUserStyleSetting.Option
ใช้UserStyleSetting.Id
และUserStyleSetting.Option.Id
ตามลำดับเพื่อจัดเก็บรหัสแทนที่จะใช้สตริง (I63f72) - เปลี่ยนชื่อ
InteractiveWatchFaceClient.SystemState
เป็นWatchUiState
แล้ว (I6a4e0) InteractiveWatchFaceWcsClient
และInteractiveWatchFaceSysUiClient
ได้รับการผสานรวมเนื่องจากอธิบายการแบ่งความรับผิดชอบได้ยาก (Iff3fa)- มีการเปลี่ยนชื่อค่า Enum ของเลเยอร์เพื่อความชัดเจน
Layer#TOP_LAYER
เปลี่ยนชื่อเป็นLayer#COMPLICATIONS_OVERLAY
แล้ว และLayer#BASE_LAYER
เปลี่ยนชื่อเป็นLayer#BASE
(Ia144e) แล้ว - เปลี่ยนชื่อ
UserStyleListener
เป็นUserStyleChangeListener
แล้ว (I18524) - เปลี่ยนชื่อ
UserStyleRepository
เป็นCurrentUserStyleRepository
แล้ว (I6ea53) - เปลี่ยนชื่อ
InteractiveWatchFaceWcsClient.updateInstance
เป็นupdateWatchfaceInstance
แล้ว (I321dc) - เราได้เปลี่ยนชื่อเหตุการณ์ WatchFace TapType เพื่อให้สอดคล้องกับ MotionEvents / Compose (I0dfd0)
- เปลี่ยนชื่อ takeWatchfaceScreenshot เป็น renderWatchFaceToBitmap และเปลี่ยนชื่อ takeComplicationScreenshot เป็น renderComplicationToBitmap (Ie0697)
- เราได้นำอินเทอร์เฟซ CanvasComplication ออกเพื่อใช้คลาส CanvasComplicationDrawable แบบเปิดแทน (I1f81f)
- นำ
WatcfaceControlServiceFactory
ออกจาก API สาธารณะแล้ว (I1f8d3) - เราได้เปลี่ยนชื่อ
CanvasComplication.setData
เป็นCanvasComplication.loadData
แล้ว (If1239) - เปลี่ยนชื่อ
ComplicationsManager.bringAttentionToComplication
เป็นdisplayPressedAnimation
แล้ว (Ic4297) - ตอนนี้
WatchFaceService.createWatchFace
มีคำอธิบายประกอบ@UiThread
แล้ว (Ib54c2) - เปลี่ยนชื่อพารามิเตอร์ CanvasComplicationDrawable เพื่อแก้ไขข้อบกพร่อง (I50dac)
- เราได้เพิ่ม
HeadlessWatchFaceClient.toBundle()
และHeadlessWatchFaceClient.createFromBundle
เพื่อรองรับการส่งHeadlessWatchFaceClient
ผ่าน AIDL (I07c35) - ตอนนี้ HeadlessWatchFaceClient และ InteractiveWatchFaceClient มี ClientDisconnectListener และ isConnectionAlive() เพื่อให้คุณสังเกตได้ว่าการเชื่อมต่อขาดหายไปเนื่องจากสาเหตุบางอย่างหรือไม่ (เช่น มีการปิดหน้าปัดนาฬิกา) (Ie446d)
- ตอนนี้
WatchFaceControlClient#getOrCreateWallpaperServiceBackedInteractiveWatchFaceWcsClientAsync
เป็นฟังก์ชันระงับและเปลี่ยนชื่อเป็นgetOrCreateInteractiveWatchFaceClient
แล้ว (Ib745d) - เปลี่ยนชื่อ
EditorState.commitChanges
และhasCommitChanges()
เป็นshouldCommitChanges()
แล้ว (I06e04) previewComplicationData
ได้เปลี่ยนชื่อเป็นpreviewComplicationsData
เพื่อระบุว่าโดยปกติแล้วจะมีข้อมูลแทรกมากกว่า 1 รายการในแผนที่ (I56c06)- เราได้เปลี่ยนชื่อ
InteractiveWatchFaceWcsClient.bringAttentionToComplication
เป็นdisplayPressedAnimation
เพื่อให้สอดคล้องกับComplicationsManager.displayPressedAnimation
(Ic9999) - ระบบได้แคปซูลรหัสอินสแตนซ์ของหน้าปัดนาฬิกาทั้งหมดไว้ในคลาส WatchFaceId ใหม่ (I45fdf)
- เราได้เปลี่ยนชื่อพร็อพเพอร์ตี้
complicationState
เป็นcomplicationsState
เพื่อระบุจำนวนที่มากกว่า 1 (Ided07) - เราได้นำการแปลง Binder ต่างๆ ของ wear-watchface-client ออกแล้ว คุณไม่จำเป็นต้องใช้ (Icc4c0)
- เราได้ปรับโครงสร้าง
EditorServiceClient
เพื่อใช้ Listener แทน Observer เพื่อให้มีความสอดคล้องกัน (Iec3a4) - เราได้เพิ่มคำอธิบายประกอบ
@Px
ที่ขาดหายไป 2 รายการไปยังInteractiveWatchFaceSysUiClient
และWatchFaceControlClient
(I3277a) - เปลี่ยนชื่อ EditorObserverCallback เป็น EditorObserverListener เพื่อให้สอดคล้องกัน (Ie572d)
- EditorState.watchFaceInstanceId ถูกจำกัดไว้สำหรับ API ระดับ Android R ขึ้นไปและไม่สามารถเป็นค่า Null ได้อีกต่อไป (Id52bb)
- เปลี่ยนชื่อ
EditorSession.launchComplicationProviderChooser
เป็นopenComplicationProviderChooser
แล้ว (I9d441) EditorSession.createOnWatchEditingSessionAsync
เปลี่ยนชื่อเป็นcreateOnWatchEditingSession
แล้ว และตอนนี้เป็นฟังก์ชันระงับ (Id257b)- เพิ่มคำอธิบายประกอบ
@UiThread
ที่ขาดหายไปหลายรายการในEditorSession
(I6935c) - เปลี่ยนชื่อ
UserStyleSetting.affectsLayers
เป็นaffectedLayers
แล้ว (I6e22b)
เวอร์ชัน 1.0.0-alpha10
24 มีนาคม 2021
androidx.wear:wear-*:1.0.0-alpha10
ได้รับการเผยแพร่แล้ว เวอร์ชัน 1.0.0-alpha10 มีคอมมิตเหล่านี้
ฟีเจอร์ใหม่
- ตอนนี้คุณสามารถสร้างออบเจ็กต์ Open GL (เช่น พื้นผิว) ในระหว่าง WatchFaceService.createWatchFace ได้แล้ว เนื่องจาก GlesRenderer กำหนดให้ต้องเรียก initOpenGLContext อย่างชัดเจน ซึ่งสามารถทำได้ภายใน createWatchFace
การเปลี่ยนแปลง API
IdAndComplicationData
ค่อนข้างแปลกและถูกนำออกจาก API สาธารณะแล้ว เราได้ปรับโครงสร้างคลาสและอินเทอร์เฟซที่ใช้คลาสนี้แล้ว (I4c928)- เราได้แทนที่
ReferenceTime
ด้วยCountUpTimeReference
และCountDownTimeReference
ซึ่งอธิบายตัวเองได้ดีกว่า (Ib66c6) - เพิ่มคำอธิบายประกอบ
@Px
และ@ColorInt
ที่ขาดหายไป (I9bbc3) - ตอนนี้
Complication.complicationConfigExtras
จะต้องระบุค่าและค่าเริ่มต้นคือBundle.EMPTY
(Iad04f) GlesRenderer
กำหนดให้คุณต้องเรียกinitOpenGLContext
หลังจากสร้าง ฟังก์ชันนี้เป็นรายละเอียดภายใน แต่ตอนนี้อยู่ใน API สาธารณะเพื่อให้เรียก GL ได้เร็วขึ้นภายใน createWatchFace (I726c2)- เราได้นำ
Complication.setRenderer
ออกแล้วเนื่องจากไม่ควรมี (Ie992f) Complicaiton.setComplicationBounds
ไม่ได้เป็นส่วนหนึ่งของ API สาธารณะอีกต่อไป หากต้องการปรับตำแหน่งของภาวะแทรกซ้อน คุณสามารถทำได้ผ่านComplicationsUserStyleSetting
(Ibd9e5)- เปลี่ยนชื่อ
ComplicationsManager.TapCallback.onComplicationSingleTapped
เป็นonComplicationTapped
แล้ว (I3a55c) - เปลี่ยนชื่อ
ComplicationOutlineRenderer.drawComplicationSelectOutline
เป็นdrawComplicationOutline
แล้ว (I14b88)
เวอร์ชัน 1.0.0-alpha09
10 มีนาคม 2021
androidx.wear:wear-complications-*:1.0.0-alpha09
และ androidx.wear:wear-watchface-*:1.0.0-alpha09
เปิดตัวแล้ว เวอร์ชัน 1.0.0-alpha09 มีคอมมิตต่อไปนี้
ฟีเจอร์ใหม่
- อินเทอร์เฟซระหว่างโฮสต์ WCS/SysUI กับหน้าปัดมีการพัฒนาขึ้น ตอนนี้เอดิเตอร์สามารถพิจารณาได้ว่าการเปลี่ยนสไตล์จะเปิดหรือปิดใช้ Complication (เปิดใช้ = initiallyEnabled บวกกับการลบล้างจาก ComplicationsUserStyleSetting) นอกจากนี้ ยัง
EditorService.closeEditor
อนุญาตให้ SysUI ปิดโปรแกรมแก้ไขหน้าปัดบนนาฬิกาจากระยะไกลได้หากจำเป็น - นอกจากนี้
InteractiveWatchFaceWcsClient.setUserStyle
ยังมีคำสั่งที่ทรงพลังยิ่งขึ้นupdateInstance
ซึ่งจะเปลี่ยนรหัสอินสแตนซ์ ตั้งค่าสไตล์ และล้างข้อมูลแทรกทั้งหมดได้ในคราวเดียว
การเปลี่ยนแปลง API
- เพิ่ม TraceEvents ลงในไลบรารีหน้าปัดแล้ว (I1a141)
ComplicationState
มีพร็อพเพอร์ตี้ใหม่initiallyEnabled
ซึ่งมีประโยชน์ในการคาดการณ์ผลลัพธ์ของการเปลี่ยนสไตล์ (I8c905)- เราได้แทนที่
InteractiveWatchFaceWcsClient.setUserStyle
ด้วยคำสั่งupdateInstance
ที่มีประสิทธิภาพมากขึ้น ซึ่งจะเปลี่ยนรหัสอินสแตนซ์ ตั้งค่าสไตล์ และล้างข้อมูลแทรก (Ife6f6) - API ภาพหน้าจอ WatchFaceClient จะไม่บีบอัดภาพหน้าจออีกต่อไปเนื่องจากทำให้การทำงานช้าลง แต่จะปล่อยให้ผู้เรียกเป็นผู้ประมวลผลภายหลังแทน (Id35af)
- ตอนนี้คุณปิดเครื่องมือแก้ไขหน้าปัดจากระยะไกลผ่าน
EditorService.closeEditor
ได้แล้ว (Ic5aa4) - เพิ่มคำอธิบายประกอบเกี่ยวกับค่า Null (Ic16ed)
เวอร์ชัน 1.0.0-alpha08
24 กุมภาพันธ์ 2021
androidx.wear:wear-*:1.0.0-alpha08
ได้รับการเผยแพร่แล้ว เวอร์ชัน 1.0.0-alpha08 มีคอมมิตต่อไปนี้
ฟีเจอร์ใหม่
- หน้าปัดบางแบบได้รับการออกแบบมาให้มีข้อมูลแทรกที่เฉพาะเจาะจงอย่างน้อย 1 รายการ เพื่อรองรับการออกแบบนี้ เราจึงได้เพิ่ม Complication.Builder#setFixedComplicationProvider ซึ่งหากตั้งค่าเป็น "จริง" จะป้องกันไม่ให้ผู้ใช้เปลี่ยนข้อมูลแทรกในช่องนั้น
- ไลบรารีหน้าปัดเป็น Kotlin ก่อนและใช้ Coroutine (เช่น ฟังก์ชันระงับ) สำหรับผู้ใช้ Java เราได้จัดเตรียม Wrapper ของ ListenableFuture เพื่อปรับปรุงการทำงานร่วมกันในไลบรารีต่อไปนี้ wear/wear-watchface-guava, wear/wear-watchface-client-guava และ wear/wear-watchface-editor-guava
การเปลี่ยนแปลง API
- เราได้นำการรองรับการแตะสองครั้งในภาวะแทรกซ้อนที่เปิดตัวตัวเลือกผู้ให้บริการออกแล้ว เนื่องจากฟีเจอร์นี้ไม่ค่อยพบในหน้าปัดและทำให้การติดตั้งใช้งาน SysUI ซับซ้อนขึ้น (I3ef24)
- เมธอด ProviderInfoRetriever อาจส่ง ServiceDisconnectedException หาก Binder ปิดโดยไม่คาดคิด (Ib2cc4)
- ตั้งแต่ Android 11 เป็นต้นไป จะมีข้อจำกัดเกี่ยวกับเวลาที่เรียกใช้ ProviderChooser ได้ นอกจากนี้ เรายังต้องการให้สร้างเอดิเตอร์ด้วย
wear-watchface-editor
ใหม่ จึงจะนำ ComplicationHelperActivity ออกจาก API สาธารณะ (Ib19c1) - นำเมธอดแบบคงที่ ComplicationText ออกเพื่อใช้ตัวสร้างแทน (Ibe399)
- เราได้เปิดตัว Wrapper ListenableFuture ของ Guava สำหรับวิธีการระงับไลบรารีหน้าปัดต่างๆ (I16b2c)
- เราได้เพิ่มตัวสร้างรองให้กับ RenderParameters ซึ่งไม่จำเป็นต้องใช้สี เพื่อให้ API มีความชัดเจนและใช้กับ LayerModes อื่นๆ นอกเหนือจาก
LayerMode.DRAW_OUTLINED
(I497ea) - ก่อนหน้านี้ ListUserStyleSetting แตกต่างจากรายการอื่นๆ เนื่องจากมีอาร์กิวเมนต์เริ่มต้น ตอนนี้ตัวสร้างคลาสย่อย StyleSetting ทั้งหมดจะใช้ค่าเริ่มต้นเป็นค่าสุดท้าย (I9dbfd)
- เราได้รีแฟกเตอร์ CanvasComplication เพื่อให้มีเมธอดที่ซ่อนอยู่ ซึ่งจะช่วยให้การใช้คลาสย่อย (I5b321) ง่ายขึ้น
- เราได้รีแฟกเตอร์ EditorResult ออกไปเพื่อใช้ EditorService ใหม่และ
EditorSession.broadcastState()
เพื่อสตรีมการอัปเดตไปยังผู้สังเกตการณ์ (โดยปกติคือ SysUI) (Ic4370) - หน้าปัดบางหน้าสร้างขึ้นโดยมีข้อมูลแทรกที่เฉพาะเจาะจงเป็นส่วนหนึ่งของหน้าปัด ซึ่งผู้ให้บริการไม่ได้กำหนดค่าให้ผู้ใช้ เราจึงเพิ่ม
Complication.Builder#setFixedComplicationProvider
เพื่อรองรับการใช้งานนี้ (I4509e) - ตอนนี้ EditorRequest ระบุชื่อแพ็กเกจแทน ComponentName แล้ว เนื่องจาก SysUI ค้นหาชื่อคลาสของเอดิเตอร์ได้ไม่สะดวก และเราต้องการเพียงชื่อแพ็กเกจเท่านั้น (Ib6814)
เวอร์ชัน 1.0.0-alpha07
10 กุมภาพันธ์ 2021
androidx.wear:wear-*:1.0.0-alpha07
ได้รับการเผยแพร่แล้ว เวอร์ชัน 1.0.0-alpha07 มีคอมมิตเหล่านี้
ฟีเจอร์ใหม่
- ตอนนี้ WatchFaceService.createWatchFace เป็นฟังก์ชันระงับแล้ว ซึ่งหมายความว่าหน้าปัดไม่ต้องบล็อกเทรด UI อีกต่อไปขณะรอ IO เช่นเดียวกันกับ wear-watchface-editor และ wear-complications-data
การเปลี่ยนแปลง API
- นำคลาส PhotoImage ออกและใช้ไอคอนโดยตรง (I8a70b)
- เปิดเผย validTimeRange ของ ComplicationData (I91366)
- ทำให้แอตทริบิวต์ที่คล้ายรูปภาพชัดเจนยิ่งขึ้น (I81700)
- wear-watchface-editor และ wear-complications-data ได้รับการปรับโครงสร้างใหม่ให้ใช้ฟังก์ชันระงับแทนโครูทีน Rx java และ Future compat wrappers จะตามมา (If3c5f)
- ตอนนี้ ProviderInfoRetriever จะแสดง PreviewNotAvailableException หาก requestPreviewComplicationData ไม่สามารถแสดงข้อมูลตัวอย่างเนื่องจากปัญหาการเชื่อมต่อหรือไม่มีการรองรับ API (I4964d)
- ตอนนี้ WatchFaceControlService::createWatchFaceControlClient เป็นฟังก์ชันที่ระงับแล้ว และ getOrCreateWallpaperServiceBackedInteractiveWatchFaceWcsClient เปลี่ยนชื่อเป็น getOrCreateWallpaperServiceBackedInteractiveWatchFaceWcsClientAsync ซึ่งจะแสดงผล
Deferred<InteractiveWatchFaceWcsClient>
RX java และ Future compat wrappers จะตามมา (I5d461) - เปลี่ยนชื่อ
CATEGORY_PROVIDER_CONFIG_ACTION
เป็นCATEGORY_PROVIDER_CONFIG
(I7c068) - โปรดทราบว่าตอนนี้ฟังก์ชัน createOnWatchEditingSession ถูกระงับแล้วเนื่องจากบางครั้งหน้าปัดจะยังไม่พร้อมใช้งานจนกว่ากิจกรรมของเอดิเตอร์จะเริ่มขึ้นไม่นาน (Ida9aa)
- ตอนนี้ WatchFaceService.createWatchFace เป็นฟังก์ชันระงับที่อนุญาตให้เริ่มต้นแบบไม่พร้อมกันได้ ซึ่งก่อนหน้านี้คุณจะต้องบล็อกเทรดหลัก (If076a)
- ตอนนี้ UserStyle มีตัวดำเนินการอาร์เรย์แล้ว และเราได้เพิ่มตัวช่วยการแคสต์ลงใน UserStyle.Option (I35036)
- เราได้แก้ไขข้อบกพร่องในการจัดรูปแบบด้วยรูปแบบการส่งผ่านข้อมูลของ UserStyle ซึ่งจะเปลี่ยน API ที่ซ่อนอยู่บางส่วนที่ไม่เสถียร (I8be09)
- เราได้เพิ่ม CustomValueUserStyleSetting ซึ่งช่วยให้คุณจัดเก็บสตริงเฉพาะแอปพลิเคชันเดียวภายใน UserStyle ได้ โปรแกรมแก้ไขหน้าปัดเริ่มต้นจะไม่สนใจค่านี้ (Ic04d2)
- ระบบจะไม่ส่ง InstanceID ในส่วนพิเศษของ Intent สำหรับ Android WearOS เวอร์ชัน R และเก่ากว่าที่เราอัปเกรดไม่ได้ เราจึงอนุญาตให้ InstanceID เป็นค่าว่างได้ (Id8b78)
- ตอนนี้ EditorRequest มี ComponentName ของเอดิเตอร์ซึ่งตั้งค่าเป็นคอมโพเนนต์ใน WatchFaceEditorContract.createIntent (I3cd06) แล้ว
- ตอนนี้ Watchface EditorResult มี ComplicationData ตัวอย่างเพื่อให้ผู้เรียกใช้สามารถถ่ายภาพหน้าจอของหน้าปัดหลังจากแก้ไขได้ (I2c561)
การแก้ไขข้อบกพร่อง
- เพิ่มการลบล้าง toString() ลงใน UserStyle, UserStyleSetting และ UserStyleSchema ซึ่งช่วยให้การทำงานกับคลาสเหล่านี้ง่ายขึ้น (I9f5ec)
เวอร์ชัน 1.0.0-alpha06
27 มกราคม 2021
androidx.wear:wear-*:1.0.0-alpha06
ได้รับการเผยแพร่แล้ว เวอร์ชัน 1.0.0-alpha06 มีคอมมิตเหล่านี้
ฟีเจอร์ใหม่
- เราได้เปิดตัวไลบรารีใหม่ชื่อ wear/wear-watchface-editor ซึ่งช่วยให้นักพัฒนาหน้าปัดและอาจรวมถึง OEM สร้างเครื่องมือแก้ไขสไตล์และคอมพลิเคชันได้ SysUI จะส่ง Intent ไปยังหน้าปัด ซึ่งจะใช้คลาส EditorSession ใหม่เพื่อเข้าถึงรายละเอียดของ WatchFace และบันทึกผลลัพธ์ผ่าน Activity.setWatchRequestResult เราจึงได้เพิ่ม ProviderInfoRetriever.requestPreviewComplicationData เพื่อรองรับการดำเนินการนี้ ซึ่งจะช่วยให้โปรแกรมแก้ไขหน้าปัดขอ ComplicationData ตัวอย่างได้ ข้อดีของ ComplicationData ตัวอย่างคือคุณไม่ต้องกังวลเรื่องการแสดงกล่องโต้ตอบสิทธิ์เมื่อแสดงผลเอดิเตอร์ (โปรดทราบว่าหากผู้ใช้เลือกผู้ให้บริการที่มีสิทธิ์ ระบบจะยังแจ้งให้ผู้ใช้ให้สิทธิ์)
การเปลี่ยนแปลง API
- ตอนนี้ ComplicationProviderInfo มีช่องสำหรับ ComponentName ของผู้ให้บริการแล้ว เราจะเพิ่มการรองรับช่องนี้ใน WearOS ในภายหลัง และในระหว่างนี้ ช่องนี้จะเป็นค่า Null (Id8fc4)
- เราได้เพิ่ม ProviderInfoRetriever.requestPreviewComplicationData ซึ่งช่วยให้โปรแกรมแก้ไขหน้าปัดนาฬิกาสามารถขอ ComplicationData ตัวอย่างได้ ซึ่งมีประโยชน์เนื่องจากภาวะแทรกซ้อนแบบเรียลไทม์อาจต้องใช้สิทธิ์ และตอนนี้คุณสามารถแสดงข้อมูลตัวอย่างสำหรับภาวะแทรกซ้อนที่ไม่ได้ใช้งานได้แล้ว (I2e1df)
- ตอนนี้ ComplicationManager เป็นพารามิเตอร์ที่ไม่บังคับของตัวสร้าง WatchFace แล้ว และเราได้เรียงลำดับอาร์กิวเมนต์ใหม่เพื่อให้ทำเช่นนี้ได้ (I66c76)
- เราได้เพิ่ม Bundle ที่ไม่บังคับลงใน Complications ซึ่งหากตั้งค่าไว้ ระบบจะผสานรวม Bundle นี้กับ Intent ที่ส่งไปเพื่อเปิดใช้งานกิจกรรมตัวเลือกผู้ให้บริการ (Ifd4ad)
- เราได้เพิ่ม
wear-watchface-editor
ไลบรารีใหม่เพื่อรองรับเครื่องมือแก้ไขที่โฮสต์ในหน้าปัดและ SysUi SysUI จะเปิดตัวโปรแกรมแก้ไขเหล่านี้โดยการส่ง Intent บริการกิจกรรมหน้าปัดสามารถใช้คลาส EditorSession ใหม่เพื่อเข้าถึงรายละเอียด WatchFace และบันทึกผลลัพธ์ผ่าน Activity.setWatchRequestResult ได้ (I2110d) - ตอนนี้ LayerMode.DRAW_HIGHLIGHTED เปลี่ยนชื่อเป็น LayerMode.DRAW_OUTLINED แล้ว และ RenderParameters.highlightComplicationId เปลี่ยนชื่อเป็น RenderParameters.selectedComplicationId ซึ่งจะวาดไฮไลต์บนภาวะแทรกซ้อนที่ระบุเพิ่มเติมจากเส้นขอบ (I90a40)
- ตอนนี้อนาคตของ WatchFaceControlClient.getOrCreateWallpaperServiceBackedInteractiveWatchFaceWcsClient สามารถแก้ไขได้ด้วย ServiceStartFailureException หากบริการหยุดทำงานขณะรอการสร้างหน้าปัด (I0f509)
- ตอนนี้ EditorSession.complicationPreviewData เป็น ListenableFuture แล้วเนื่องจากการดึงข้อมูลนี้เป็นกระบวนการแบบไม่พร้อมกัน (Iead9d)
การแก้ไขข้อบกพร่อง
- เราจะนำฟิลด์ที่ไม่ได้ใช้ออกจาก ComplicationOverlay โดยจะปล่อยให้เปิดใช้และ complicationBounds (I17b71)
เวอร์ชัน 1.0.0-alpha05
13 มกราคม 2021
androidx.wear:wear-*:1.0.0-alpha05
ได้รับการเผยแพร่แล้ว เวอร์ชัน 1.0.0-alpha05 มีคอมมิตต่อไปนี้
ฟีเจอร์ใหม่
หน้าปัดมักรองรับการกำหนดค่าแทรกซ้อนหลายแบบโดยแสดงแทรกซ้อนจำนวนต่างๆ ตอนนี้เราจึงรองรับการตั้งค่าภาวะแทรกซ้อนที่ปิดใช้ในตอนแรกด้วยการเรียกใช้ setEnabled(false) ในตัวสร้าง เพื่อให้ตั้งค่าได้ง่ายขึ้น ซึ่งเปิดใช้ได้ในภายหลังผ่าน ComplicationsUserStyleSetting
การเปลี่ยนแปลง API
- ตอนนี้ ComplicationHelperActivity ยอมรับ
Collection<ComplicationType>
แทนที่จะเป็นอาร์เรย์จำนวนเต็ม ซึ่งทำให้ใช้งานได้ง่ายขึ้น (I1f13d) ProviderInfoRetriever.retrieveProviderInfo
จะแสดงผลListenableFuture<ProviderInfo[]>
อย่างถูกต้องแล้ว (If2710)- ตอนนี้คุณสร้างภาวะแทรกซ้อนที่ปิดใช้ในตอนแรกได้โดยเรียกใช้ setEnabled(false) ในเครื่องมือสร้าง (Idaa53)
- ตอนนี้ WatchFaceState มีพร็อพเพอร์ตี้ isHeadless ซึ่งเป็นจริงสำหรับอินสแตนซ์แบบไม่มีส่วนหัวเท่านั้น (Ifa900)
- ตอนนี้ ComplicationDrawable รองรับการโหลด Drawable แบบซิงโครนัสแล้ว (ไม่บังคับ) ซึ่งใช้โดย API ภาพหน้าจอ (I34d4a)
เวอร์ชัน 1.0.0-alpha04
16 ธันวาคม 2020
androidx.wear:wear-*:1.0.0-alpha04
ได้รับการเผยแพร่แล้ว เวอร์ชัน 1.0.0-alpha04 มีคอมมิตเหล่านี้
ฟีเจอร์ใหม่
- ตอนนี้คลังหน้าปัด Wear รองรับการตั้งค่าขอบเขตต่อประเภทแล้ว เช่น คุณสามารถเปลี่ยนเป็นกรอบล้อมรอบแบบกว้างสำหรับ ComplicationType.LONG_TEXT ขณะที่ใช้กรอบล้อมรอบที่เล็กกว่าสำหรับประเภทอื่นๆ
การเปลี่ยนแปลง API
- ตอนนี้ข้อมูลแทรกใช้ ComplicationBounds ซึ่งครอบ
Map<ComplicationType, RectF>
เพื่อรองรับขนาดต่อประเภทข้อมูลแทรก (I1ebe7) - ตอนนี้ RenderParameters ให้คุณระบุสีไฮไลต์เพื่อใช้ในภาพหน้าจอได้แล้ว (Iff42b)
- ยกเว้นขอบเขต ตอนนี้คุณต้องใช้ ComplicationsUserStyleSetting เพื่อแก้ไขภาวะแทรกซ้อน เพื่อให้มั่นใจว่าระบบปฏิบัติการจะซิงค์อยู่เสมอ (I8dc5d)
- ตอนนี้ Renderer เป็นคลาสที่ปิดผนึกแล้ว ซึ่งหมายความว่าตอนนี้ CanvasRenderer และ GlesRenderer เป็นคลาสภายในของ Renderer แล้ว (Iab5d4, b/173803230)
- เปลี่ยนชื่อ CanvasComplicationDrawable.drawHighlight เป็น drawOutline ตอนนี้ ObservableWatchData มีคำอธิบายประกอบ UiThread ที่ขาดหายไป 2-3 รายการแล้ว ตอนนี้เราได้นำ ScreenState ออกจาก WatchState ทั้งหมดแล้ว (If1393)
- ตอนนี้ API ระดับต่ำสุดสำหรับ wear-watchface คือ 25 โปรดทราบว่าการรองรับ Canvas ของฮาร์ดแวร์ต้องใช้ API ระดับ 26 ขึ้นไป (Ic9bbd)
- ตอนนี้ InteractiveWatchFaceWcsClient มีตัวช่วย getComplicationIdAt แล้ว (I05811)
- เราได้ลดระดับ API สำหรับ wear-watchface-client เป็น 25 แล้ว แต่ API ภาพหน้าจอต้องใช้ API ระดับ 27 (Id31c2)
การแก้ไขข้อบกพร่อง
- ตอนนี้เราได้เปิดเผย ComplicationType ของ ComplicationData ปัจจุบันของ Complication ใน ComplicationState แล้ว (I9b390)
- ตอนนี้ InteractiveWatchFaceWcs มีเมธอด `bringAttentionToComplication` เพื่อไฮไลต์ภาวะแทรกซ้อนที่ระบุไว้สั้นๆ (I6d31c)
- ตอนนี้
InteractiveWatchFaceWcsClient#setUserStyle
มีการโอเวอร์โหลดที่ยอมรับ Map<string, string=""> ซึ่งอาจช่วยหลีกเลี่ยงการเดินทางด้วย IPC เพิ่มเติมที่จำเป็นต่อการสร้าง UserStyle (I24eec)</string,>
เวอร์ชัน 1.0.0-alpha03
2 ธันวาคม 2020
androidx.wear:wear-*:1.0.0-alpha03
ได้รับการเผยแพร่แล้ว เวอร์ชัน 1.0.0-alpha03 มีคอมมิตต่อไปนี้
ฟีเจอร์ใหม่
ตอนนี้คลาส Complication มีพร็อพเพอร์ตี้ compicationData ซึ่งช่วยให้หน้าปัดสังเกตการเปลี่ยนแปลง ComplicationData ได้ ซึ่งจะช่วยให้เปลี่ยนขนาดของภาวะแทรกซ้อนได้ตามประเภทของภาวะแทรกซ้อน
ตอนนี้ระบบรองรับอัตราเฟรมแบบแปรผันแล้วโดยการกำหนดให้กับ Renderer.interactiveDrawModeUpdateDelayMillis สำหรับหน้าปัดที่แสดงภาพเคลื่อนไหวสั้นๆ ทุกวินาที การดำเนินการนี้จะช่วยประหยัดแบตเตอรี่ได้ดีด้วยการเข้าสู่โหมดสลีปเมื่อไม่มีการเคลื่อนไหว
การเปลี่ยนแปลง API
BACKGROUND_IMAGE
ได้เปลี่ยนชื่อเป็นPHOTO_IMAGE
พร้อมกับชั้นเรียนที่เกี่ยวข้องแล้ว การแทรกข้อมูลประเภทนี้ไม่ได้ใช้สำหรับพื้นหลังเท่านั้น จึงต้องเปลี่ยนชื่อ (I995c6)- DefaultComplicationProviderPolicy มีการใส่คำอธิบายประกอบอย่างถูกต้องด้วย IntDefs (I3b431)
- เราจะไม่แสดงคลาส TimeDependentText ที่ซ่อนอยู่อีกต่อไปผ่าน ContentDescriptionLabel แต่จะเพิ่มตัวช่วยในการเข้าถึงเพื่อรับข้อความ ณ เวลาที่ระบุแทน (Ica692)
- ตอนนี้ตัวสร้างของ ObservableWatchData เป็นแบบภายในแล้ว (I30121, b/173802666)
- ตอนนี้ข้อมูลแทรกมี compicationData ซึ่งช่วยให้หน้าปัดสังเกตการเปลี่ยนแปลง ComplicationData ได้ นอกจากนี้ ข้อมูลแทรกยังมีฟังก์ชัน isActiveAt ใหม่ที่ใช้เพื่อตรวจสอบว่าควรแสดงสิ่งใดในวันที่และเวลาที่ระบุหรือไม่ (Ic0e2a)
SharedMemoryImage
ที่ว่างจะไม่อยู่ใน API สาธารณะอีกต่อไป (I7ee17)WatchFace.overridePreviewReferenceTimeMillis
มีคำอธิบายประกอบ IntRange แล้ว และตัวรับและตัวตั้งค่ามีชื่อที่สอดคล้องกัน (Ia5f78)- ตอนนี้ระบบจะสร้าง
Complication.Builder
ผ่านComplication.createRoundRectComplicationBuilder
หรือComplication.createBackgroundComplicationBuilder
เพื่อความชัดเจน (I54063) - เพิ่ม WatchFace.TapListener ซึ่งช่วยให้ WatchFace สังเกตการแตะที่ข้อมูลแทรกไม่ได้ใช้ (Ic2fe1, b/172721168)
- ตอนนี้ WatchFace รองรับอัตราเฟรมแบบแปรผันแล้วโดยการกำหนดให้กับ
Renderer.interactiveDrawModeUpdateDelayMillis
ซึ่งจะช่วยรักษาอายุการใช้งานแบตเตอรี่ด้วยการเข้าสู่โหมดสลีปเมื่อไม่ได้เคลื่อนไหว (I707c9) - ไม่จำเป็นต้องใช้ WatchFace.Builder อีกต่อไป และได้ย้าย invalidate() และ interactiveUpdateRateMillis ไปยัง Renderer แล้ว (I329ea)
- เปลี่ยนชื่อ Getter สำหรับพร็อพเพอร์ตี้บูลีนใน WatchState เพื่อให้ทำงานร่วมกับ Java ได้ดียิ่งขึ้น (I6d2f1)
- เปลี่ยนชื่อ TapListener เป็น TapCallback และ InvalidateCallback เป็น InvalidateListener เพื่อให้สอดคล้องกัน (I9414e)
- เราได้ย้ายตัวเลือกสไตล์หน้าปัดนาฬิกา Wear 2.0 ไปไว้ในคลาสของตัวเองเพื่อให้ชัดเจน ตอนนี้ตัวตั้งค่า WatchFace.Builder มีตัวรับคลาส WatchFace แบบสมมาตรแล้ว (Iefdfc)
- เพิ่ม InteractiveWatchFaceWcsClient และ
WatchFaceControlClient.getOrCreateWallpaperServiceBackedInteractiveWatchFaceWcsClient
ซึ่งจะรับอินสแตนซ์ที่มีอยู่หรือสร้างอินสแตนซ์เมื่อบริการวอลเปเปอร์เชื่อมต่อและสร้างเครื่องมือแล้ว (Id666e) - ตอนนี้ WatchFaceControlClient เป็นอินเทอร์เฟซที่อนุญาตให้การทดสอบจำลองได้แล้ว (I875d9)
- ตอนนี้ HeadlessWatchFaceClient, InteractiveWatchFaceSysUiClientImpl และ InteractiveWatchFaceWcsClient เป็นอินเทอร์เฟซที่ช่วยให้การทดสอบง่ายขึ้น (I7cdc3)
- เพิ่มคำอธิบายประกอบในเมธอดใน
wear-watchface-complications-rendering
(I0d65c)
การแก้ไขข้อบกพร่อง
- นำรูปร่างหน้าจอออกจาก DeviceConfig ซึ่งซ้ำกับ
android.content.res.Configuration#isScreenRound()
(Ifadf4) - เปลี่ยน
WatchFaceControlClient.getOrCreateWallpaperServiceBackedInteractiveWatchFaceWcsClient
เป็นยอมรับMap<String, String>
แทนUserStyle
เนื่องจากสร้างUserStyle
ได้ยากหากไม่ทราบสคีมา ซึ่งคุณจะทราบได้หลังจากสร้างไคลเอ็นต์แล้วเท่านั้น (Iea02a) - แก้ไข
InteractiveWatchFaceWcsClient
เพื่อใช้ComplicationState
แทนรูปแบบ Wire (Icb8a4) UserStyleSettings
ตอนนี้เป็นคลาสที่ปิดผนึกแล้วเนื่องจากเอดิเตอร์หน้าปัดนาฬิกาเข้าใจเฉพาะคลาสที่สร้างไว้เท่านั้น (I2d797)
เวอร์ชัน 1.0.0-alpha02
11 พฤศจิกายน 2020
androidx.wear:wear-*:1.0.0-alpha02
ได้รับการเผยแพร่แล้ว เวอร์ชัน 1.0.0-alpha02 มีคอมมิตเหล่านี้
การเปลี่ยนแปลง API
- ตอนนี้
ComplicationDetails
ใช้ชื่อว่าComplicationState
และมีการห่อหุ้มอย่างถูกต้อง รวมถึงการใช้งานการรองรับอุปกรณ์ที่สวมใส่ได้@ComplicationData.ComplicationType
ได้รับการย้ายข้อมูลไปยัง androidxComplicationType
แล้ว (I4dd36) - เพิ่มพารามิเตอร์
highlightedComplicationId
ที่ไม่บังคับลงใน RenderParameters ซึ่งจะช่วยให้คุณขอไฮไลต์ภาวะแทรกซ้อนเดียวในภาพหน้าจอได้ (I66ce9) ComplicationProviderService
เพื่อใช้ API ข้อมูลแทรกรูปแบบใหม่เพื่อความสอดคล้องกัน (Id5aea)- ตอนนี้
getPreviewReferenceTimeMillis
จะรับเวลาอ้างอิงจากDeviceConfig
(I779fe) - ลดความซับซ้อนของ Renderer API surface โดยใช้
SurfaceHolder.Callback
เพื่อสังเกตการเปลี่ยนแปลงแทนได้ (I210db) CanvasComplicationRenderer
ไม่ได้ขยายจากRenderer
เราจึงเปลี่ยนชื่อเพื่อให้ชัดเจน (Ibe880)
การแก้ไขข้อบกพร่อง
androidx.wear:wear-watchface-client
เวอร์ชันแรก (I1e35e)- เปลี่ยนชื่อ
GlesTextureComplication#renderer
เพื่อความชัดเจน (Ib78f7) - เปลี่ยนชื่อ
StyleCategory
เป็นStyleSetting
เพื่อความชัดเจน (I488c7) - เพิ่ม
UserStyleSchema
เพื่อให้ API สะอาดขึ้น (If36f8)
เวอร์ชัน 1.0.0-alpha01
28 ตุลาคม 2020
androidx.wear:wear-complications-*:1.0.0-alpha01
และ androidx.wear:wear-watchface-*:1.0.0-alpha01
เปิดตัวแล้ว เวอร์ชัน 1.0.0-alpha01 มีคอมมิตต่อไปนี้
การเปลี่ยนแปลง API
- นำบางอย่างที่เราไม่ได้ตั้งใจจะเปิดเผยใน API สาธารณะออก (I41669)
- สร้างคลัง
androidx.wear:wear-complications-provider
(I77f1f) - ComplicationsUserStyleCategory หมวดหมู่ใหม่ที่แนะนำสำหรับการกำหนดค่าข้อมูลแทรก (I96909)
- เพิ่ม API ข้อมูลแทรกของ Wear (I7c268)
- ฟังก์ชันที่มีค่าส่งคืนเป็นบูลีนควรมีคำนำหน้าเป็น "is" แทน "get" (If36ff)
- คำแนะนำเกี่ยวกับ API คือไม่ควรใช้ Protected ดังนั้นเราจึงปรับโครงสร้างคลาสนี้เพื่อรับพารามิเตอร์ผ่านตัวสร้าง (I61644)
- เปลี่ยนชื่อ setBackgroundComplication เพื่อให้ชัดเจน (I96fe3)
- ใช้พร็อพเพอร์ตี้ Kotlin สำหรับ ComplicationDrawable isHighlighted และข้อมูล (I4dcc8)
- เราเพิ่ม Complication#invalidate() (I4f4c6) แทน ComplicationRenderer.InvalidateCallback
- เราจะเลิกใช้งาน API เหล่านี้ใน WearableSupport และนำออกที่นี่ (Ib425c)
- เปลี่ยนชื่อเมธอดของโปรแกรมสร้างหน้าปัดบางรายการเพื่อเน้นย้ำลักษณะการทำงานแบบเดิมของ Wear 2.0 (Idb775)
- API เบต้าตัวแรกสำหรับ wear/wear-watchface (Id3981)
- API เวอร์ชันแรกที่ติดตาม (Ie9fe6)
- ซ่อน ComplicationDrawable.BorderStyle IntDef อย่างถูกต้องและย้ายไปที่ ComplicationStyle เพื่อความสอดคล้องกัน (I27f7a)
- เพิ่มคำอธิบายประกอบที่ขาดหายไปสำหรับเมธอด ComplicationStyle (I838fd)
- ไลบรารีนี้ไม่มีพื้นผิว API สาธารณะ (I88e2b)
- ตอนนี้คลาสตัวเลือกหมวดหมู่สไตล์ทั้งหมดเป็นคลาสสุดท้ายอย่างถูกต้องแล้ว (Ib8323)
- API เวอร์ชันแรกที่ติดตาม (I27c85)
การแก้ไขข้อบกพร่อง
- เปลี่ยน ComplicationProviderService ให้มีเมธอด getComplicationPreviewData ที่ชัดเจน (I4905f)
- เปิดใช้การตรวจสอบ Lint ของ API สำหรับ MissingGetterMatchingBuilder สำหรับ androidx (I4bbea, b/138602561)
- เปลี่ยนชื่อ wear-complications-rendering (Ifea02)
- ตอนนี้ชื่อที่แสดงของหมวดหมู่สไตล์เป็น CharSequence แล้ว (I28990)
- แทนที่ "ลบล้าง" ด้วย "ซ้อนทับ" เพื่อให้ตรงกับรูปแบบการตั้งชื่อธีมและสไตล์ปัจจุบัน (I4fde9)
- เปลี่ยนชื่อ UserStyle#getOptions เพื่อความชัดเจน (I695b6)
เวอร์ชัน 1.2.0
เวอร์ชัน 1.2.0
15 กันยายน 2021
androidx.wear:wear:1.2.0
ได้รับการเผยแพร่แล้ว เวอร์ชัน 1.2.0 มีคอมมิตเหล่านี้
การเปลี่ยนแปลงที่สำคัญตั้งแต่เวอร์ชัน 1.1.0
เพิ่มคอมโพเนนต์ CurvedText เพื่อให้เขียนข้อความโค้งตามความโค้งของวงกลมที่ใหญ่ที่สุดที่สามารถจารึกในมุมมองได้อย่างง่ายดาย ตัวอย่างการใช้งาน
<androidx.wear.widget.CurvedText android:layout_width="wrap_content" android:layout_height="wrap_content" android:text="example curved text" app:anchorAngleDegrees="180" app:anchorPosition="center" app:clockwise="false" style="@android:style/TextAppearance.Large" />
เพิ่มคอนเทนเนอร์ ArcLayout สำหรับการจัดวางองค์ประกอบย่อยทีละรายการบนส่วนโค้งในทิศทางตามเข็มนาฬิกาหรือทวนเข็มนาฬิกา โดยวิดเจ็ตย่อยอาจเป็นวิดเจ็ต Android มาตรฐานหรือวิดเจ็ต "โค้ง" ที่ใช้
ArcLayout.Widget
อินเทอร์เฟซ (I536da) ตัวอย่างการใช้งาน<androidx.wear.widget.ArcLayout android:layout_width="match_parent" android:layout_height="match_parent" app:anchorPosition="center"> <ImageView android:layout_width="20dp" android:layout_height="20dp" android:src="@drawable/ic_launcher" /> <androidx.wear.widget.CurvedText android:layout_width="match_parent" android:layout_height="match_parent" android:text="Curved Text" style="@android:style/TextAppearance.Small" android:padding="2dp" /> </androidx.wear.widget.WearArcLayout>
เพิ่มคอนเทนเนอร์เลย์เอาต์ใหม่ชื่อ DismissibleFrameLayout ซึ่งจัดการการปิดด้วยปุ่มย้อนกลับและ/หรือการปัดเพื่อปิด โดยมีไว้เพื่อใช้ภายในกิจกรรม ต้องเพิ่ม Listener อย่างน้อย 1 รายการเพื่อดำเนินการกับการดำเนินการปิด โดยปกติแล้ว Listener จะนำมุมมองหรือ Fragment ที่มีอยู่ออกจากกิจกรรมปัจจุบัน มีการระบุ setSwipeDismissible(boolean) และ setBackButtonDismissible(boolean) เพื่อให้ควบคุมฟีเจอร์ได้โดยตรง เลย์เอาต์ใหม่นี้มีไว้เพื่อแทนที่ SwipeDismissFrameLayout ที่มีอยู่
เพิ่มการรองรับการระบุว่า "สามารถกลับมาทำงานต่อโดยอัตโนมัติ" เมื่ออุปกรณ์ออกจากโหมดแอมเบียนท์ในคลาส AmbientModeSupport ก่อนหน้านี้ฟังก์ชันนี้มีให้บริการในคลาส WearableActivity ที่เลิกใช้งานแล้วจาก WearableSupportLibrary (I336ab)
ย้ายข้อมูลคลาส WearableCalendarContract จากไลบรารีการสนับสนุนอุปกรณ์ที่สวมใส่ได้ API นี้มีข้อมูลย่อยที่พร้อมใช้งานผ่าน CalendarContract แต่จะซิงค์กับอุปกรณ์ที่สวมใส่ได้โดยอัตโนมัติ (I6f2d7)
เพิ่ม API ใหม่
WearTypeHelper
ในandroidx.wear.utils
เพื่อพิจารณาว่าอุปกรณ์ Wear ที่ระบุเป็นของจีนหรือไม่ (Ib01a9)เพิ่มฟีเจอร์การช่วยเหลือพิเศษใน
androidx.wear.widget.ConfirmationOverlay
ซึ่งจะอ่านข้อความออกเสียงหากตั้งค่าไว้ ตามด้วยคำอธิบายภาพเคลื่อนไหว (I524dd)แก้ไขข้อบกพร่องที่ทำให้ ConfirmationActivity ขัดข้องหากไม่มีข้อความ (Ie6055)
แก้ไขข้อบกพร่องที่ RecyclerViews ที่เลื่อนในแนวนอนทำให้
WearableDrawerLayout
แสดงในการโต้ตอบทั้งหมด (I24c7f)
เวอร์ชัน 1.2.0-rc01
1 กันยายน 2021
androidx.wear:wear:1.2.0-rc01
จะเปิดตัวโดยไม่มีการเปลี่ยนแปลงใดๆ นับตั้งแต่เวอร์ชันเบต้าล่าสุด เวอร์ชัน 1.2.0-rc01 มีคอมมิตเหล่านี้
เวอร์ชัน 1.2.0-beta01
18 สิงหาคม 2021
androidx.wear:wear:1.2.0-beta01
ได้รับการเผยแพร่แล้ว เวอร์ชัน 1.2.0-beta01 มีคอมมิตเหล่านี้
การแก้ไขข้อบกพร่อง
- แก้ไขข้อบกพร่องที่ทำให้ ConfirmationActivity ขัดข้องหากไม่มีข้อความ (Ie6055)
เวอร์ชัน 1.2.0-alpha13
4 สิงหาคม 2021
androidx.wear:wear:1.2.0-alpha13
ได้รับการเผยแพร่แล้ว เวอร์ชัน 1.2.0-alpha13 มีคอมมิตต่อไปนี้
การเปลี่ยนแปลง API
- เปลี่ยนชื่อ
WearTypeHelper.isChinaDevice
เป็นWearTypeHelper.isChinaBuild
แล้ว (I47302)
การแก้ไขข้อบกพร่อง
- เราได้เพิ่มฟีเจอร์การช่วยเหลือพิเศษใน
androidx.wear.widget.ConfirmationOverlay
ซึ่งจะอ่านข้อความหากมีการตั้งค่าไว้ ตามด้วยคำอธิบายภาพเคลื่อนไหว (I524dd)
เวอร์ชัน 1.2.0-alpha12
21 กรกฎาคม 2021
androidx.wear:wear:1.2.0-alpha12
ได้รับการเผยแพร่แล้ว เวอร์ชัน 1.2.0-alpha12 มีคอมมิตต่อไปนี้
การเปลี่ยนแปลง API
- เราได้เพิ่ม API ใหม่
WearTypeHelper
ในandroidx.wear.utils
เพื่อพิจารณาว่าอุปกรณ์ Wear ที่ระบุเป็นของจีนหรือไม่ (Ib01a9)
เวอร์ชัน 1.2.0-alpha11
30 มิถุนายน 2021
androidx.wear:wear:1.2.0-alpha11
ได้รับการเผยแพร่แล้ว เวอร์ชัน 1.2.0-alpha11 มีคอมมิตต่อไปนี้
การแก้ไขข้อบกพร่อง
- แก้ไขข้อบกพร่องที่ RecyclerViews ที่เลื่อนในแนวนอนทำให้
WearableDrawerLayout
แสดงในการโต้ตอบทั้งหมด (I24c7f)
เวอร์ชัน 1.2.0-alpha10
2 มิถุนายน 2021
androidx.wear:wear:1.2.0-alpha10
ได้รับการเผยแพร่แล้ว เวอร์ชัน 1.2.0-alpha10 มีคอมมิตต่อไปนี้
ฟีเจอร์ใหม่
- Alpha10 ปรับปรุงการรองรับการช่วยเหลือพิเศษใน Curved Text และ ArcLayouts นอกจากนี้ ยังมีการเปลี่ยนชื่อเล็กน้อยใน DismissibleFrameLayout เพื่อช่วยให้ API ชัดเจนยิ่งขึ้น
การเปลี่ยนแปลง API
- เราได้เปลี่ยนชื่อเมธอดต่อไปนี้ใน
DismissibleFrameLayout
(Ib195e)Callback#onDismissed
->Callback#onDismissedFinished
isSwipeDismissible
->isDismissableBySwipe
isBackButtonDismissible
->isDismissableByBackButton
- เราได้กำหนดให้วิธีการต่อไปนี้เป็นวิธีการสุดท้าย (Ib195e) ดังนี้
setBackButtonDismissible
setSwipeDismissible
registerCallback
unregisterCallback
การแก้ไขข้อบกพร่อง
- ใช้เนื้อหาของ CurvedTextView ใน Talkback (I05798)
- การช่วยเหลือพิเศษที่ดีขึ้นสำหรับมุมมองปกติใน ArcLayout (I4418d)
เวอร์ชัน 1.2.0-alpha09
18 พฤษภาคม 2021
androidx.wear:wear:1.2.0-alpha09
ได้รับการเผยแพร่แล้ว เวอร์ชัน 1.2.0-alpha09 มีคอมมิตเหล่านี้
การเปลี่ยนแปลง API
- เพิ่มฟังก์ชันใหม่
CurvedTextView.setTypeface()
(คล้ายกับของTextView
) เพื่อตั้งค่าแบบอักษรข้อความและสไตล์ตัวหนา/ตัวเอียง (I4653c) - เปลี่ยนชื่อ
WearArcLayout
เป็นArcLayout
,WearCurvedText
เป็นCurvedText
และWearArcLayout.ArcLayoutWidget
เป็นArcLayout.Widget
(I6e5ce)- เมื่อวันที่
ArcLayout.Widget
ได้เปลี่ยนชื่อgetThicknessPx
เป็นgetThickness
- ตอนนี้ค่าคงที่ของการจัดแนวตั้งใน
ArcLayout.LayoutParams
จะมีชื่อขึ้นต้นด้วยVERTICAL_ALIGN_
(แทนที่จะเป็นVALIGN_
ก่อนหน้านี้)
- เมื่อวันที่
- ใน
CurvedTextView
ระบบได้แทนที่เมธอดsetMinSweepDegrees
และsetMaxSweepDegrees
ด้วยsetSweepRangeDegrees
(I7a9d9)
เวอร์ชัน 1.2.0-alpha08
5 พฤษภาคม 2021
androidx.wear:wear:1.2.0-alpha08
ได้รับการเผยแพร่แล้ว เวอร์ชัน 1.2.0-alpha08 มีคอมมิตต่อไปนี้
การเปลี่ยนแปลง API
- เราได้เพิ่มคำอธิบายประกอบ
@FloatRange
ให้กับพารามิเตอร์มุมและประเภทการคืนค่าบางรายการเพื่อปรับปรุงความชัดเจนของโค้ด (I430dd) - ในอินเทอร์เฟซ
WearArcLayout.ArcLayoutWidget
ตอนนี้เมธอดinsideClickArea
เปลี่ยนชื่อเป็น isPointInsideClickArea แล้ว (Ia7307)
เวอร์ชัน 1.2.0-alpha07
24 มีนาคม 2021
androidx.wear:wear:1.2.0-alpha07
ได้รับการเผยแพร่แล้ว เวอร์ชัน 1.2.0-alpha07 มีคอมมิตต่อไปนี้
การแก้ไขข้อบกพร่อง
- แก้ไขข้อผิดพลาดเกี่ยวกับองค์ประกอบย่อยที่ไม่โค้งภายใน WearArcLayout ซึ่งเกิดจากการใช้ขนาดหน้าจอที่มีความสูงมากกว่าความกว้าง ตอนนี้ระบบจะวางองค์ประกอบย่อยที่ไม่โค้งเหล่านี้ไว้ภายในส่วนโค้งอย่างถูกต้องในหน้าจอทุกประเภท
เวอร์ชัน 1.2.0-alpha06
27 มกราคม 2021
androidx.wear:wear:1.2.0-alpha06
ได้รับการเผยแพร่แล้ว เวอร์ชัน 1.2.0-alpha06 มีคอมมิตเหล่านี้
การเปลี่ยนแปลง API
- ย้ายข้อมูลไลบรารีกิจกรรมที่กำลังดำเนินอยู่ไปยังไลบรารีย่อยใหม่ชื่อ wear-ongoing ตอนนี้คลาสต่างๆ อยู่ในแพ็กเกจ androidx.wear.ongoing (ก่อนหน้านี้คือ androidx.wear.ongoingactivities) (I7c029)
- ย้ายข้อมูลคลาส WearableCalendarContract จากไลบรารีการสนับสนุนของ Wearable ไปยัง AndroidX API นี้มีข้อมูลย่อยที่พร้อมใช้งานผ่าน CalendarContract แต่จะซิงค์กับอุปกรณ์ที่สวมใส่ได้โดยอัตโนมัติ (I6f2d7)
การแก้ไขข้อบกพร่อง
- ปิดใช้ฟีเจอร์การปิดด้วยปุ่มย้อนกลับโดยค่าเริ่มต้นใน Dismissible FrameLayout เนื่องจากปัดเพื่อปิดยังคงเป็นวิธีหลักในการกลับไปที่โหมดเต็มหน้าจอบนอุปกรณ์ที่สวมใส่ได้ (Ic24e3)
- แก้ไขปัญหาบางอย่างเกี่ยวกับการจัดการระดับการเข้าถึงขององค์ประกอบย่อยใน WearArcLayout (Icf912)
เวอร์ชัน 1.2.0-alpha05
13 มกราคม 2021
androidx.wear:wear:1.2.0-alpha05
ได้รับการเผยแพร่แล้ว เวอร์ชัน 1.2.0-alpha05 มีคอมมิตเหล่านี้
การแก้ไขข้อบกพร่อง
- อัปเดต Javadoc ของคลาส AmbientModeSupport เพื่อให้ข้อมูลโค้ดตัวอย่างเพื่อแสดงให้เห็นการใช้งานทั่วไปของคลาสนี้ได้ดียิ่งขึ้น
เวอร์ชัน 1.2.0-alpha04
16 ธันวาคม 2020
androidx.wear:wear:1.2.0-alpha04
ได้รับการเผยแพร่แล้ว เวอร์ชัน 1.2.0-alpha04 มีคอมมิตเหล่านี้
การเปลี่ยนแปลง API
- เพิ่มการรองรับการระบุว่า "สามารถกลับมาทำงานต่อโดยอัตโนมัติ" เมื่ออุปกรณ์ออกจากโหมดแอมเบียนท์ในคลาส AmbientModeSupport ก่อนหน้านี้ฟังก์ชันนี้มีให้บริการในคลาส WearableActivity ที่เลิกใช้งานแล้วจาก WearableSupportLibrary (I336ab)
- OngoingActivity
- ตอนนี้คุณตั้งค่าหมวดหมู่ได้เมื่อสร้าง OngoingActivity เช่น
OngoingActivitiy.Builder.getCategory(String)
- ตอนนี้ OngoingActivityData มีการประทับเวลาเมื่อสร้าง OngoingActivity แล้ว -
OngoingActivityData.getTimestamp()
- (I91cb4)
- ตอนนี้คุณตั้งค่าหมวดหมู่ได้เมื่อสร้าง OngoingActivity เช่น
- เพิ่มการรองรับการตั้งค่าขอบในองค์ประกอบย่อยของ WearArcLayout โดยการเปลี่ยนพารามิเตอร์เลย์เอาต์ให้ขยาย MarginLayoutParams กล่าวคือ WearArcLayout.LayoutParams ขยาย android.view.ViewGroup.MarginLayoutParams (I2cd88)
- เปลี่ยนค่าเริ่มต้นของประเภทจุดยึดของ WearCurvedTextView เป็น
WearArcLayout.ANCHOR_CENTER
(เดิมคือWearArcLayout.ANCHOR_START
) ซึ่งจะช่วยลดความซับซ้อนของสัญญาที่อยู่ระหว่างเลย์เอาต์ส่วนโค้งกับข้อความโค้ง เนื่องจากโดยค่าเริ่มต้นแล้วข้อความโค้งจะวาดตัวเองโดยมีจุดกึ่งกลาง x อยู่ที่ด้านบน และเลย์เอาต์ส่วนโค้งขององค์ประกอบระดับบนสามารถหมุนข้อความโค้งไปยังตำแหน่งที่ต้องการได้ (I105ff)
เวอร์ชัน 1.2.0-alpha03
2 ธันวาคม 2020
androidx.wear:wear:1.2.0-alpha03
ได้รับการเผยแพร่แล้ว เวอร์ชัน 1.2.0-alpha03 มีคอมมิตต่อไปนี้
ฟีเจอร์ใหม่
คอนเทนเนอร์เลย์เอาต์ใหม่ DismissibleFrameLayout ซึ่งจัดการการปิดด้วยปุ่มย้อนกลับและ/หรือการปัดเพื่อปิด มีไว้สําหรับใช้ภายในกิจกรรม ต้องเพิ่ม Listener อย่างน้อย 1 รายการเพื่อดำเนินการกับการดำเนินการปิด โดยปกติแล้ว Listener จะนำมุมมองหรือ Fragment ที่มีอยู่ออกจากกิจกรรมปัจจุบัน มีการระบุ setSwipeDismissible(boolean) และ setBackButtonDismissible(boolean) เพื่อให้ควบคุมฟีเจอร์ได้โดยตรง เลย์เอาต์ใหม่นี้มีไว้เพื่อแทนที่ SwipeDismissFrameLayout ที่มีอยู่
ตอนนี้วิดเจ็ตโค้งจะจัดการเหตุการณ์การแตะได้แล้ว วิดเจ็ตปกติภายใน WearArcLayout จะได้รับการแตะทั้งหมดที่แมปกับพื้นที่พิกัดของวิดเจ็ต WearCurvedTextView (ภายใน WearArcLayout หรือไม่) สามารถตั้งค่าตัวแฮนเดิล onClick และ onLongClick ได้
ตอนนี้คลาสกิจกรรมที่กำลังดำเนินการเป็น VersionedParcelables แทนที่จะใช้การซีเรียลไลซ์/ดีซีเรียลไลซ์ที่กำหนดเอง ตอนนี้คุณต้องระบุไอคอนแบบคงที่และเจตนาในการแตะแล้ว
การเปลี่ยนแปลง API
- แอตทริบิวต์ "sweepDegrees" สำหรับ WearCurvedTextView จะแยกออกเป็น minSweepDegrees และ maxSweepDegrees เพื่อให้เลย์เอาต์ของวิดเจ็ตนี้มีความยืดหยุ่นมากขึ้น
เวอร์ชัน 1.2.0-alpha02
11 พฤศจิกายน 2020
androidx.wear:wear:1.2.0-alpha02
ได้รับการเผยแพร่แล้ว เวอร์ชัน 1.2.0-alpha02 มีคอมมิตเหล่านี้
การเปิดตัวนี้เพิ่ม "Ongoing Activities API" ใหม่เป็นครั้งแรก นักพัฒนาแอปสามารถใช้ API นี้เพื่อส่งสัญญาณว่ากิจกรรมที่ใช้เวลานาน เช่น การออกกำลังกายหรือเซสชันการเล่นสื่อ กำลังดำเนินอยู่ ซึ่งช่วยให้นักพัฒนาแอปสามารถอัปเดตสถานะเป็นระยะๆ เช่น "ระยะทางและเวลาที่วิ่ง" หรือ "แทร็กที่กำลังเล่น" เพื่อแสดงบนหน้าปัดหรือในตัวเรียกใช้แอป ฟังก์ชันนี้มีไว้สำหรับอุปกรณ์ในอนาคตที่เปิดใช้ฟังก์ชันกิจกรรมที่กำลังดำเนินการอยู่
การเปลี่ยนแปลง API
- API ใหม่สำหรับกิจกรรมที่กำลังดำเนินอยู่ ซึ่งจะไม่มีการดำเนินการใดๆ ใน "อุปกรณ์ที่ไม่รองรับ" (I69a31)
เวอร์ชัน 1.2.0-alpha01
28 ตุลาคม 2020
androidx.wear:wear:1.2.0-alpha01
ได้รับการเผยแพร่แล้ว เวอร์ชัน 1.2.0-alpha01 มีคอมมิตต่อไปนี้
ฟีเจอร์ใหม่
- เพิ่มคอมโพเนนต์ WearCurvedTextView เพื่อให้เขียนข้อความโค้งตามความโค้งของวงกลมที่ใหญ่ที่สุดที่จารึกในมุมมองได้ง่าย ตัวอย่างการใช้งาน
<androidx.wear.widget.WearCurvedTextView
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="example curved text"
app:anchorAngleDegrees="180"
app:anchorPosition="center"
app:clockwise="false"
style="@android:style/TextAppearance.Large"
/>
- เพิ่มคอนเทนเนอร์ WearArcLayout เพื่อจัดวางองค์ประกอบย่อยทีละรายการบนส่วนโค้งในทิศทางตามเข็มนาฬิกาหรือทวนเข็มนาฬิกา โดยวิดเจ็ตย่อยอาจเป็นวิดเจ็ต Android มาตรฐานหรือวิดเจ็ต "โค้ง" ที่ใช้อินเทอร์เฟซ ArcLayoutWidget ตัวอย่างการใช้งาน
<androidx.wear.widget.WearArcLayout
android:layout_width="match_parent"
android:layout_height="match_parent"
app:anchorPosition="center">
<ImageView
android:layout_width="20dp"
android:layout_height="20dp"
android:src="@drawable/ic_launcher"
/>
<androidx.wear.widget.WearCurvedTextView
android:layout_width="match_parent"
android:layout_height="match_parent"
android:text="Curved Text"
style="@android:style/TextAppearance.Small"
android:padding="2dp"
/>
</androidx.wear.widget.WearArcLayout>
(I536da)
Wear-Input 1.2
เวอร์ชัน 1.2.0-alpha02
29 กันยายน 2021
androidx.wear:wear-input:1.2.0-alpha02
และ androidx.wear:wear-input-testing:1.2.0-alpha02
เปิดตัวแล้ว เวอร์ชัน 1.2.0-alpha02 มีคอมมิตเหล่านี้
การเปลี่ยนแปลง API
- เปลี่ยนชื่อ
disallowEmoji
เป็นsetEmojisAllowed
ในWearableRemoteInputExtender
เพื่อใช้กำหนดว่าจะแสดงตัวเลือกในการวาดอีโมจิหรือไม่ (I28393)
เวอร์ชัน 1.2.0-alpha01
15 กันยายน 2021
androidx.wear:wear-input:1.2.0-alpha01
และ androidx.wear:wear-input-testing:1.2.0-alpha01
เปิดตัวแล้ว เวอร์ชัน 1.2.0-alpha01 มีคอมมิตต่อไปนี้
การเปลี่ยนแปลง API
- เปิดเผยค่าคงที่ตำแหน่งปุ่มทั้งหมดจาก
WearableButtons
(Ibb12c) - เพิ่มคลาส
WearableRemoteInputExtender
ที่ใช้เพิ่มส่วนเสริมเฉพาะ Wear ลงใน android.app.RemoteInput ได้ (I01903)
Wear-Input 1.1.0
เวอร์ชัน 1.1.0
18 สิงหาคม 2021
androidx.wear:wear-input:1.1.0
และ androidx.wear:wear-input-testing:1.1.0
เปิดตัวแล้ว เวอร์ชัน 1.1.0 มีคอมมิตเหล่านี้
การเปลี่ยนแปลงที่สำคัญตั้งแต่เวอร์ชัน 1.0.0
- เพิ่ม
RemoteInputIntentHelper
แล้ว- คลาสนี้ใช้เพื่อสร้าง Intent ของ RemoteInput ได้ จากนั้นคุณจะใช้ข้อมูลนี้เพื่อขอข้อมูลจากผู้ใช้ในกิจกรรมที่ปรับแต่งได้
เวอร์ชัน 1.1.0-rc01
4 สิงหาคม 2021
androidx.wear:wear-input:1.1.0-rc01
และ androidx.wear:wear-input-testing:1.1.0-rc01
เปิดตัวแล้ว เวอร์ชัน 1.1.0-rc01 มีคอมมิตเหล่านี้
ไม่มีการเปลี่ยนแปลง API ตั้งแต่เวอร์ชัน androidx.wear:wear-input:1.1.0-beta01
และ androidx.wear:wear-input-testing:1.1.0-beta01
เวอร์ชัน 1.1.0-beta01
21 กรกฎาคม 2021
androidx.wear:wear-input:1.1.0-beta01
และ androidx.wear:wear-input-testing:1.1.0-beta01
จะเปิดตัวโดยไม่มีการเปลี่ยนแปลงใดๆ ตั้งแต่ 1.1.0-alpha03
เวอร์ชัน 1.1.0-beta01 มีคอมมิตเหล่านี้
เวอร์ชัน 1.1.0-alpha03
30 มิถุนายน 2021
androidx.wear:wear-input:1.1.0-alpha03
และ androidx.wear:wear-input-testing:1.1.0-alpha03
เปิดตัวแล้ว เวอร์ชัน 1.1.0-alpha03 มีคอมมิตเหล่านี้
การแก้ไขข้อบกพร่อง
- แก้ไขข้อบกพร่องที่ทำให้ระบบปฏิเสธ Intent ของ RemoteInput ซึ่งมี
RemoteInput
เพิ่มลงใน Intent ผ่านRemoteInputHelper.putRemoteInputsExtra
เวอร์ชัน 1.1.0-alpha02
18 พฤษภาคม 2021
androidx.wear:wear-input:1.1.0-alpha02
และ androidx.wear:wear-input-testing:1.1.0-alpha02
เปิดตัวแล้ว เวอร์ชัน 1.1.0-alpha02 มีคอมมิตเหล่านี้
การเปลี่ยนแปลง API
- ตอนนี้เมธอดของ
RemoteInputIntentHelper
ที่ใช้ในการรับหรือใส่ข้อมูลเพิ่มเติมซึ่งแสดงป้ายกำกับ "ชื่อ" "ยกเลิก" "ยืนยัน" และ "กำลังดำเนินการ" จะใช้CharSequence
แทนString
สำหรับป้ายกำกับเหล่านี้ (I0e71f)
เวอร์ชัน 1.1.0-alpha01
27 มกราคม 2021
androidx.wear:wear-input:1.1.0-alpha01
และ androidx.wear:wear-input-testing:1.1.0-alpha01
เปิดตัวแล้ว เวอร์ชัน 1.1.0-alpha01 มีคอมมิตเหล่านี้
การเปลี่ยนแปลง API
- ย้ายข้อมูลคลาส RemoteInputIntent จากไลบรารีการสนับสนุน Wearable ไปยัง AndroidX ระบบจะเปลี่ยนชื่อคลาสที่ย้ายข้อมูลเป็น RemoteInputIntentHelper ซึ่งมีฟังก์ชันตัวช่วยสำหรับการรองรับอินพุตจากระยะไกลผ่านการเริ่ม Intent (I47cee)
Wear-Input 1.0.0
เวอร์ชัน 1.0.0
2 ธันวาคม 2020
androidx.wear:wear-input:1.0.0
และ androidx.wear:wear-input-testing:1.0.0
เปิดตัวแล้ว เวอร์ชัน 1.0.0 มีคอมมิตเหล่านี้
ผลงานนี้เหมือนกับ 1.0.0-rc01
ทุกประการ
ฟีเจอร์หลักของเวอร์ชัน 1.0.0
การย้ายฟังก์ชันการทำงานของ WearableButtons จากไลบรารีการสนับสนุน Wearable ไปยัง Jetpack
เพิ่ม
androidx.wear.input.test.TestWearableButtonsProvider
ซึ่งใช้androidx.wear.input.WearableButtonsProvider
เพื่อช่วยทดสอบแอปพลิเคชันที่พัฒนาด้วยไลบรารีandroidx.wear:wear-input
เวอร์ชัน 1.0.0-rc01
11 พฤศจิกายน 2020
androidx.wear:wear-input:1.0.0-rc01
และ androidx.wear:wear-input-testing:1.0.0-rc01
เปิดตัวแล้ว เวอร์ชัน 1.0.0-rc01 มีคอมมิตเหล่านี้
ผลงานนี้เหมือนกับ 1.0.0-beta01
ทุกประการ
เวอร์ชัน 1.0.0-beta01
28 ตุลาคม 2020
androidx.wear:wear-input:1.0.0-beta01
และ androidx.wear:wear-input-testing:1.0.0-beta01
จะเปิดตัวโดยไม่มีการเปลี่ยนแปลงใดๆ ตั้งแต่ 1.1.0-alpha01
เวอร์ชัน 1.0.0-beta01 มีคอมมิตเหล่านี้
Wear-Input-Testing เวอร์ชัน 1.0.0-alpha01
14 ตุลาคม 2020
androidx.wear:wear-input-testing:1.0.0-alpha01
ได้รับการเผยแพร่แล้ว เวอร์ชัน 1.0.0-alpha01 มีคอมมิตต่อไปนี้
การเปลี่ยนแปลง API
- เพิ่ม
androidx.wear.input.test.TestWearableButtonsProvider
ซึ่งใช้androidx.wear.input.WearableButtonsProvider
เพื่อช่วยทดสอบแอปพลิเคชันที่พัฒนาด้วยไลบรารีandroidx.wear:wear-input
(I0ed0c)
Wear-Input เวอร์ชัน 1.0.0-alpha01
2 กันยายน 2020
androidx.wear:wear-input:1.0.0-alpha01
ได้รับการเผยแพร่แล้ว เวอร์ชัน 1.0.0-alpha01 มีคอมมิตต่อไปนี้
ฟีเจอร์ใหม่
การย้ายฟังก์ชันการทำงานของ WearableButtons จากไลบรารีการสนับสนุน Wearable ไปยัง Jetpack เราจะให้การรองรับการทดสอบเพิ่มเติมในandroidx.wear:wear-input-testing
ไลบรารีในการเปิดตัว Jetpack ครั้งถัดไป
เวอร์ชัน 1.1.0
เวอร์ชัน 1.1.0
14 ตุลาคม 2020
androidx.wear:wear:1.1.0
ได้รับการเผยแพร่แล้ว เวอร์ชัน 1.1.0 มีคอมมิตเหล่านี้
การเปลี่ยนแปลงที่สำคัญตั้งแต่เวอร์ชัน 1.0.0
- เพิ่มคำนำหน้า
layout_
ให้กับแอตทริบิวต์ boxedEdges (ตอนนี้คือlayout_BoxedEdges
) สำหรับBoxInsetLayout
เพื่อให้เป็นไปตามรูปแบบการตั้งชื่อของ Android การดำเนินการนี้จะนำข้อผิดพลาดของ Linter ใน Android Studio สำหรับแอตทริบิวต์เหล่านี้ออก (I4272f) - เพิ่ม
EXTRA_ANIMATION_DURATION_MILLIS
ที่ไม่บังคับลงในConfirmationActivity
เพื่ออนุญาตระยะเวลาที่กล่องโต้ตอบการยืนยันจะแสดง (adb83ce, b/143356547) - อัปเดต
WearableActionDrawView
เพื่อเลื่อนการขยายเมนูการดำเนินการจนกว่าจะเปิดเมนูเป็นครั้งแรก (I01026, b/163870541)
เวอร์ชัน 1.1.0-rc03
2 กันยายน 2020
androidx.wear:wear:1.1.0-rc03
ได้รับการเผยแพร่แล้ว เวอร์ชัน 1.1.0-rc03 มีคอมมิตเหล่านี้
การแก้ไขข้อบกพร่อง
- แก้ไขปัญหาที่ลิ้นชักการดำเนินการไม่แสดงเนื้อหาเมื่อเปิด (I01026, b/163870541)
เวอร์ชัน 1.1.0-rc02
24 มิถุนายน 2020
androidx.wear:wear:1.1.0-rc02
ได้รับการเผยแพร่แล้ว เวอร์ชัน 1.1.0-rc02 มีคอมมิตเหล่านี้
การแก้ไขข้อบกพร่อง
- เพิ่มคำนำหน้า
layout_
ให้กับแอตทริบิวต์ boxedEdges (ตอนนี้คือlayout_boxedEdges
) สำหรับBoxInsetLayout
เพื่อให้เป็นไปตามรูปแบบการตั้งชื่อของ Android การดำเนินการนี้จะนำข้อผิดพลาดของ Linter ใน Android Studio สำหรับแอตทริบิวต์เหล่านี้ออก
เวอร์ชัน 1.1.0-rc01
14 พฤษภาคม 2020
androidx.wear:wear:1.1.0-rc01
เปิดตัวโดยไม่มีการเปลี่ยนแปลงใดๆ ตั้งแต่ .1.0-beta01
เวอร์ชัน 1.1.0-rc01 มีคอมมิตเหล่านี้
เวอร์ชัน 1.1.0-beta01
29 เมษายน 2020
androidx.wear:wear:1.1.0-beta01
เปิดตัวโดยไม่มีการเปลี่ยนแปลงใดๆ ตั้งแต่ androidx.wear:wear:1.1.0-alpha01
เวอร์ชัน 1.3.0-beta01 มีคอมมิตเหล่านี้
เวอร์ชัน 1.1.0-alpha01
15 เมษายน 2020
androidx.wear:wear:1.1.0-alpha01
ได้รับการเผยแพร่แล้ว เวอร์ชัน 1.1.0-alpha01 มีคอมมิตเหล่านี้
การเปลี่ยนแปลง API
- เพิ่ม
EXTRA_ANIMATION_DURATION_MILLIS
ที่ไม่บังคับลงในConfirmationActivity
เพื่ออนุญาตระยะเวลาที่กล่องโต้ตอบการยืนยันจะแสดง (adb83ce, 134523c, b/143356547)
การแก้ไขข้อบกพร่อง
- อัปเดต
WearableActionDrawView
เพื่อเลื่อนการขยายเมนูการดำเนินการจนกว่าจะเปิดเมนูเป็นครั้งแรก (5cd32f7)