Wear
androidx.wear.activity
androidx.wear.ambient
androidx.wear.input
androidx.wear.utils
androidx.wear.widget
androidx.wear.widget.drawer
(Lihat dokumen referensi untuk semua paket wear)
Tabel ini mencantumkan semua artefak dalam grup androidx.wear
.
Artefak | Rilis Stabil | Kandidat Rilis | Rilis Beta | Rilis Alfa |
---|---|---|---|---|
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.0.1 | - | - | 1.1.0-alpha04 |
wear-remote-interactions | 1.0.0 | 1.1.0-rc01 | - | - |
Mendeklarasikan dependensi
Untuk menambahkan dependensi pada Wear, Anda harus menambahkan repositori Maven Google ke project Anda. Baca repositori Maven Google untuk mengetahui informasi selengkapnya.
Tambahkan dependensi untuk artefak yang diperlukan dalam file build.gradle
bagi aplikasi atau modul Anda:
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.0.1" // Use to implement support for interactions between the Wearables and Phones implementation "androidx.wear:wear-remote-interactions:1.0.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.0.1") // Use to implement support for interactions between the Wearables and Phones implementation("androidx.wear:wear-remote-interactions:1.0.0") }
Untuk informasi dependensi selengkapnya, lihat Menambahkan dependensi build.
Masukan
Masukan Anda membantu meningkatkan kualitas Jetpack. Beri tahu kami jika Anda menemukan masalah baru atau mempunyai masukan untuk meningkatkan kualitas library ini. Harap periksa masalah yang sudah diketahui dalam library ini sebelum membuat laporan baru. Anda dapat memberikan suara untuk masalah yang sudah diketahui dengan mengklik tombol bintang.
Lihat dokumentasi Issue Tracker untuk informasi selengkapnya.
Wear Core Versi 1.0
Versi 1.0.0-alpha01
29 Mei 2024
androidx.wear:wear-core:1.0.0-alpha01
dirilis. Versi 1.0.0-alpha01 berisi commit ini.
Perubahan API
- Menambahkan class
WearApiVersionhelper
baru untuk membantu pemeriksaan kompatibilitas API runtime di Wear. Klien dapat menggunakan class helper statis ini dan metode yang disediakan (#isApiVersionAtLeast(VERSION)
) untuk memeriksa kompatibilitas.
Pratinjau Alat Wear Versi 1.0
Versi 1.0.0
29 November 2023
androidx.wear:wear-tooling-preview:1.0.0
dirilis. Versi 1.0.0 berisi commit ini.
Fitur dalam versi 1.0.0
- Tambahkan
WearDevices
untuk mencantumkan perangkat Wear yang valid yang dapat digunakan untuk pratinjau UI.
Versi 1.0.0-rc01
15 November 2023
androidx.wear:wear-tooling-preview:1.0.0-rc01
dirilis tanpa perubahan. Versi 1.0.0-rc01 berisi commit berikut ini.
Versi 1.0.0-beta01
18 Oktober 2023
androidx.wear:wear-tooling-preview:1.0.0-beta01
dirilis tanpa perubahan. Versi 1.0.0-beta01 berisi commit ini.
Versi 1.0.0-alpha01
23 Agustus 2023
androidx.wear:wear-tooling-preview:1.0.0-alpha01
dirilis. Versi 1.0.0-alpha01 berisi commit ini.
Perubahan API
- Menambahkan
WearDevices
untuk mencantumkan perangkat Wear yang valid dan dapat digunakan untuk pratinjau UI (Ib036e)
Wear Versi 1.4
Versi 1.4.0-alpha01
15 November 2023
androidx.wear:wear:1.4.0-alpha01
dirilis. Versi 1.4.0-alpha01 berisi commit ini.
Perbaikan Bug
- Memusatkan ikon
ConfirmationOverlay
secara vertikal saat tidak ada pesan. (I496d8)
Wear Versi 1.3
Versi 1.3.0
9 Agustus 2023
androidx.wear:wear:1.3.0
dirilis tanpa perubahan sejak 1.3.0-rc01
. Versi 1.3.0 berisi commit ini.
Perubahan penting sejak versi 1.2.0
- Migrasikan
AmbientModeSupport
untuk menggunakanLifecycleObserver
. Menghentikan penggunaanAmbientModeSupport
dan menggantinya dengan class berbasis siklus proses baru. - Mengupdate
ConfirmationOverlay
dengan ikon/tata letak, font, dan metrik font baru SwipeDismissTransitionHelper
diperbarui untuk menggunakan drawable latar belakang, bukanView
kedua, untuk memperbaiki error saat menggunakanFragmentContainerView
- Animasi
SwipeDismissFrameLayout
diperbarui agar konsisten dengan implementasi platform Wear dan Wear Compose. - Perbaikan bug
SwipeDismissFrameLayout
untuk menghindari penutupan fragmen secara tidak sengaja dengan fling vertikal ArcLayout
kini mendukung bobot perluasan yang beroperasi dengan cara yang sama seperti bobot Layout reguler.- Mendukung
layoutDirection
diArcLayout
Versi 1.3.0-rc01
21 Juni 2023
androidx.wear:wear:1.3.0-rc01
dirilis tanpa perubahan sejak 1.3.0-beta01
. Versi 1.3.0-rc01 berisi commit ini.
Versi 1.3.0-beta01
7 Juni 2023
androidx.wear:wear:1.3.0-beta01
dirilis. Versi 1.3.0-beta01 berisi commit ini.
Perubahan API
- Memperbarui
AmbientLifecycleObserver
setelah masukan.AmbientLifecycleObserverInterface
telah diganti namanya menjadiAmbientLifecycleObserver
, dan instance dapat diperoleh dengan memanggilAmbientLifecycleObserver(...)
.isAmbient
telah dipindahkan menjadi kolom, bukan metode. (I84b4f)
Perbaikan Bug
- Menambahkan pemeriksaan null untuk menangani kasus saat tampilan induk null saat mereset alfa dan terjemahan di
SwipeToDismiss
. (Ib0ec7)
Versi 1.3.0-alpha05
19 April 2023
androidx.wear:wear:1.3.0-alpha05
dirilis. Versi 1.3.0-alpha05 berisi commit ini.
Perubahan API
- Migrasikan
AmbientModeSupport
untuk menggunakanLifecycleObserver
. Menghentikan penggunaanAmbientModeSupport
dan menggantinya dengan class baru yang mendukung siklus proses. (I1593b)
Perbaikan Bug
- Memperbarui pendekatan scrim latar belakang
SwipeDismissTransitionHelper
untuk menggunakan drawable, bukan menambahkan tampilan untuk memperbaiki error saat menggunakanFragmentContainerView
. (I851cd)
Versi 1.3.0-alpha04
25 Januari 2023
androidx.wear:wear:1.3.0-alpha04
dirilis. Versi 1.3.0-alpha04 berisi commit berikut.
Perbaikan Bug
- Kami telah memperbarui animasi di
SwipeDismissFrameLayout
agar konsisten dengan implementasi platform Wear dan Wear Compose. (I7261b)
Versi 1.3.0-alpha03
24 Agustus 2022
androidx.wear:wear:1.3.0-alpha03
dirilis. Versi 1.3.0-alpha03 berisi commit ini.
Fitur Baru
ArcLayout
kini mendukung bobot perluasan yang beroperasi dengan cara yang sama seperti bobot Layout reguler. Artinya, Anda dapat menentukan ukuran relatif elemen turunan tanpa harus menghitung sudutnya secara langsung. Kami juga telah menambahkan upaya terbaikMaxAngleDegrees
yang dipatuhi saat memperluas elemen turunan dengan bobot. Misalnya, Anda dapat membatasi busur dengan beberapa turunan berbobot maksimal 90 derajat, tindakan ini juga akan memperhitungkan ruang yang diambil oleh elemen yang tidak diperluas.
Perubahan API
- Kami telah menambahkan bobot ke
ArcLayout.LayoutParams
yang memungkinkan widget diperluas untuk mengisi ruang yang tersedia. Jika ada lebih dari satu widget, berarti bagian ruang yang tersedia akan sebanding dengan bobotnya. Selain itu, kami telah menambahkanArcLayout.setMaxAngleDegrees
sehingga Anda dapat, misalnya, membatasi perluasan pada 90 derajat (ingat, hal ini tidak memengaruhi tata letak widget turunan berukuran tetap). Terakhir,ArcLayout.Widget
sekarang memilikisetSweepAngleDegrees
yang memungkinkanArcLayout
memberi tahu Widget dengan bobot bukan nol dari ukurannya. (I75f24) - Mengubah nullability
setColorFilter
(I99ddf, b/236498063)
Versi 1.3.0-alpha02
23 Februari 2022
androidx.wear:wear:1.3.0-alpha02
dirilis. Versi 1.3.0-alpha02 berisi commit ini.
Fitur Baru
- Mendukung
layoutDirection
diArcLayout
(I14d49) - Meningkatkan pesan deskripsi konten untuk ConfirmationOverlay (I0fdf8)
- Mengupdate
ConfirmationOverlay
dengan ikon/tata letak baru. (If5b54)
Perbaikan Bug
- Menambahkan aturan ProGuard untuk memastikan bahwa kode terkait ambient dipertahankan (Idaa10)
- Menghindari penutupan fragmen secara tidak sengaja di SwipeDismissFrameLayout dengan fling vertikal (Idb6d8)
- Memperbaiki ConfirmationOverlay saat tidak ada pesan (I63e6f)
Kontribusi Eksternal
- Dae Gyu LEE (Samsung) - Menghindari penutupan fragmen secara tidak sengaja di SwipeDismissFrameLayout dengan fling vertikal (Idb6d8)
Versi 1.3.0-alpha01
29 September 2021
androidx.wear:wear:1.3.0-alpha01
dirilis. Versi 1.3.0-alpha01 berisi commit berikut.
Perbaikan Bug
ConfirmationOverlay
sekarang mendorong ikon ke atas untuk mengakomodasi pesan yang lebih panjang, tanpa pesan yang masuk ke bingkai perangkat (atau di luar layar). (I54bff)
Wear Ongoing & Interactions Versi 1.1.0
Versi 1.1.0-rc01
16 Oktober 2024
androidx.wear:wear-remote-interactions:1.1.0-rc01
dirilis tanpa perubahan sejak 1.1.0-beta01
. Versi 1.1.0-rc01 berisi commit ini.
Versi 1.1.0-beta01
24 Juli 2024
androidx.wear:wear-remote-interactions:1.1.0-beta01
dirilis. Versi 1.1.0-beta01 berisi commit ini. Rilis Wear Remote Interactions 1.3.0-beta01 menunjukkan bahwa rilis library ini sudah berfitur lengkap dan API dikunci (kecuali jika ditandai sebagai eksperimental).
Versi 1.1.0-alpha04
10 Januari 2024
androidx.wear:wear-phone-interactions:1.1.0-alpha04
dirilis. Versi 1.1.0-alpha04 berisi commit ini.
Perubahan API
- Kami telah menambahkan
RemoteAuthClient.isRemoteAuthAvailable
yang memeriksa apakah autentikasi jarak jauh tersedia. (Ibc10c)
Versi 1.1.0-alpha02
10 Januari 2024
androidx.wear:wear-remote-interactions:1.1.0-alpha02
dirilis. Versi 1.1.0-alpha02 berisi commit berikut ini.
Perubahan API
- Kami telah menambahkan
RemoteActivityHelper.isRemoteActivityHelperAvailable
yang membantu memeriksa apakah fungsi peluncuran aktivitas jarak jauh tersedia. (I107a9) - Kami telah memperbarui konstruktor
RemoteActivityHelper
agar memiliki parameter opsional yang kompatibel di Java. (I75554)
Versi 1.1.0-alpha01
21 Juni 2023
androidx.wear:wear-remote-interactions:1.1.0-alpha01
dirilis. Versi 1.1.0-alpha01 berisi commit ini.
Perbaikan Bug
- Meningkatkan cara penyelesaian dan penanganan error dilakukan di
RemoteActivityHelper
. (I60d60)
Kontribusi Eksternal
- Hapus dependensi Guava dari
wear-remote-interactions
dan gunakan alternatif yang lebih kecil.
Wear-Phone-Interactions Versi 1.1.0-alpha03
9 Maret 2022
androidx.wear:wear-phone-interactions:1.1.0-alpha03
dirilis. Versi 1.1.0-alpha03 berisi commit ini.
Perbaikan Bug
redirectUrl
dariOAuthRequest
sekarang menampilkan String kosong jika ada URL alihan yang tidak disetel di URL permintaan yang ditentukan. (I44242)
Wear-Phone-Interactions Versi 1.1.0-alpha02
15 Desember 2021
androidx.wear:wear-phone-interactions:1.1.0-alpha02
dirilis. Versi 1.1.0-alpha02 berisi commit berikut ini.
Perbaikan Bug
- Perbaiki error dalam dokumentasi
RemoteAuthClient
, termasuk error dalam cuplikan contoh kode dan link yang mati keErrorCode
(I260e8)
Wear-Phone-Interactions Versi 1.1.0-alpha01
15 September 2021
androidx.wear:wear-phone-interactions:1.1.0-alpha01
dirilis. Versi 1.1.0-alpha01 berisi commit ini.
Perubahan API
Wear Ongoing & Interactions Versi 1.0.0
Wear-Phone-Interactions Versi 1.0.1
15 Desember 2021
androidx.wear:wear-phone-interactions:1.0.1
dirilis. Versi 1.0.1 berisi commit ini.
Perbaikan Bug
- Memperbaiki pengecualian yang ditampilkan dari
BridgingManager
saat mencoba menonaktifkan notifikasi penghubung tanpaexcludedTags
.
Wear-Phone-Interactions Wear-Remote-Interactions Versi 1.0.0
15 September 2021
androidx.wear:wear-phone-interactions:1.0.0
dan androidx.wear:wear-remote-interactions:1.0.0
dirilis. Versi 1.0.0 berisi commit ini.
Fitur utama 1.0.0
Library Interaksi Telepon berisi API untuk interaksi dari Perangkat Wearable ke Ponsel. Isinya adalah sebagai berikut:
PhoneDeviceType
, yang menyediakan metode bantuan untuk menentukan jenis ponsel yang disambungkan ke smartwatch saat ini, untuk digunakan pada perangkat Wearable.BridgingManager
API,BridgingManagerService
API, danBridgingConfig
API untuk mengaktifkan/menonaktifkan notifikasi saat runtime dan menetapkan tag secara opsional untuk notifikasi yang dikecualikan dari mode bridge.RemoteAuthClient
, yang memberikan dukungan untuk autentikasi jarak jauh pada perangkat Wearable bersama dukungan untuk menambahkan ekstensi OAuth PKCE. Menyediakan class pengendali dan helper tambahan untuk komunikasi.
Library Interaksi Jarak Jauh berisi API untuk berinteraksi di antara Perangkat Wearable dan Ponsel. Isinya adalah sebagai berikut:
WatchFaceConfigIntentHelper
, yang menyediakan fungsi bantuan untuk menentukan ID dan nama komponen dalam aktivitas konfigurasi tampilan jam untuk pendamping di ponsel.- Class
RemoteActivityHelper
yang dapat digunakan untuk membuka intent di perangkat lain (yaitu dari smartwatch ke ponsel).
Wear-Phone-Interactions Wear-Remote-Interactions Versi 1.0.0-rc01
1 September 2021
androidx.wear:wear-phone-interactions:1.0.0-rc01
dan androidx.wear:wear-remote-interactions:1.0.0-rc01
dirilis. Versi 1.0.0-rc01 berisi commit ini.
Perbaikan Bug
- Memperbaiki bug yang mencegah error yang muncul dalam Layanan Google Play agar tidak disebarkan ke pemanggil saat menggunakan RemoteActivityHelper (I60d60)
- Memperbaiki bug yang menyebabkan RemoteActivityHelper tidak akan memenuhi Future-nya jika tidak ada node yang terhubung, atau jika nodeId yang diminta tidak ditemukan (I60d60)
Wear-Ongoing Versi 1.1
Versi 1.1.0-alpha01
23 Agustus 2023
androidx.wear:wear-ongoing:1.1.0-alpha01
dirilis. Versi 1.1.0-alpha01 berisi commit ini.
Perubahan API
- Menambahkan kolom deskripsi konten ke Ongoing Activity. Ini akan digunakan oleh layanan aksesibilitas untuk mendeskripsikan Aktivitas yang Sedang Berlangsung. (I79fc6)
Perbaikan Bug
- Menambahkan
@RequiresPermission
ke API yang memerlukan pemberian izinPOST_NOTIFICATIONS
di SDK 33 dan yang lebih baru. (Ie542e, b/238790278)
Wear-Ongoing Versi 1.0.0
1 September 2021
androidx.wear:wear-ongoing:1.0.0
dirilis. Versi 1.0.0 berisi commit ini.
Fitur utama 1.0.0
- Wear Ongoing Activities API adalah API untuk developer, termasuk developer pihak ketiga, yang digunakan untuk menandai aktivitas mereka sebagai “Aktivitas yang Sedang Berlangsung”, dan memberikan informasi yang diperlukan.
- Aktivitas yang Sedang Berlangsung merujuk pada aktivitas yang dapat berjalan di latar belakang smartwatch (misalnya, olahraga, panggilan telepon, dan media). Di Wear 3, aktivitas yang dideklarasikan sebagai sedang berlangsung akan dibuat lebih jelas melalui ikon overlay khusus pada tampilan jam dan rendering yang berbeda di peluncur aplikasi.
- Untuk informasi selengkapnya, lihat Panduan Aktivitas yang Sedang Berlangsung di Wear
Wear-Phone-Interactions Wear-Remote-Interactions Versi 1.0.0-beta01
18 Agustus 2021
androidx.wear:wear-phone-interactions:1.0.0-beta01
dan androidx.wear:wear-remote-interactions:1.0.0-beta01
dirilis. Versi 1.0.0-beta01 berisi commit ini.
Perubahan API
- Mengganti nama class
RemoteIntentHelper
menjadiRemoteActivityHelper
. Mengganti nama fungsiRemoteIntentHelper#getRemoteIntentExtraIntent
danRemoteIntentHelper#getRemoteIntentNodeId
menjadiRemoteActivityHelper#getTargetIntent
danRemoteActivityHelper#getTargetNodeId
. (Id2042)
Wear-Ongoing Versi 1.0.0-rc01
18 Agustus 2021
androidx.wear:wear-ongoing:1.0.0-rc01
dirilis tanpa perubahan sejak 1.0.0-beta01
. Versi 1.0.0-rc01 berisi commit ini.
Wear-Ongoing Versi 1.0.0-beta01
4 Agustus 2021
androidx.wear:wear-ongoing:1.0.0-beta01
dirilis. Versi 1.0.0-beta01 berisi commit ini.
Perubahan API
- Beberapa penyetel di OngoingActivity.Builder sekarang menerima argumen null agar penyetel dan pengambil bisa simetris dan konsisten (I17ee5)
Wear-Phone-Interactions Versi 1.0.0-alpha07
4 Agustus 2021
androidx.wear:wear-phone-interactions:1.0.0-alpha07
dirilis. Versi 1.0.0-alpha07 berisi commit ini.
Perubahan API
- Mengganti nama
WearTypeHelper.isChinaDevice
menjadiWearTypeHelper.isChinaBuild
. (I47302) - Kami telah mengupdate library RemoteAuthClient agar otomatis memilih redirect_uri berdasarkan jenis perangkat (RoW/Cina). (I38866)
- Memperbaiki bug yang menyebabkan konversi BridgingConfig ke/dari Bundle gagal dengan ClassCastException. Menambahkan pengujian unit untuk class BridgingManagerService. (I68ecb)
Wear-Remote-Interactions Versi 1.0.0-alpha06
4 Agustus 2021
androidx.wear:wear-remote-interactions:1.0.0-alpha06
dirilis. Versi 1.0.0-alpha06 berisi commit ini.
Wear-Phone-Interactions Versi 1.0.0-alpha06
21 Juli 2021
androidx.wear:wear-phone-interactions:1.0.0-alpha06
dirilis. Versi 1.0.0-alpha06 berisi commit ini.
Perubahan API
- Class
BridgingManagerSeviceBinder
sekarang menjadi subclass Service dan diganti namanya menjadi BridgingManagerSevice. (I9fca2) - Metode
RemoteAuthClient.Callback.onAuthorizationError
diubah untuk menyertakan parameter OAuthRequest. Metode yang memerlukan callback sekarang juga memerlukan eksekutor untuk menjalankan callback. (I35e11)
Perbaikan Bug
- Kami telah membuat API autentikasi lebih jelas dengan parameter yang lebih terdokumentasi dan dengan menggunakan properti jika memungkinkan. (I12287)
Wear-Phone-Interactions Versi 1.0.0-alpha05
30 Juni 2021
androidx.wear:wear-phone-interactions:1.0.0-alpha05
dirilis. Versi 1.0.0-alpha05 berisi commit ini.
Perbaikan Bug
- Mendokumentasikan parameter yang harus diteruskan dalam konstruktor untuk
BridgingConfig.Builder
.
Wear-Ongoing Versi 1.0.0-alpha06
2 Juni 2021
androidx.wear:wear-ongoing:1.0.0-alpha06
dirilis. Versi 1.0.0-alpha06 berisi commit ini.
Perubahan API
- Menambahkan kolom Judul ke Ongoing Activity. (I7a405)
Perbaikan Bug
SerializationHelper.copy()
sekarang membuat salinan informasi defensif (I8b276)- Memperbaiki dokumentasi setCategory (Iff01f)
Wear-Ongoing Versi 1.0.0-alpha05
18 Mei 2021
androidx.wear:wear-ongoing:1.0.0-alpha05
dirilis. Versi 1.0.0-alpha05 berisi commit ini.
Perubahan API
OngoingActivity
kini memiliki pengambil untuk mengambil semua nilai yang ditetapkan langsung melalui Builder (atau default yang diambil dari Notifikasi terkait). (Id8ac8)- Class baru
Status
kini digunakan untuk membuat statusOngoingActivity
OngoingActivityData
danOngoingActivityStatus
tidak lagi menjadi bagian dari API publik.
- Class baru
Class
TextStatusPart
danTimerStatusPart
tidak lagi menjadi bagian dari API publik. (I57fb6)- Untuk membuat
Part
dengan teks statis, gunakanStatus.TextPart
. - Untuk membuat
Part
dengan stopwatch (hitungan maju), gunakanStatus.Stopwatch
- Untuk membuat
Part
dengan timer (hitungan mundur), gunakanStatus.Timer
- Untuk membuat
Wear-Ongoing Versi 1.0.0-alpha04
5 Mei 2021
androidx.wear:wear-ongoing:1.0.0-alpha04
dirilis. Versi 1.0.0-alpha04 berisi commit ini.
Perubahan API
- Di OngoingActivity, metode fromExistingOngoingActivity sekarang disebut recoverOngoingActivity.
- OngoingActivity kini memiliki rangkaian lengkap pengambil, yang sebelumnya hanya tersedia di OngoingActivityData. (I0ee4d)
Wear-Remote-Interactions Versi 1.0.0-alpha05
21 Juli 2021
androidx.wear:wear-remote-interactions:1.0.0-alpha05
dirilis. Versi 1.0.0-alpha05 berisi commit ini.
Perubahan API
Kami telah menambahkan class
RemoteIntentHelper
(sebelumnya RemoteIntent dalam Wearable Support Library) yang dapat digunakan untuk membuka intent di perangkat lain (yaitu dari smartwatch ke ponsel). (I1d7e0)Class PlayStoreAvailability telah dihapus dari library AndroidX. Untuk mendeteksi apakah Play Store tersedia di ponsel yang terhubung, gunakan metode
androidx.phone.interactions.PhoneTypeHelper.getPhoneDeviceType
untuk menentukan apakah ponsel yang terhubung adalah ponsel Android. Kemudian, gunakan metodeandroidx.wear.utils.WearTypeHelper.isChinaDevice
untuk menentukan apakah ponsel yang terhubung adalah perangkat China. Jika ponsel adalah ponsel Android dan jika bukan perangkat China, Play Store akan tersedia. (Ie7dec)
Wear-Phone-Interactions Versi 1.0.0-alpha04
7 April 2021
androidx.wear:wear-phone-interactions:1.0.0-alpha04
dirilis. Versi 1.0.0-alpha04 berisi commit ini.
Perubahan API
- Mengupdate konstanta
ErrorCode
untuk membuat library baru kompatibel dengan versi lama menggunakan implementasi di Wearable Support Library.
Perbaikan Bug
- Memperbaiki pengecualian yang disebabkan oleh OAuth API baru saat memulai sesi OAuth.
Wear-Remote-Interactions Versi 1.0.0-alpha03
7 April 2021
androidx.wear:wear-remote-interactions:1.0.0-alpha03
dirilis. Versi 1.0.0-alpha03 berisi commit ini.
Perubahan API
- Mengubah
PlayStoreAvailability
menjadi class yang berisi objek pendamping dengan metode statis. Penggunaannya tetap sama.
Perbaikan Bug
- Memperbaiki dokumen ringkasan untuk
WatchFaceConfigIntentHelper
agar menampilkan kode contoh dengan benar menggunakan karakter HTML yang sebenarnya.
Wear-Ongoing Wear-Phone-Interactions Versi 1.0.0-alpha03
10 Maret 2021
androidx.wear:wear-ongoing:1.0.0-alpha03
dan androidx.wear:wear-phone-interactions:1.0.0-alpha03
dirilis. Versi 1.0.0-alpha03 berisi commit ini.
Fitur Baru
- Memigrasikan OAuthClient dari Wearable Support Library ke AndroidX. Class yang dimigrasikan ini berganti nama menjadi RemoteAuthClient dan memberikan dukungan untuk autentikasi jarak jauh pada perangkat Wearable bersama dengan dukungan untuk menambahkan ekstensi OAuth PKCE. Menyediakan class pengendali dan helper tambahan untuk komunikasi.
- Aktivitas yang sedang berjalan sekarang dapat dikaitkan dengan Notification yang memiliki tag, menggunakan konstruktor OngoingActivity.Builder baru.
Perubahan API
- Menambahkan dukungan untuk tag notifikasi pada Library Ongoing Activities (I653b4)
- Memigrasikan OAuthClient dari Wear Support Library ke AndroidX, dan menambahkan dukungan untuk ekstensi OAuth PKCE (I3eaaa)
Wear-Remote-Interactions Versi 1.0.0-alpha02
10 Maret 2021
androidx.wear:wear-remote-interactions:1.0.0-alpha02
dirilis. Versi 1.0.0-alpha02 berisi commit ini.
Fitur Baru
- Memigrasikan class PlayStoreAvailability dari Wearable Support Library ke AndroidX yang menyediakan API untuk memeriksa apakah Play Store tersedia di Ponsel.
Perbaikan Bug
- Memigrasikan class PlayStoreAvailability dari Wearable Support Library ke AndroidX. (I69bfe)
Versi 1.0.0-alpha02
10 Februari 2021
androidx.wear:wear-ongoing:1.0.0-alpha02
dan androidx.wear:wear-phone-interactions:1.0.0-alpha02
dirilis. Versi 1.0.0-alpha02 berisi commit ini.
Perubahan API
- Menambahkan dukungan untuk status yang lebih kompleks. Dukungan tersebut terdiri dari sebuah template (atau beberapa) dan serangkaian Bagian yang akan digunakan untuk mengisi placeholder template. OngoingActivityStatus sekarang memiliki metode statis untuk membuat status sederhana hanya dengan satu bagian (Teks atau Timer), dan Builder untuk membuat status yang lebih kompleks. (I1fe81)
- Memindahkan class BridgingManager dan BridgingConfig dari Support Library Wear ke AndroidX yang menyediakan API untuk mengaktifkan/menonaktifkan notifikasi saat runtime dan menetapkan tag secara opsional untuk notifikasi yang dikecualikan dari mode bridge. (I3a17e)
Versi 1.0.0-alpha01
27 Januari 2021
androidx.wear:wear-ongoing:1.0.0-alpha01
, androidx.wear:wear-phone-interactions:1.0.0-alpha01
, dan androidx.wear:wear-remote-interactions:1.0.0-alpha01
dirilis. Versi 1.0.0-alpha01 berisi commit ini.
Perubahan API
Memigrasikan library Ongoing Activities ke sub-library baru: wear-ongoing. Class sekarang berada di paket androidx.wear.ongoing (sebelumnya androidx.wear.ongoingactivities) (I7c029)
Membuat library dukungan baru untuk menampung class yang mendukung interaksi dari Wearable ke Ponsel. Ini awalnya diisi dengan class yang dimigrasikan dari Wearable Support Library. (Id5180)
Memigrasikan class PhoneDeviceType dari Wearable Support Library ke AndroidX. Class yang dimigrasikan berganti nama menjadi PhoneTypeHelper yang menyediakan metode bantuan untuk menentukan jenis ponsel yang akan disambungkan dengan smartwatch saat ini, untuk hanya digunakan di perangkat Wearable. (Ibd947)
Membuat library dukungan baru untuk menampung class yang mendukung interaksi antara Wearable dan Ponsel. Ini awalnya diisi dengan class yang dimigrasikan dari Wearable Support Library. (I9deb4)
Memigrasikan class WatchFaceCompanion dari Wearable Support Library ke AndroidX. Class yang dimigrasikan berganti nama menjadi WatchFaceConfigIntentHelper yang menyediakan fungsi bantuan untuk menentukan ID dan nama komponen dalam aktivitas konfigurasi tampilan jam di ponsel pendamping, serta dapat digunakan secara lokal untuk mengonfigurasi tampilan jam pada perangkat wearable. (Ia455f)
Wear Complications dan Watchface 1.0.0
Versi 1.0.0-alpha22
15 September 2021
androidx.wear:wear-*:1.0.0-alpha22
dirilis. Versi 1.0.0-alpha22 berisi commit berikut ini.
Fitur Baru
- EditorSession sekarang mendukung pengamat siklus proses sehingga Anda tidak perlu lagi menutupnya secara eksplisit saat aktivitas hilang.
Perubahan API
- EditorSession dan ListenableEditorSession sekarang menggunakan StateFlow kotlin untuk ComplicationSlotsState, ComplicationsPreviewData, dan ComplicationsDataSourceInfo. (I761d9)
- EditorSession#userStyle sekarang menjadi
MutableStateFlow<UserStyle>
(I32ca9) - EditorSession.createOnWatchEditorSession sekarang menggunakan pengamat siklus proses dan otomatis menutup saat mengamati onDestroy. Selain itu,
createOnWatchEditorSession
sekarang hanya memerlukan aktivitas yang akan diteruskan. Perubahan yang sama juga telah diterapkan ke ListenableEditorSession. (Ic6b7f) - Konstruktor CustomValueUserStyleSetting telah diaktifkan kembali sebagai bagian dari API publik. (I2e69a)
UserStyle
sekarang mewarisi dariMap<UserStyleSetting, UserStyleSetting.Option>
danMutableUserStyleSetting#put
memunculkan IllegalArgumentException jika setelan tidak dalam skema atau jika opsi tidak cocok dengan setelan. (Iba40f)
Versi 1.0.0-alpha21
1 September 2021
androidx.wear:wear-*:1.0.0-alpha21
dirilis. Versi 1.0.0-alpha21 berisi commit berikut ini.
Perubahan API
- Semua API publik untuk tampilan jam, klien, editor, dan detail kini menggunakan java.time.Instant untuk waktu, bukan Long, karena API level minimum meningkat menjadi 26. (I3cd48)
- API tampilan jam dan detail kini menggunakan ZonedDateTime yang tidak dapat diubah, bukan Kalender. (I25cf8)
- ComplicationSlots sekarang diinisialisasi dengan NoDataComplicationData, ComplicationSlot.complicationData sekarang selalu memiliki nilai, dan CanvasComplicationDrawable.complicationData bukan lagi nullable. (I4dfd6) Hal ini akan mengurangi (tetapi tidak menghilangkan) kedipan detail saat beralih antar-tampilan jam.
Versi 1.0.0-alpha20
18 Agustus 2021
androidx.wear:wear-*:1.0.0-alpha20
dirilis. Versi 1.0.0-alpha20 berisi commit berikut ini.
Perubahan API
- Kami telah menambahkan createFallbackPreviewData ke ComplicationDataSourceInfo yang dapat digunakan saat ComplicationDataSourceInfoRetriever.retrievePreviewComplicationData menampilkan null. (I38c4d)
- ComplicationDataSourceUpdateRequester telah diubah menjadi antarmuka untuk memungkinkan tiruan dalam pengujian unit. Anda dapat membuat ComplicationDataSourceUpdateRequester konkret dengan ComplicationDataSourceUpdateRequester.create(). (I7da22)
- RenderParameters.pressedComplicationSlotIds telah diganti dengan RenderParameters.lastComplicationTapDownEvents yang menampilkan class TapEvent baru yang berisi tiga koordinat x, y dari ketukan dalam piksel dan stempel waktu.
WatchFace.TapListener.onTap
telah diganti denganonTapEvent(@TapType tapType: Int, tapEvent: TapEvent)
. Selain itu,InteractiveWatchFaceClient.displayPressedAnimation
telah dihapus. (Id87d2) - Menambahkan anotasi threading eksplisit untuk setImportantForAccessibility (I990fa)
- ComplicationSlotBoundsType telah dipindahkan ke androidx-wear-watchface.ComplicationSlotBoundsType di wear/wear-watchface. (I09420)
- Kami telah menambahkan dukungan untuk meneruskan ID resource string ke UserStyleSetting dan Options. Sekarang, ini adalah cara yang direkomendasikan untuk membuat objek-objek tersebut. (I03d5f)
- Batas telah diberlakukan pada ukuran kabel maksimum Skema UserStyle. Selain itu, Ikon dalam skema tidak boleh lebih besar dari 400x400 piksel. (I3b65b)
- Kami menambahkan class MutableUserStyle untuk mendukung perubahan pada instance UserStyle (I95a40)
- Kami telah mengganti nama
ListenableWatchFaceMetadataClient.Companion#listenableCreateWatchFaceMetadataClient
menjadiListenableWatchFaceMetadataClient.Companion#createListenableWatchFaceMetadataClient
. (I64ce2) - Kami telah memodifikasi EditorState.previewComplicationsData agar hanya berisi data untuk detail yang diaktifkan, dan kami telah menambahkan
EditorSession.DEFAULT_PREVIEW_TIME_MILLIS
yang jika diteruskan kerenderWatchFaceToBitmap
atauPreviewScreenshotParams
akan meminta rendering dengan waktu pratinjau default tampilan jam. (If7b3c) - Kami telah menghapus konstruktor UserStyleSetting yang mengambil CharSequence dari API publik. Sebaiknya gunakan konstruktor yang memerlukan ID StringResource. (I8537b)
CurrentUserStyleRepository.UserStyleChangeListener
sekarang mendukung konversi SAM. (I85989)
Versi 1.0.0-alpha19
4 Agustus 2021
androidx.wear:wear-*:1.0.0-alpha19
dirilis. Versi 1.0.0-alpha19 berisi commit berikut ini.
Perubahan API
- Kami telah menambahkan
ListenableWatchFaceMetadataClient.listenableCreateWatchFaceMetadataClient
yang memberikan wrapperListenableFuture
untukWatchFaceMetadataClient.createWatchFaceMetadataClient
. (I5fa37) UserStyleOption.getOptionForId
kini menerimaUserStyleOption.Id
, bukan array byte. (I469be)- Menyediakan konstanta
BooleanOption.TRUE
danBooleanOption.FALSE
serta melarang pembuatan instance (I46e09) - Metode dalam wear-watchface-client yang dapat melemparkan RemoteException sekarang telah dianotasi sebagaimana mestinya. (Ib8438)
- Agar konsisten, kami telah mengganti nama
EditorSession.createOnWatchEditingSession
menjadicreateOnWatchEditorSession
, sama halnya dengancreateHeadlessEditingSession
sekarang menjadicreateHeadlessEditorSession
. Nama wrapper guava-nya juga telah diganti. (I1526b) EditorSession
sekarang menjadi antarmuka danListenableEditorSession.commitChangesOnClose
sekarang didelegasikan dengan benar. (I7dc3e)- Kini kami menolak skema gaya pengguna apa pun yang memiliki setelan atau opsi dengan ID yang bertentangan (Ic2715)
- Kami telah menambahkan
UserStyle.get
yang berlebihan yang menerimaUserStyleSetting.Id
. (I2aa0f)
Versi 1.0.0-alpha18
21 Juli 2021
androidx.wear:wear-*:1.0.0-alpha18
dirilis. Versi 1.0.0-alpha18 berisi commit berikut ini.
Perubahan API
- Kami memindahkan
ComplicationHelperActivity
ke libraryandroidx.wear:wear-watchface
. (I39e76) - Agar konsisten dan jelas,
ComplicationProvider
telah diganti namanya menjadiComplicationDataSource
dan nama semua class dengan Penyedia di namanya juga telah diganti. (Iaef0b) CanvasComplication.isHighlighted
telah dipindahkan keRenderParameters.pressedComplicationSlotIds
. Ini adalah langkah untuk menjadikanCanvasComplication
stateless. Untuk mendukung perubahan ini,CanvasComplication.render
kini juga menggunakanslotId
sebagai parameter. Sekarang, kita meneruskanComplicationSlot
keGlesTextureComplication
. (I50e6e)- Kami telah menambahkan
headlessDeviceConfig
keEditorRequest
. Jika bukan null, parameter ini digunakan untuk membuat instance headless guna mendukung EditorSession dan bukan bertindak pada instance interaktif. Hal ini memungkinkan editor dipanggil untuk tampilan jam yang bukan tampilan saat ini. (I0a820) - Kami telah menambahkan
WatchFaceMetadataClient
eksperimental yang memungkinkan pengambilan metadata tampilan jam statis secara efisien sepertiUserStyleSchema
dan detail tetap tentangComplicationSlots
. (I6bfdf) - Kami telah mengganti nama
CanvasRenderer.uiThreadInit
menjadi init. (I6fff9) - Kami telah menambahkan PreviewScreenshotParams sebagai parameter baru opsional untuk EditorRequest yang menginstruksikan EditorSession untuk mengambil screenshot pratinjau pada commit dengan parameter ini. Gambar pratinjau ditampilkan pada
EditorState.previewImage
. (Ic2c16)
Perbaikan Bug
- Developer tidak perlu lagi menambahkan ComplicationHelperActivity ke manifesnya. (I6f0c2)
Versi 1.0.0-alpha17
30 Juni 2021
androidx.wear:wear-*:1.0.0-alpha17
dirilis. Versi 1.0.0-alpha17 berisi commit berikut ini.
Fitur Baru
Dalam
GlesRenderer
,makeUiThreadContextCurrent
danmakeBackgroundThreadContextCurrent
telah diganti denganrunUiThreadGlCommands
danrunBackgroundThreadGlCommands
yang menerimaRunnable
. Library tersebut memastikan hanya ada satu perintah GL yang dapat dijalankan pada waktu tertentu.Untuk mempermudah inisialisasi UiThread, kami telah menambahkan
CanvasRenderer.uiThreadInit
yang dipanggil satu kali di UiThread sebelum panggilan apa pun yang akan dirender. Kami juga telah menambahkanonRendererCreated
keCanvasComplication
yang memudahkanRenderer
danCanvasComplication
berbagi status.Agar lebih jelas, kami telah mengganti nama
Complication
menjadiComplicationSlot
dancomplicationId
menjadicomplicationSlotId
ataucomplicationInstanceId
, bergantung pada penggunaan
Perubahan API
- Agar lebih jelas, kami telah mengganti nama
Complication
menjadiComplicationSlot
dancomplicationId
menjadicomplicationSlotId
ataucomplicationInstanceId
, bergantung pada penggunaan. Class yang menggunakan Complication juga telah diganti namanya, misalnya ComplicationsManager sekarang disebut ComplicationSlotsManager. (I4da44) - Di GlesRenderer,
makeUiThreadContextCurrent
danmakeBackgroundThreadContextCurrent
telah diganti denganrunUiThreadGlCommands
danrunBackgroundThreadGlCommands
yang menerimaRunnable
. Fungsi ini hanya diperlukan jika Anda perlu melakukan panggilan GL di luar render,runBackgroundThreadGlCommands
danonUiThreadGlSurfaceCreated
. Hal ini diperlukan karena bisa jadi ada beberapa GlesRenderer dengan konteksnya masing-masing dalam proses yang sama, kemungkinan dari tampilan jam yang berbeda. Selain itu, akses ke konteks GL yang saat ini dibagikan sekarang disinkronkan. (I04d59) - Kami telah menambahkan
CanvasRenderer.uiThreadInit
yang dipanggil satu kali di UiThread sebelum panggilan apa pun yang akan dirender. Selain itu, agar lebih jelas di GlesRenderer, kami mengganti namaonGlContextCreated
menjadionBackgroundThreadGlContextCreated
, danonGlSurfaceCreated
menjadionUiThreadGlSurfaceCreated
. (If86d0) HeadlessWatchFaceClient
&InteractiveWatchFaceClient
getComplicationsSlotState
telah diganti namanya menjadigetComplicationSlotsState
. DiComplicationSlot
:createRoundRectComplicationBuilder
,createBackgroundComplicationBuilder
, dancreateEdgeComplicationBuilder
secara berurutan telah diganti namanya menjadicreateRoundRectComplicationSlotBuilder
,createBackgroundComplicationSlotBuilder
, dancreateEdgeComplicationSlotBuilder
. (Ib9adc)- Kami telah menambahkan onRendererCreated ke CanvasComplication yang mempermudah Perender dan CanvasComplication berbagi status. (I5e1ac)
Version 1.0.0-alpha16
16 Juni 2021
androidx.wear:wear-*:1.0.0-alpha16
dirilis. Versi 1.0.0-alpha16 berisi commit berikut ini.
Fitur Baru
- Kami telah memperbaiki sejumlah bug yang terkait dengan perubahan model threading terbaru serta mengatasi masalah lain terkait editor tampilan jam.
Perbaikan Bug
- Mencegah NPE di
onComplicationProviderChooserResult
(b/189594557) - Memperbaiki masalah pada surface yang sudah tidak berlaku dan drawBlack (/189452267)
- Memperbaiki race dalam mengakses
complicationsManager.watchState
(b/189457893) - Memperbaiki bug sepanjang waktu thread latar belakang (b/189445428)
- Memperbaiki masalah Pre-R Tampilan jam Editor (b/189126313)
- Jangan perbarui parameter booting langsung untuk perubahan gaya editor (b/187177307)
Versi 1.0.0-alpha15
2 Juni 2021
androidx.wear:wear-*:1.0.0-alpha15
dirilis. Versi 1.0.0-alpha15 berisi commit berikut ini.
Fitur Baru
Sebagian besar inisialisasi tampilan jam sekarang dilakukan di thread latar belakang, tetapi setelah pemuatan, semua rendering tampilan jam dsb. dilakukan pada UiThread. Terdapat penghalang memori antara pemuatan dan rendering sehingga sebagian besar tampilan jam pengguna tidak perlu melakukan tindakan khusus. Tampilan jam yang menggunakan GLES dapat menjadi pengecualian karena konteksnya spesifik untuk thread dan kita membuat dua konteks tertaut sehingga dapat mengupload resource GL (misalnya tekstur dan shader) di thread latar belakang dan menggunakannya di UiThread.
Kami telah memisahkan pembuatan tampilan jam menjadi tiga fungsi: createUserStyleSchema, createComplicationsManager, dan createWatchFace. Kami berasumsi bahwa createUserStyleSchema dan createComplicationsManager cepat dan createWatchFace mungkin memerlukan waktu untuk memuat aset. Dengan memanfaatkan hal ini, kami telah memperkenalkan WatchFaceControlClient.getDefaultProviderPoliciesAndType
yang menampilkan peta ID Detail ke DefaultComplicationProviderPolicies dan ComplicationType default. Proses ini lebih cepat daripada membuat instance headless karena tidak perlu menginisialisasi tampilan jam sepenuhnya untuk melakukan kueri.
Terakhir, detail kini dibuat dengan CanvasComplicationFactory yang memungkinkan pembuatan lambat perender CanvasComplication.
Perubahan API
@TargetApi
diganti dengan@RequiresApi
. (I0184a, b/187447093, b/187447094)- Kami telah memperkenalkan
WatchFaceControlClient.getDefaultProviderPoliciesAndType
yang menampilkan peta ID Detail ke DefaultComplicationProviderPolicies dan ComplicationType default. Jika memungkinkan, jalur cepat yang menghindari pembuatan tampilan jam sepenuhnya digunakan. Untuk memfasilitasi hal ini, WatchFaceService API harus berubah dengan dua metode baru: createUserStyleSchema dan createComplicationsManager yang hasilnya diteruskan ke createWatchFace. Selain itu, Detail sekarang dibuat dengan CanvasComplicationFactory yang memungkinkan pembuatan lambat perender CanvasComplication. (Iad6c1) - Kami telah menghapus MOST_RECENT_APP dari SystemProviders. (I3df00)
- ObservableWatchData kini menjadi class terbatas. (Ic940d)
- CanvasComplicationFactory.create (yang biasanya terikat io) sekarang dipanggil di thread latar belakang untuk setiap detail sebelum rendering thread UI dimulai. Ada penghalang memori antara pembuatan dan rendering, sehingga tidak diperlukan proses threading khusus. (Ia18f2)
- Pembuatan tampilan jam sekarang dilakukan di thread latar belakang meskipun semua rendering dilakukan pada UI thread, GlesRenderer mendukung dua konteks tertaut untuk mendukung hal ini. WatchFaceControlClient.createHeadlessWatchFaceClient dan WatchFaceControlClient.getOrCreateInteractiveWatchFaceClient dapat di-resolve sebelum WatchFaceService.createWatchFace selesai. Panggilan API berikutnya akan diblokir hingga inisialisasi watchFace selesai. (Id9f41)
- EXPANSION_DP dan STROKE_WIDTH_DP tidak lagi terlihat di api.txt. (I54801)
- Kami telah membuat EditorSession.createOnWatchEditingSession memunculkan TimeoutCancellationException jika ada error, bukan mengirim sesi null. Selain itu, nilai return EditorRequest.createFromIntent dan EditorSession.createOnWatchEditingSession kini menjadi NonNull. (I41eb4)
Versi 1.0.0-alpha14
18 Mei 2021
androidx.wear:wear-*:1.0.0-alpha14
dirilis. Versi 1.0.0-alpha14 berisi commit berikut ini.
Fitur Baru
EditorSession.openComplicationProviderChooser
kini menampilkan ChosenComplicationProvider yang berisi ID detail,ComplicationProviderInfo
, dan Paket yang berisi tambahan lainnya yang ditampilkan oleh pemilih penyedia.- Selain itu, kami terus memigrasikan kode ke Kotlin dan sebagian besar API tampilan jam kini ditetapkan di Kotlin.
Perubahan API
- Properti GlesRenderer
eglContext
daneglDisplay
kini tidak dapat bernilai null. Setiap error GL kini dilaporkan melaluiGlesRenderer.GlesException
, bukan melalui RuntimeExceptions. (Ib1005) - Kami telah memigrasikan
androidx.wear.watchface.complications.rendering.ComplicationDrawable
dari Java ke Kotlin (Ibc3eb) - Kami telah memigrasikan
androidx.wear.watchface.complications.rendering.ComplicationStyle
dari Java ke Kotlin (I3375e) - Kami menambahkan informasi tentang penyedia detail untuk setiap detail dalam EditorSession. (I37f14)
- Kami memperluas hasil
EditorSession.openComplicationProviderChooser
untuk menyertakan informasi yang ditampilkan oleh yang dipilih. (Iead6d)
Wear Complications & Watchface Versi 1.0.0-alpha13
5 Mei 2021
androidx.wear:wear-*:1.0.0-alpha13
dirilis. Versi 1.0.0-alpha013 berisi commit berikut ini.
Fitur Baru
Tampilan jam dapat memiliki elemen visual yang penting selain menampilkan waktu dan detail. Untuk memberikan dukungan bagi pembaca layar dalam hal ini, tampilan jam kini dapat menentukan aksesibilitas ContentDescriptionLabels melalui properti additionalContentDescriptionLabels Renderer. Selain itu, untuk mengontrol pengurutan ContentDescriptionLabels, accessibilityTraversalIndex telah ditambahkan ke detail. Ini dapat dimodifikasi oleh ComplicationsUserStyleSetting.
Untuk mendorong developer agar mempertimbangkan pembaca layar dengan cermat, kami telah membuat kolom
contentDescription
ShortTextComplicationData.Builder
,LongTextComplicationData.Builder
, danRangedValueComplicationData.Builder
yang wajib untuk diteruskan ke konstruktor mereka. JikaComplicationText.EMPTY
diteruskan untukcontentDescription
,contentDescription
akan otomatis dibuat dari teks dan judul.WatchFaceControlClient.getOrCreateInteractiveWatchFaceClient
sekarang melemparkanServiceStartFailureException
jika tampilan jam melemparkan pengecualian selama init. Hal ini akan sangat mempermudah untuk mendiagnosis masalah saat memulai tampilan jam.
Perubahan API
- Kami menambahkan dukungan untuk memiliki nama komponen null di ComplicationProviderInfo, yang diperlukan untuk mendukung Wear OS versi lama. (I744d2)
- Kami telah memigrasikan
androidx.wear.complications.SystemProviders
dari Java ke Kotlin. (Ia1f8b) - Kami telah menyembunyikan semua class dari API publik yang ada di android.support.wearable.complications dan membuat wrapper yang sesuai di AndroidX jika diperlukan. (I7bd50)
- Kami telah mengganti nama metode di
TimeDifferenceComplicationText.Builder
darisetMinimumUnit
menjadisetMinimalTimeUnit
. (I20c64) - Kami telah membuat kolom
contentDescription
ShortTextComplicationData.Builder
,LongTextComplicationData.Builder
, danRangedValueComplicationData.Builder
yang wajib untuk diteruskan di konstruktor. (I8cb69) - Kami telah mengganti nama ComplicationProviderService.onComplicationUpdate menjadi onComplicationRequest, serta mengenkapsulasi id dan parameter jenis metode ini menjadi data ComplicationRequest. Pemroses yang sesuai telah diganti namanya menjadi ComplicationRequestListener dan metodenya ComplicationRequestListener.onComplicationData. (Iaf146)
- Kami telah menghapus metode
isActiveAt
dariComplicationData
dan mengekspos kolomvalidTimeRange
, bukan metode tersebut. Panggilan metode ini dapat diganti denganvalidTimeRange.contains
. (I65936) - Kami telah mengubah deskripsi metode ComplicationProviderService.onComplicationActivated untuk menerima ComplicationType, bukan int. (Idb5ff)
- Memigrasi ProviderUpdateRequester dari Java ke Kotlin. (Ibce13)
- GlesRender.makeContextCurrent kini bersifat publik. Kode tampilan jam mungkin perlu melakukan panggilan gl di luar render dan onGlContextCreated, dan mungkin karena konteks interaktif dan headless, panggilan ini diperlukan. (I8a43c)
- WatchFaceControlClient.getOrCreateInteractiveWatchFaceClient sekarang melemparkan ServiceStartFailureException jika tampilan jam dilemparkan selama init. Selain itu, WatchFaceService sekarang melemparkan pengecualian jika createWatchFace memerlukan waktu lebih dari 6 detik. (I59b2f)
- Kami telah menghapus properti id
GlesTextureComplication
yang tidak digunakan. (I28958) - Tampilan jam sekarang dapat menentukan aksesibilitas ContentDescriptionLabels melalui properti additionalContentDescriptionLabels
Renderer
. Selain mengontrol pengurutan ContentDescriptionLabels, accessibilityTraversalIndex telah ditambahkan ke detail. Ini dapat dimodifikasi oleh ComplicationsUserStyleSetting. (Ib7362) - Perluas dokumentasi tentang penanganan peristiwa sentuh di tampilan jam. (Iaf31e)
Perbaikan Bug
EditorSession.getComplicationsPreviewData()
sekarang menampilkan peta untuk setiap detail yang tidak kosong. Instance EmptyComplicationData digunakan untuk detail kosong. (I1ef7e)
Wear Complications & Watchface Versi 1.0.0-alpha12
21 April 2021
androidx.wear:wear-*:1.0.0-alpha12
dirilis. Versi 1.0.0-alpha12 berisi commit ini.
Fitur Baru
Editor tampilan jam harus menandai bagian tampilan jam yang akan membantu menunjukkan aspek smartwatch yang sedang dikonfigurasi. Kami telah memperluas RenderParameters untuk mengizinkan gaya serta detail untuk ditandai. Ada HighlightLayer opsional baru yang dimaksudkan untuk diredupkan di bagian atas tampilan jam dengan transparansi alfa (API screenshot dapat melakukan peredupan ini untuk Anda, atau menyediakan HighlightLayer sendiri untuk fleksibilitas maksimum). Misalkan Anda memiliki gaya yang memungkinkan Anda mengonfigurasi tampilan smartwatch, perender di renderHighlightLayer bisa menggambar garis di sekitarnya.
Guna mendorong dukungan Penyedia Detail untuk aksesibilitas, kami telah membuat kolom contentDescription PhotoImageComplicationData.Builder, MonochromaticImageComplicationData.Builder, dan SmallImageComplicationData.Builder menjadi argumen konstruktor wajib. ComplicationTapFilter dan Complication.createEdgeComplicationBuilder telah ditambahkan untuk mendukung detail tepi (digambar di sekitar tepi layar). Rendering dan hit test detail tepi diserahkan ke tampilan jam. Hit test tepi tidak didukung dari editor pendamping.
Perubahan API
- Menambahkan awalan
PROVIDER_
ke konstanta di SystemProviders. (I1e773) - Kami telah membuat kolom wajib
contentDescription
PhotoImageComplicationData.Builder
,MonochromaticImageComplicationData.Builder
, danSmallImageComplicationData.Builder
agar diteruskan di konstruktor. (I9643a) ProviderInfoRetriever.requestPreviewComplicationData
diganti namanya menjadiretrievePreviewComplicationData
. (I911ee)- Memigrasikan
ComplicationProviderService
dari Java ke Koltin. (I849f2) - Metode
ComplicationProviderService.onBind
sekarang sudah final (I39af5) - Kami telah mengaktifkan kembali antarmuka
CanvasComplication
dan memindahkanCanvasComplicaitonDrawable
,GlesTextureComplication
, danComplicationHighlightRenderer
kewear-watchface-complications-rendering
. (I84670) RenderParameters
telah difaktorkan ulang untuk mendukung rendering sorotan yang diperluas. Sekarang Anda dapat meminta rendering sorotan untuk gaya serta semua atau satu detail. Selain itu, CanvasRenderer dan GlesRenderer sekarang memiliki metode renderHighlightLayer abstrak baru untuk merender sorotan apa pun yang diminta oleh editor. Lapisan telah diganti namanya menjadi WatchFaceLayer. (Ic2444)ComplicationTapFilter
danComplication.createEdgeComplicationBuilder
telah ditambahkan untuk mendukung detail tepi. Rendering dan hit test detail tepi diserahkan ke tampilan jam. Hit test tidak didukung dari dalam editor. (Ia6604)- Untuk
DoubleRangeUserStyleSetting
&LongRangeUserStyleSetting
:defaultValue
,maximumValue
, danminimumValue
sekarang menjadi properti kotlin. Selain itu, fungsiUserStyleSetting.Option
seperti toBooleanOption, toCoplicationOptions, toListOption, dan sejenisnya telah dihapus. (I52899) - Menambahkan ukuran chin ke properti perangkat yang tersedia untuk tampilan jam. (I76e1e)
- Konstruktor
ComplicationHighlightRenderer
sekarang menerima parameteroutlineExpansion
danoutlineStrokeWidth
. (I87009) ComplicationDrawable.getNoDataText
sekarang menjadi bagian dari API publik. (I00598)
Versi 1.0.0-alpha11
7 April 2021
androidx.wear:wear-*:1.0.0-alpha11
dirilis. Versi 1.0.0-alpha11 berisi commit berikut ini.
Fitur Baru
- Menerapkan lebih banyak penyempurnaan pada API tampilan jam. Sebagian besar perubahan adalah penggantian nama sederhana, tetapi
InteractiveWatchFaceWcsClient
danInteractiveWatchFaceSysUiClient
digabungkan menjadiInteractiveWatchFaceClient
.
Perubahan API
- ContentDescriptionLabel.text kini menjadi ComplicationText, bukan Wearable Support Library lama, TimeDependentText. (I80c03)
SystemProviders.GOOGLE_PAY
tidak dijamin akan ada di semua perangkat Android R, sehingga telah dihapus dari daftar. Penyedia ini masih mungkin digunakan melaluiDefaultComplicationProviderPolicy
(If01b5)- Kami mengganti nama ComplicationUpdateCallback menjadi ComplicationUpdateListener agar konsisten. (I61ec7)
- Peta format kawat UserStyle telah diubah menjadi
Map<String, byte[]>
dan untuk memudahkan, classUserStyleData
telah ditambahkan ke API publik dan kini digunakan oleh wear-watchface-client dan wear-watchface-editor. Selain itu, CustomValueUserStyleSetting.CustomValueOption.value kini menjadibyte[]
, bukanString
. (Iaa103) UserStyleSetting
danUserStyleSetting.Option
kini masing-masing menggunakanUserStyleSetting.Id
danUserStyleSetting.Option.Id
untuk menyimpan ID, bukan String. (I63f72)InteractiveWatchFaceClient.SystemState
diganti namanya menjadiWatchUiState
. (I6a4e0)InteractiveWatchFaceWcsClient
danInteractiveWatchFaceSysUiClient
digabungkan karena sulit menjelaskan pembagian tanggung jawab (Iff3fa)- Nilai enum lapisan diganti namanya agar jelas.
Layer#TOP_LAYER
kini menjadiLayer#COMPLICATIONS_OVERLAY
danLayer#BASE_LAYER
kini menjadiLayer#BASE
(Ia144e) UserStyleListener
diganti namanya menjadiUserStyleChangeListener
(I18524)UserStyleRepository
diganti namanya menjadiCurrentUserStyleRepository
(I6ea53)InteractiveWatchFaceWcsClient.updateInstance
diganti namanya menjadiupdateWatchfaceInstance
. (I321dc)- Peristiwa WatchFace TapType diganti namanya agar selaras dengan MotionEvents/Compose. (I0dfd0)
- takeWatchfaceScreenshot diganti namanya menjadi renderWatchFaceToBitmap, takeComplicationScreenshot diganti namanya menjadi renderComplicationToBitmap (Ie0697)
- Antarmuka CanvasComplication dihapus dan digantikan oleh class CanvasComplicationDrawable terbuka. (I1f81f)
WatcfaceControlServiceFactory
telah dihapus dari API publik. (I1f8d3)- Kami telah mengganti nama
CanvasComplication.setData
menjadiCanvasComplication.loadData
. (If1239) ComplicationsManager.bringAttentionToComplication
diganti namanya menjadidisplayPressedAnimation
. (Ic4297)WatchFaceService.createWatchFace
kini memiliki anotasi@UiThread
. (Ib54c2)- Mengubah nama parameter CanvasComplicationDrawable untuk memperbaiki bug. (I50dac)
- Kami telah menambahkan
HeadlessWatchFaceClient.toBundle()
danHeadlessWatchFaceClient.createFromBundle
untuk mendukung pengirimanHeadlessWatchFaceClient
melalui AIDL. (I07c35) - HeadlessWatchFaceClient dan InteractiveWatchFaceClient kini memiliki ClientDisconnectListener dan isConnectionAlive() untuk memungkinkan Anda mengamati apakah koneksi terputus karena alasan tertentu (misalnya, tampilan jam dinonaktifkan). (Ie446d)
WatchFaceControlClient#getOrCreateWallpaperServiceBackedInteractiveWatchFaceWcsClientAsync
kini menjadi fungsi penangguhan dan diganti namanya menjadigetOrCreateInteractiveWatchFaceClient
. (Ib745d)EditorState.commitChanges
danhasCommitChanges()
diganti namanya menjadishouldCommitChanges()
. (I06e04)previewComplicationData
diganti namanya menjadipreviewComplicationsData
untuk menunjukkan (biasanya) ada lebih dari satu detail di peta. (I56c06)InteractiveWatchFaceWcsClient.bringAttentionToComplication
diganti namanya menjadidisplayPressedAnimation
agar konsisten denganComplicationsManager.displayPressedAnimation
. (Ic9999)- Semua instance ID instance tampilan jam telah dienkapsulasi dalam class WatchFaceId baru (I45fdf)
- Properti
complicationState
diganti namanya menjadicomplicationsState
untuk menunjukkan bentuk jamak. (Ided07) - Kami telah menghapus berbagai konversi Binder wear-watchface-client, yang tidak akan dibutuhkan. (Icc4c0)
- Agar konsisten,
EditorServiceClient
telah difaktorkan ulang untuk menggunakan pemroses, bukan pengamat. (Iec3a4) - Kami telah menambahkan beberapa anotasi
@Px
yang tidak ada keInteractiveWatchFaceSysUiClient
danWatchFaceControlClient
. (I3277a) - Mengganti nama EditorObserverCallback menjadi EditorObserverListener agar konsisten. (Ie572d)
- EditorState.watchFaceInstanceId dibatasi untuk API level Android R dan yang lebih baru dan tidak lagi nullable. (Id52bb)
EditorSession.launchComplicationProviderChooser
diganti namanya menjadiopenComplicationProviderChooser
. (I9d441)EditorSession.createOnWatchEditingSessionAsync
diganti namanya menjadicreateOnWatchEditingSession
dan kini menjadi fungsi penangguhan. (Id257b)- Menambahkan beberapa anotasi
@UiThread
yang tidak ada padaEditorSession
. (I6935c) UserStyleSetting.affectsLayers
diganti namanya menjadiaffectedLayers
. (I6e22b)
Versi 1.0.0-alpha10
24 Maret 2021
androidx.wear:wear-*:1.0.0-alpha10
dirilis. Versi 1.0.0-alpha10 berisi commit berikut.
Fitur Baru
- Sekarang Anda dapat membuat objek gl terbuka (mis. tekstur) selama WatchFaceService.createWatchFace karena GlesRenderer sekarang memerlukan panggilan eksplisit ke iniOpenGLContext yang dapat dilakukan di dalam createWatchFace.
Perubahan API
IdAndComplicationData
agak janggal dan telah dihapus dari API publik. Class & antarmuka yang menggunakannya telah difaktorkan ulang. (I4c928)- Kami telah mengganti
ReferenceTime
denganCountUpTimeReference
danCountDownTimeReference
yang lebih jelas. (Ib66c6) - Menambahkan beberapa anotasi
@Px
dan@ColorInt
yang hilang. (I9bbc3) Complication.complicationConfigExtras
kini tidak dapat non-nullable dan default menjadiBundle.EMPTY
. (Iad04f)GlesRenderer
kini mengharuskan Anda memanggilinitOpenGLContext
setelah selesai dibuat. Fungsi ini merupakan detail internal, tetapi sekarang berada di API publik untuk mengizinkan panggilan GL sebelumnya di dalam createWatchFace. (I726c2)- Kami telah menghapus
Complication.setRenderer
karena seharusnya tidak diperlukan. (Ie992f) Complicaiton.setComplicationBounds
tidak lagi menjadi bagian dari API publik. Jika Anda perlu menyesuaikan posisi detail, hal ini dapat dilakukan melaluiComplicationsUserStyleSetting
. (Ibd9e5)ComplicationsManager.TapCallback.onComplicationSingleTapped
diganti namanya menjadionComplicationTapped
. (I3a55c)ComplicationOutlineRenderer.drawComplicationSelectOutline
diganti namanya menjadidrawComplicationOutline
. (I14b88)
Versi 1.0.0-alpha09
10 Maret 2021
androidx.wear:wear-complications-*:1.0.0-alpha09
dan androidx.wear:wear-watchface-*:1.0.0-alpha09
dirilis. Versi 1.0.0-alpha09 berisi commit berikut ini.
Fitur Baru
- Antarmuka antara host WCS/SysUI dan di WCS/SysUI telah berkembang. Sekarang editor dapat menentukan apakah perubahan gaya akan mengaktifkan atau menonaktifkan detail (aktif = initiallyEnabled ditambah penggantian apa pun dari ComplicationsUserStyleSetting). Selain itu,
EditorService.closeEditor
memungkinkan SysUI menutup editor tampilan jam dari jarak jauh jika perlu. - Selain itu,
InteractiveWatchFaceWcsClient.setUserStyle
dengan perintah yang lebih canggihupdateInstance
yang: mengubah ID instance, menyetel gaya, dan menghapus semua detail sekaligus.
Perubahan API
- TraceEvents telah ditambahkan ke library tampilan jam. (I1a141)
ComplicationState
sekarang memiliki properti baruinitiallyEnabled
yang berguna untuk memprediksi konsekuensi penggantian gaya. (I8c905)- Kami telah mengganti
InteractiveWatchFaceWcsClient.setUserStyle
dengan perintah yang lebih canggihupdateInstance
yang: mengubah ID instance, menyetel gaya, dan menghapus detail. (Ife6f6) - API screenshot WatchFaceClient tidak lagi mengompresi screenshot karena proses tersebut berjalan lambat, kami menyerahkan pascapemrosesan ke pemanggil. (Id35af)
- Anda dapat menutup editor tampilan jam melalui
EditorService.closeEditor
dari jarak jauh. (Ic5aa4) - Menambahkan anotasi nullability (Ic16ed)
Versi 1.0.0-alpha08
24 Februari 2021
androidx.wear:wear-*:1.0.0-alpha08
dirilis. Versi 1.0.0-alpha08 berisi commit ini.
Fitur Baru
- Beberapa tampilan jam didesain dengan sekitar satu atau beberapa detail tertentu. Untuk mendukung hal ini, kami telah menambahkan Complication.Builder#setFixedComplicationProvider yang jika disetel ke benar (true) akan mencegah pengguna mengubah detail dalam slot tersebut.
- Library tampilan jam mengutamakan Kotlin dan menggunakan coroutine (mis. fungsi penangguhan). Untuk pengguna Java, kami telah menyediakan wrapper ListenableFuture untuk meningkatkan interoperabilitas di library berikut: wear/wear-watchface-guava, wear/wear-watchface-client-guava & wear/wear-watchface-editor-guava.
Perubahan API
- Kami telah menghapus dukungan untuk ketuk dua kali pada detail yang meluncurkan pemilih penyedia. Fitur ini tidak umum dalam tampilan jam dan mempersulit implementasi SysUI. (I3ef24)
- Metode ProviderInfoRetriame dapat melempar ServiceDisconnectedException jika binder tiba-tiba tertutup. (Ib2cc4)
- Dari Android 11 dan seterusnya, ada batasan kapan ProviderChooser dapat dijalankan. Selain itu, kami berharap editor dibuat dengan
wear-watchface-editor
baru sehingga ComplicationHelperActivity dihapus dari API publik. (Ib19c1) - Menghapus metode statis ComplicationText yang mendukung builder. (Ibe399)
- Kami telah memperkenalkan wrapper ListenableFuture guava untuk berbagai metode penangguhan library tampilan jam. (I16b2c)
- Untuk kejelasan API, kami telah menambahkan konstruktor sekunder ke RenderParameters yang tidak memerlukan tint, untuk digunakan dengan LayerModes selain
LayerMode.DRAW_OUTLINED
. (I497ea) - ListUserStyleSetting sebelumnya berbeda dari yang lain karena memiliki argumen default. Semua konstruktor subclass StyleSetting sekarang mengambil nilai default di akhir. (I9dbfd)
- CanvasComplication telah difaktorkan ulang untuk menggunakan metode tersembunyi, yang mempermudah implementasi subclass (I5b321)
- Kami telah memfaktorkan ulang EditorResult yang diganti dengan EditorService baru dan
EditorSession.broadcastState()
untuk melakukan streaming pembaruan pada pengamat (biasanya SysUI). (Ic4370) - Beberapa tampilan jam dibuat dengan detail tertentu sebagai bagian tak terpisahkan dari tampilan jam ketika penyedia tidak dapat dikonfigurasi pengguna. Untuk mendukung hal ini, kami telah menambahkan
Complication.Builder#setFixedComplicationProvider
. (I4509e) - EditorRequest kini menentukan nama paket, bukan ComponentName, karena SysUI kesulitan mencari nama class editor, dan kami hanya memerlukan nama paket. (Ib6814)
Versi 1.0.0-alpha07
10 Februari 2021
androidx.wear:wear-*:1.0.0-alpha07
dirilis. Versi 1.0.0-alpha07 berisi commit ini.
Fitur Baru
- WatchFaceService.createWatchFace sekarang menjadi fungsi penangguhan, yang berarti tampilan jam tidak lagi harus memblokir UI thread selagi menunggu IO. Demikian pula dengan wear-watchface-editor dan wear-complications-data
Perubahan API
- Menghapus class PhotoImage dan menggunakan Ikon secara langsung. (I8a70b)
- Mengekspos validTimeRange dari ComplicationData. (I91366)
- Membuat atribut seperti gambar menjadi lebih eksplisit. (I81700)
- wear-watchface-editor dan wear-complications-data telah difaktorkan ulang untuk menggunakan fungsi penangguhan, bukan coroutine. Rx Java & Wrapper kompatibilitas di masa mendatang yang akan diikuti. (If3c5f)
- ProviderInfoRetriever sekarang menampilkan PreviewNotAvailableException jika requestPreviewComplicationData tidak dapat menampilkan data pratinjau karena masalah koneksi atau kurangnya dukungan API. (I4964d)
- WatchFaceControlService::createWatchFaceControlClient sekarang menjadi fungsi yang ditangguhkan dan getOrCreateWallpaperServiceBackedInteractiveWatchFaceWcsClient sekarang disebut getOrCreateWallpaperServiceBackedInteractiveWatchFaceWcsClientAsync yang menampilkan
Deferred<InteractiveWatchFaceWcsClient>
. RX Java dan Wrapper kompatibilitas di masa mendatang yang akan diikuti. (I5d461) - Mengganti nama
CATEGORY_PROVIDER_CONFIG_ACTION
menjadiCATEGORY_PROVIDER_CONFIG
. (I7c068) - Perhatikan bahwa createOnWatchEditingSession sekarang menjadi fungsi yang ditangguhkan karena tampilan jam terkadang tidak tersedia hingga beberapa saat setelah aktivitas editor dimulai. (Ida9aa)
- WatchFaceService.createWatchFace sekarang menjadi fungsi penangguhan yang memungkinkan inisialisasi asinkron, sebelumnya Anda harus memblokir thread utama. (If076a)
- UserStyle sekarang memiliki operator array dan kami telah menambahkan helper transmisi untuk UserStyle.Option. (I35036)
- Kami telah memperbaiki bug marshaling dengan wireformat UserStyle yang mengubah beberapa API tersembunyi yang tidak stabil. (I8be09)
- Kami telah menambahkan CustomValueUserStyleSetting yang memungkinkan Anda menyimpan string khusus aplikasi tunggal dalam UserStyle. Editor tampilan jam default akan mengabaikan nilai ini. (Ic04d2)
- InstanceID tidak diteruskan dalam intent tambahan untuk Android WearOS versi R dan versi lama yang tidak dapat diupgrade. Untuk mendukung hal ini, sekarang kami mengizinkan InstanceID menjadi null. (Id8b78)
- EditorRequest sekarang menyertakan editor ComponentName yang ditetapkan sebagai komponen di WatchFaceEditorContract.createIntent (I3cd06)
- Tampilan jam EditorResult sekarang menyertakan pratinjau ComplicationData untuk memungkinkan pemanggil mengambil screenshot tampilan jam setelah diedit. (I2c561)
Perbaikan Bug
- Menambahkan penggantian toString() ke UserStyle, UserStyleSetting, dan UserStyleSchema yang membuat penggunaan class ini menjadi sedikit lebih baik. (I9f5ec)
Versi 1.0.0-alpha06
27 Januari 2021
androidx.wear:wear-*:1.0.0-alpha06
dirilis. Versi 1.0.0-alpha06 berisi commit ini.
Fitur Baru
- Kami telah memperkenalkan library wear/wear-watchface-editor baru yang memungkinkan developer tampilan jam dan calon OEM membuat editor gaya dan detail. SysUI akan mengirimkan Intent ke tampilan jam yang akan menggunakan class EditorSession yang baru untuk mengakses detail WatchFace dan mencatat hasilnya melalui Activity.setWatchRequestResult. Untuk mendukung ini, kami telah menambahkan ProviderInfoRetriever.requestPreviewComplicationData yang memungkinkan editor tampilan jam meminta pratinjau ComplicationData. Manfaat pratinjau ComplicationData tidak seperti data live, Anda tidak perlu khawatir untuk menunjukkan dialog izin saat melakukan rendering editor (catatan: jika pengguna memilih penyedia dengan izin, mereka akan tetap diminta untuk memberikan izin tersebut).
Perubahan API
- ComplicationProviderInfo sekarang memiliki kolom untuk ComponentName penyedia, dukungan untuk kolom ini akan ditambahkan ke WearOS di masa mendatang dan untuk sementara waktu akan berupa null. (Id8fc4)
- Kami telah menambahkan ProviderInfoRetriever.requestPreviewComplicationData yang memungkinkan editor tampilan jam meminta pratinjau ComplicationData. Hal ini berguna karena detail live mungkin memerlukan izin dan Anda sekarang dapat menampilkan data pratinjau untuk detail yang tidak aktif. (I2e1df)
- ComplicationManager sekarang menjadi parameter opsional konstruktor WatchFace dan argumennya telah diurutkan ulang untuk memungkinkan hal ini. (I66c76)
- Kami telah menambahkan Paket opsional ke Complications yang jika disetel akan bergabung dengan intent yang dikirimkan untuk meluncurkan aktivitas pemilih penyedia. (Ifd4ad)
- Kami telah menambahkan library
wear-watchface-editor
baru untuk didukung pada editor yang dihosting oleh SysUI atau tampilan jam. SysUI akan meluncurkan editor ini dengan mengirimkan intent. Layanan aktivitas tampilan jam dapat menggunakan class EditorSession baru untuk mengakses detail WatchFace dan mencatat hasilnya melalui Activity.setWatchRequestResult. (I2110d) - LayerMode.DRAW_HIGHLIGHTED sekarang disebut LayerMode.DRAW_OUTLINED dan RenderParameters.highlightComplicationId sekarang disebut RenderParameters.selectedComplicationId yang memperjelas detail tertentu selain garis besar. (I90a40)
- WatchFaceControlClient.getOrCreateWallpaperServiceBackedInteractiveWatchFaceWcsClient di masa mendatang kini dapat di-resolve dengan ServiceStartFailureException jika layanan mati saat menunggu tampilan jam dibuat. (I0f509)
- EditorSession.complicationPreviewData sekarang menjadi ListenableFuture karena pengambilan data ini adalah proses yang asinkron. (Iead9d)
Perbaikan Bug
- Kami menghapus kolom yang tidak digunakan dari ComplicationOverlay yang dibiarkan aktif dan complicationBounds. (I17b71)
Versi 1.0.0-alpha05
13 Januari 2021
androidx.wear:wear-*:1.0.0-alpha05
dirilis. Versi 1.0.0-alpha05 berisi commit ini.
Fitur Baru
Tampilan jam sering kali mendukung sejumlah konfigurasi detail dengan berbagai detail yang ditampilkan. Untuk memudahkan penyiapan ini, kini kami mendukung detail yang awalnya dinonaktifkan dengan memanggil setEnabled(false) pada builder. Detail dapat diaktifkan nanti melalui ComplicationsUserStyleSetting.
Perubahan API
- ComplicationHelperActivity kini menerima
Collection<ComplicationType>
daripada array int sehingga lebih mudah digunakan. (I1f13d) ProviderInfoRetriever.retrieveProviderInfo
sekarang menampilkanListenableFuture<ProviderInfo[]>
dengan benar. (If2710)- Anda kini dapat membuat detail yang awalnya dinonaktifkan dengan memanggil setEnabled(false) pada builder. (Idaa53)
- WatchFaceState sekarang memiliki properti isHeadless yang hanya berlaku untuk instance headless. (Ifa900)
- ComplicationDrawable sekarang mendukung pemuatan sinkron drawable secara opsional. Ini digunakan oleh API screenshot. (I34d4a)
Versi 1.0.0-alpha04
16 Desember 2020
androidx.wear:wear-*:1.0.0-alpha04
dirilis. Versi 1.0.0-alpha04 berisi commit ini.
Fitur Baru
- Library tampilan jam wear sekarang mendukung setelan batas per jenis. Misalnya, Anda dapat beralih ke kotak pembatas lebar untuk ComplicationType.LONG_TEXT, sedangkan kotak pembatas yang lebih kecil digunakan untuk jenis lain.
Perubahan API
- Detail sekarang menggunakan ComplicationBounds yang menggabungkan
Map<ComplicationType, RectF>
untuk mendukung per ukuran jenis detail. (I1ebe7) - RenderParameter kini memungkinkan Anda menentukan tint sorotan untuk digunakan dalam screenshot. (Iff42b)
- Dengan pengecualian batas, kini Anda harus menggunakan ComplicationsUserStyleSetting untuk memodifikasi detail, hal ini untuk memastikan OS tetap sinkron. (I8dc5d)
- Renderer sekarang menjadi class tertutup. Ini berarti CanvasRenderer dan GlesRenderer sekarang menjadi class dalam Renderer. (Iab5d4, b/173803230)
- CanvasComplicationDrawable.drawHighlight diganti namanya menjadi drawOutline. ObserverWatchData kini memiliki beberapa anotasi UiThread yang hilang. ScreenState sekarang dihapus sepenuhnya dari WatchState. (If1393)
- API level minimum untuk wear-watchface sekarang adalah 25. Perhatikan bahwa dukungan kanvas hardware memerlukan API level 26 atau yang lebih tinggi. (Ic9bbd)
- InteractiveWatchFaceWcsClient kini memiliki helper getComplicationIdAt. (I05811)
- API level untuk wear-watchface-client telah dikurangi menjadi 25, namun API screenshot memerlukan API level 27. (Id31c2)
Perbaikan Bug
- Kita sekarang mengekspos ComplicationType dari ComplicationData detail saat ini di ComplicationState. (I9b390)
- InteractiveWatchFaceWcs kini memiliki metode `bringAttentionToComplication untuk menandai secara singkat detail yang ditentukan. (I6d31c)
InteractiveWatchFaceWcsClient#setUserStyle
sekarang memiliki kelebihan beban dalam menerima Map <string, string=""> yang berpotensi dapat menghindari perjalanan pulang pergi IPC tambahan yang diperlukan untuk membuat UserStyle. (I24eec)</string,>
Versi 1.0.0-alpha03
2 Desember 2020
androidx.wear:wear-*:1.0.0-alpha03
dirilis. Versi 1.0.0-alpha03 berisi commit ini.
Fitur Baru
Class Complication sekarang memiliki properti complicationData yang memungkinkan tampilan jam mengamati perubahan ComplicationData. Hal ini memungkinkan untuk mengubah dimensi detail berdasarkan jenis detail.
Kecepatan frame variabel sekarang didukung dengan menetapkan ke Renderer.interactiveDrawModeUpdateDelayMillis. Untuk tampilan jam yang menjalankan animasi pendek setiap detik, hal ini bisa menyebabkan penghematan daya yang baik dengan beralih ke mode tidur ketika tidak menganimasikan.
Perubahan API
BACKGROUND_IMAGE
telah diganti namanya menjadiPHOTO_IMAGE
bersama dengan class terkait. Tipe detail ini tidak digunakan secara eksklusif untuk latar belakang, karena itu namanya diganti. (I995c6)- DefaultComplicationProviderPolicy dianotasi dengan benar menggunakan IntDefs. (I3b431)
- Class TimeDependentText tersembunyi tidak lagi ditampilkan melalui ContentDescriptionLabel, sebagai gantinya kami menambahkan pengakses untuk mendapatkan teks pada waktu yang ditentukan. (Ica692)
- Konstruktor ObservableWatchData sekarang menjadi internal. (I30121, b/173802666)
- Complication sekarang memiliki complicationData yang memungkinkan tampilan jam mengamati perubahan ComplicationData. Complication juga memiliki panggilan isActiveAt baru yang dapat digunakan untuk mengetahui apakah ada yang harus dirender pada tanggal waktu yang disediakan. (Ic0e2a)
SharedMemoryImage
yang kosong sudah tidak ada lagi di API publik. (I7ee17)WatchFace.overridePreviewReferenceTimeMillis
kini memiliki anotasi IntRange dan pengambil dan penyetel memiliki nama yang konsisten. (Ia5f78)Complication.Builder
sekarang dibuat melaluiComplication.createRoundRectComplicationBuilder
atauComplication.createBackgroundComplicationBuilder
agar lebih jelas (I54063)- Menambahkan WatchFace.TapListener yang memungkinkan ketuk yang tidak digunakan oleh detail dapat dilihat oleh WatchFace. (Ic2fe1, b/172721168)
- WatchFace sekarang mendukung kecepatan frame variabel dengan menetapkan ke
Renderer.interactiveDrawModeUpdateDelayMillis
. Hal ini dapat membantu menghemat masa pakai baterai dengan tidur saat tidak menganimasi. (I707c9) - WatchFace.Builder tidak lagi diperlukan dan invalidate() dan interactiveUpdateRateMillis telah dipindahkan ke Renderer. (I329ea)
- Untuk interoperabilitas Java yang lebih baik, pengambil diganti namanya untuk properti boolean di WatchState (I6d2f1)
- Mengganti nama TapListener menjadi TapCallback dan InvalidateCallback menjadi InvalidateListener untuk konsistensi. (I9414e)
- Opsi gaya tampilan jam Wear 2.0 telah dipindahkan ke class-nya sendiri untuk kejelasan. Penyetel WatchFace.Builder sekarang memiliki pengambil class WatchFace simetris. (Iefdfc)
- Menambahkan InteractiveWatchFaceWcsClient dan
WatchFaceControlClient.getOrCreateWallpaperServiceBackedInteractiveWatchFaceWcsClient
yang mendapatkan instance yang ada atau membuatnya setelah layanan wallpaper tersambung dan membuat mesin. (Id666e) - WatchFaceControlClient sekarang menjadi antarmuka untuk memungkinkan pengujian memalsukannya. (I875d9)
- HeadlessWatchFaceClient, InteractiveWatchFaceSysUiClientImpl, InteractiveWatchFaceWcsClient sekarang menjadi antarmuka untuk memudahkan pengujian. (I7cdc3)
- Menambahkan anotasi ke metode di
wear-watchface-complications-rendering
(I0d65c)
Perbaikan Bug
- Menghapus bentuk layar dari DeviceConfig, yang menduplikasi
android.content.res.Configuration#isScreenRound()
(Ifadf4) - Mengubah
WatchFaceControlClient.getOrCreateWallpaperServiceBackedInteractiveWatchFaceWcsClient
untuk menerimaMap<String, String>
, bukanUserStyle
, karena sulit membuatUserStyle
tanpa mengetahui skema yang hanya bisa Anda dapatkan setelah klien dibuat. (Iea02a) - Memperbaiki
InteractiveWatchFaceWcsClient
untuk menggunakanComplicationState
, bukan format berkabel. (Icb8a4) UserStyleSettings
kini menjadi class tertutup karena editor tampilan jam hanya memahami class bawaan. (I2d797)
Versi 1.0.0-alpha02
11 November 2020
androidx.wear:wear-*:1.0.0-alpha02
dirilis. Versi 1.0.0-alpha02 berisi commit ini.
Perubahan API
ComplicationDetails
kini disebutComplicationState
dan digabungkan dengan benar serta penggunaan dukungan wearable@ComplicationData.ComplicationType
telah dimigrasikan keComplicationType
androidx. (I4dd36)- Menambahkan parameter
highlightedComplicationId
opsional ke RenderParameters yang memungkinkan Anda meminta penyorotan satu detail dalam screenshot. (I66ce9) ComplicationProviderService
untuk menggunakan API detail gaya baru agar konsisten (Id5aea)getPreviewReferenceTimeMillis
kini mendapatkan waktu referensi dariDeviceConfig
. (I779fe)- Menyederhanakan platform Renderer API, dapat menggunakan
SurfaceHolder.Callback
untuk mengamati perubahan sebagai gantinya. (I210db) CanvasComplicationRenderer
tidak diperpanjang dariRenderer
, dan namanya diganti agar lebih jelas. (Ibe880)
Perbaikan Bug
- Versi pertama
androidx.wear:wear-watchface-client
(I1e35e) - Mengubah nama
GlesTextureComplication#renderer
agar lebih jelas (Ib78f7) - Mengganti nama
StyleCategory
menjadiStyleSetting
agar lebih jelas (I488c7) - Menambahkan
UserStyleSchema
agar API lebih rapi (If36f8)
Versi 1.0.0-alpha01
28 Oktober 2020
androidx.wear:wear-complications-*:1.0.0-alpha01
dan androidx.wear:wear-watchface-*:1.0.0-alpha01
dirilis. Versi 1.0.0-alpha01 berisi commit ini.
Perubahan API
- Menghapus beberapa hal yang tidak ingin kami tampilkan di API publik. (I41669)
- Membuat library
androidx.wear:wear-complications-provider
. (I77f1f) - ComplicationsUserStyleCategory adalah kategori baru yang direkomendasikan untuk mengonfigurasi detail (I96909)
- Menambahkan wear-complication-data API. (I7c268)
- Fungsi dengan nilai pengembalian boolean akan diawali dengan "is", bukan "get" (If36ff)
- Saran API adalah untuk menghindari penggunaan dilindungi sehingga class ini telah difaktorkan ulang untuk mengambil parameter melalui konstruktor. (I61644)
- Mengganti nama setBackgroundComplication agar jelas. (I96fe3)
- Menggunakan properti Kotlin untuk ComplicationDrawable isHighlighted & data (I4dcc8)
- Sebagai ganti ComplicationRenderer.InvalidateCallback, kami menambahkan Complication#invalidate() (I4f4c6)
- API ini tidak digunakan lagi di WearableSupport dan dihapus di sini. (Ib425c)
- Mengganti nama beberapa metode builder WatchFace untuk menekankan sifat lama Wear 2.0. (Idb775)
- Kandidat API beta pertama untuk wear/wear-watchface (Id3981)
- Versi API pertama yang dipantau. (Ie9fe6)
- Menyembunyikan ComplicationDrawable.BorderStyle IntDef dengan benar dan memindahkan ke ComplicationStyle agar konsisten. (I27f7a)
- Menambahkan anotasi yang tidak ada untuk metode ComplicationStyle (I838fd)
- Library ini tidak memiliki platform API publik (I88e2b)
- Semua class Opsi kategori gaya kini sudah final dengan benar. (Ib8323)
- Versi API pertama yang dipantau. (I27c85)
Perbaikan Bug
- Mengubah ComplicationProviderService agar memiliki metode getComplicationPreviewData eksplisit. (I4905f)
- Pemeriksaan lint API untuk MissingGetterMatchingBuilder diaktifkan untuk androidx (I4bbea, b/138602561)
- Mengganti nama wear-complications-rendering. (Ifea02)
- Nama tampilan kategori gaya kini adalah CharSequences (I28990)
- Mengganti Override dengan Overlay untuk mencocokkan konvensi penamaan tema & gaya saat ini. (I4fde9)
- Mengganti nama UserStyle#getOptions agar jelas. (I695b6)
Versi 1.2.0
Versi 1.2.0
15 September 2021
androidx.wear:wear:1.2.0
dirilis. Versi 1.2.0 berisi commit ini.
Perubahan penting sejak 1.1.0
Menambahkan komponen CurvedText untuk memudahkan penulisan teks melengkung mengikuti kelengkungan lingkaran terbesar yang dapat dicetak dalam tampilan. Contoh penggunaan:
<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" />
Menambahkan penampung ArcLayout untuk menata letak elemen turunannya satu per satu pada lengkungan baik searah maupun berlawanan arah jarum jam. Turunannya dapat berupa widget Android standar atau widget "melengkung" yang mengimplementasikan antarmuka
ArcLayout.Widget
. (I536da) Contoh penggunaan:<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>
Menambahkan penampung tata letak baru DismissableFrameLayout, yang menangani tombol kembali untuk menutup dan/atau geser untuk menutup, yang ditujukan untuk digunakan dalam aktivitas. Setidaknya satu pemroses harus ditambahkan untuk menindak tindakan penutupan. Pemroses biasanya akan menghapus tampilan yang memuat atau fragmen dari aktivitas saat ini. setSwipeDismissable(boolean) & setBackButtonDismissable(boolean) disediakan untuk kontrol langsung pada fitur. Tata letak baru ini dimaksudkan untuk menggantikan SwipeDismissFrameLayout yang ada.
Penambahan dukungan untuk menunjukkan bahwa Aktivitas dapat "dilanjutkan otomatis" saat perangkat keluar dari mode standby di class AmbientModeSupport. Fungsionalitas ini sebelumnya tersedia di class WearableActivity dari WearableSupportLibrary yang tidak digunakan lagi. (I336ab)
Memigrasikan class WearableCalendarContract dari Support Library perangkat Wearable. API ini memberikan sebuah subset data yang tersedia melalui CalendarContract, tetapi disinkronkan otomatis ke perangkat wearable. (I6f2d7)
Menambahkan API
WearTypeHelper
baru diandroidx.wear.utils
untuk menentukan apakah perangkat Wear yang diberikan adalah untuk China. (Ib01a9)Menambahkan fitur aksesibilitas ke
androidx.wear.widget.ConfirmationOverlay
yang akan membacakan pesan jika disetel diikuti dengan deskripsi animasi. (I524dd)Memperbaiki bug yang menyebabkan ConfirmationActivity error jika tidak ada pesan yang diberikan. (Ie6055)
Memperbaiki bug saat men-scroll RecyclerView secara horizontal menyebabkan
WearableDrawerLayout
melihat sekilas semua interaksi. (I24c7f)
Versi 1.2.0-rc01
1 September 2021
androidx.wear:wear:1.2.0-rc01
dirilis tanpa perubahan sejak versi beta terakhir. Versi 1.2.0-rc01 berisi commit berikut ini.
Versi 1.2.0-beta01
18 Agustus 2021
androidx.wear:wear:1.2.0-beta01
dirilis. Versi 1.2.0-beta01 berisi commit berikut ini.
Perbaikan Bug
- Memperbaiki bug yang menyebabkan ConfirmationActivity menjadi error jika tidak ada pesan yang diberikan. (Ie6055)
Versi 1.2.0-alpha13
4 Agustus 2021
androidx.wear:wear:1.2.0-alpha13
dirilis. Versi 1.2.0-alpha13 berisi commit ini.
Perubahan API
- Mengganti nama
WearTypeHelper.isChinaDevice
menjadiWearTypeHelper.isChinaBuild
. (I47302)
Perbaikan Bug
- Kami telah menambahkan fitur aksesibilitas ke
androidx.wear.widget.ConfirmationOverlay
yang akan membacakan pesan jika disetel dan diikuti dengan deskripsi animasi. (I524dd)
Versi 1.2.0-alpha12
21 Juli 2021
androidx.wear:wear:1.2.0-alpha12
dirilis. Versi 1.2.0-alpha12 berisi commit berikut ini.
Perubahan API
- Kami telah menambahkan API
WearTypeHelper
baru diandroidx.wear.utils
untuk menentukan apakah perangkat Wear yang diberikan adalah untuk China. (Ib01a9)
Versi 1.2.0-alpha11
30 Juni 2021
androidx.wear:wear:1.2.0-alpha11
dirilis. Versi 1.2.0-alpha11 berisi commit berikut ini.
Perbaikan Bug
- Memperbaiki bug saat men-scroll RecyclerView secara horizontal menyebabkan
WearableDrawerLayout
melihat sekilas semua interaksi. (I24c7f)
Versi 1.2.0-alpha10
2 Juni 2021
androidx.wear:wear:1.2.0-alpha10
dirilis. Versi 1.2.0-alpha10 berisi commit berikut.
Fitur Baru
- Alpha10 meningkatkan dukungan aksesibilitas di Curved Text dan ArcLayout. Hal ini juga menambahkan beberapa penggantian nama kecil di DismissibleFrameLayout untuk membantu memperjelas API.
Perubahan API
- Kami telah mengganti nama metode berikut di
DismissibleFrameLayout
(Ib195e):Callback#onDismissed
->Callback#onDismissedFinished
isSwipeDismissible
->isDismissableBySwipe
isBackButtonDismissible
->isDismissableByBackButton
- Kami telah membuat metode berikut sebagai versi final (Ib195e):
setBackButtonDismissible
setSwipeDismissible
registerCallback
unregisterCallback
Perbaikan Bug
- Menggunakan konten CurvedTextView pada Talkback. (I05798)
- Aksesibilitas yang lebih baik untuk tampilan normal di ArcLayout. (I4418d)
Versi 1.2.0-alpha09
18 Mei 2021
androidx.wear:wear:1.2.0-alpha09
dirilis. Versi 1.2.0-alpha09 berisi commit berikut ini.
Perubahan API
- Menambahkan fungsi baru
CurvedTextView.setTypeface()
(mirip denganTextView
), untuk menetapkan jenis font teks dan gaya tebal/miring. (I4653c) - Mengganti nama
WearArcLayout
menjadiArcLayout
,WearCurvedText
menjadiCurvedText
, danWearArcLayout.ArcLayoutWidget
menjadiArcLayout.Widget
. (I6e5ce)- Pada
ArcLayout.Widget
, mengganti namagetThicknessPx
menjadigetThickness
. - Konstanta perataan vertikal di
ArcLayout.LayoutParams
sekarang diberi nama yang dimulai denganVERTICAL_ALIGN_
(sebelumnyaVALIGN_
)
- Pada
- Pada
CurvedTextView
, metodesetMinSweepDegrees
dansetMaxSweepDegrees
diganti dengansetSweepRangeDegrees
(I7a9d9)
Versi 1.2.0-alpha08
5 Mei 2021
androidx.wear:wear:1.2.0-alpha08
dirilis. Versi 1.2.0-alpha08 berisi commit ini.
Perubahan API
- Untuk meningkatkan kejelasan kode, kami menambahkan anotasi
@FloatRange
ke beberapa parameter sudut dan jenis nilai yang ditampilkan. (I430dd) - Pada antarmuka
WearArcLayout.ArcLayoutWidget
, metodeinsideClickArea
sekarang disebut isPointInsideClickArea. (Ia7307)
Versi 1.2.0-alpha07
24 Maret 2021
androidx.wear:wear:1.2.0-alpha07
dirilis. Versi 1.2.0-alpha07 berisi commit berikut ini.
Perbaikan Bug
- Memperbaiki error pada turunan non-curved di dalam WearArcLayout yang disebabkan oleh penggunaan ukuran layar dengan tinggi lebih besar dari lebar. Turunan non-curved ini sekarang ditempatkan dengan benar di dalam lengkungan di semua jenis layar.
Versi 1.2.0-alpha06
27 Januari 2021
androidx.wear:wear:1.2.0-alpha06
dirilis. Versi 1.2.0-alpha06 berisi commit ini.
Perubahan API
- Memigrasikan library Ongoing Activities ke sub-library baru: wear-ongoing. Class sekarang berada di paket androidx.wear.ongoing (sebelumnya androidx.wear.ongoingactivities) (I7c029)
- Memigrasikan class WearableCalendarContract dari Wearable Support Library ke AndroidX. API ini memberikan sebuah subset data yang tersedia melalui CalendarContract, tetapi disinkronkan otomatis ke perangkat wearable. (I6f2d7)
Perbaikan Bug
- Menonaktifkan fitur tutup tombol kembali secara default di FrameLayout yang Dapat Ditutup karena geser-untuk-tutup tetap menjadi cara utama untuk membuka kembali layar penuh pada perangkat Wearable (Ic24e3)
- Memperbaiki beberapa masalah dalam menangani visibilitas anak pada WearArcLayout (Icf912)
Versi 1.2.0-alpha05
13 Januari 2021
androidx.wear:wear:1.2.0-alpha05
dirilis. Versi 1.2.0-alpha05 berisi commit ini.
Perbaikan Bug
- Mengupdate javadoc class AmbientModeSupport untuk menyediakan cuplikan contoh guna menunjukkan penggunaan umum class ini dengan lebih baik.
Versi 1.2.0-alpha04
16 Desember 2020
androidx.wear:wear:1.2.0-alpha04
dirilis. Versi 1.2.0-alpha04 berisi commit ini.
Perubahan API
- Penambahan dukungan untuk menunjukkan bahwa Aktivitas dapat "dilanjutkan otomatis" saat perangkat keluar dari mode standby di class AmbientModeSupport. Fungsionalitas ini sebelumnya tersedia di class WearableActivity dari WearableSupportLibrary yang tidak digunakan lagi. (I336ab)
- OngoingActivity
- Kategori sekarang dapat disetel saat membuat OngoingActivity, misalnya
OngoingActivitiy.Builder.getCategory(String)
- OngoingActivityData kini memiliki stempel waktu saat OngoingActivity dibuat -
OngoingActivityData.getTimestamp()
- (I91cb4)
- Kategori sekarang dapat disetel saat membuat OngoingActivity, misalnya
- Penambahan dukungan untuk menetapkan margin pada turunan WearArcLayout dengan mengubah parameter tata letak untuk memperluas MarginLayoutParams, yaitu WearArcLayout.LayoutParams memperluas android.view.ViewGroup.MarginLayoutParams. (I2cd88)
- Mengubah jenis default anchor WearCurvedTextView menjadi
WearArcLayout.ANCHOR_CENTER
(sebelumnyaWearArcLayout.ANCHOR_START
). Ini akan menyederhanakan kontrak antara tata letak lengkung dan teks melengkung karena teks melengkung secara default akan menggambar dirinya sendiri berpusat x di bagian atas, dan tata letak lengkung induk dapat memutarnya ke tempat yang seharusnya. (I105ff)
Versi 1.2.0-alpha03
2 Desember 2020
androidx.wear:wear:1.2.0-alpha03
dirilis. Versi 1.2.0-alpha03 berisi commit ini.
Fitur Baru
Penampung tata letak baru DismissableFrameLayout, yang menangani tombol kembali untuk menutup dan/atau geser untuk menutup, yang ditujukan untuk digunakan dalam aktivitas. Setidaknya satu pemroses harus ditambahkan untuk menindak tindakan penutupan. Pemroses biasanya akan menghapus tampilan yang memuat atau fragmen dari aktivitas saat ini. setSwipeDismissable(boolean) & setBackButtonDismissable(boolean) disediakan untuk kontrol langsung pada fitur. Tata letak baru ini dimaksudkan untuk menggantikan SwipeDismissFrameLayout yang ada.
Widget melengkung sekarang menangani peristiwa sentuh. Widget normal di dalam WearArcLayout akan menerima semua peristiwa sentuh, dipetakan ke ruang koordinatnya. WearCurvedTextView (di dalam WearArcLayout atau tidak) dapat menetapkan pengendali onClick dan onLongClick.
Class aktivitas yang sedang berlangsung sekarang menjadi VersionedParcelables, bukan menggunakan serialisasi/deserialisasi kustom. Ikon statis dan intent sentuh kini diperlukan.
Perubahan API
- Atribut "sweepDegrees" untuk WearCurvedTextView dipisahkan menjadi minSweepDegrees dan maxSweepDegrees untuk memberikan tata letak widget yang lebih fleksibel.
Versi 1.2.0-alpha02
11 November 2020
androidx.wear:wear:1.2.0-alpha02
dirilis. Versi 1.2.0-alpha02 berisi commit ini.
Rilis ini menambahkan "Ongoing Activities API" baru untuk pertama kalinya. API ini dapat digunakan oleh developer untuk menandakan bahwa aktivitas yang berjalan lama, seperti olahraga kebugaran atau sesi pemutaran media sedang berlangsung. API ini memungkinkan developer memberikan pembaruan status berkala seperti “jarak dan waktu berlari” atau “lagu yang diputar saat ini” untuk ditampilkan di tampilan jam atau di peluncur aplikasi. Fungsi ini ditargetkan pada perangkat mendatang yang mengaktifkan fungsi aktivitas yang sedang berlangsung.
Perubahan API
- API baru untuk Aktivitas yang Sedang Berjalan, ini adalah lingkungan tanpa pengoperasian pada "perangkat yang tidak didukung". (I69a31)
Versi 1.2.0-alpha01
28 Oktober 2020
androidx.wear:wear:1.2.0-alpha01
dirilis. Versi 1.2.0-alpha01 berisi commit ini.
Fitur Baru
- Menambahkan komponen WearCurvedTextView untuk memudahkan penulisan teks melengkung mengikuti kelengkungan lingkaran terbesar yang dapat dicetak dalam tampilan. Contoh penggunaan:
<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"
/>
- Menambahkan container WearArcLayout untuk menata letak elemen turunannya satu per satu pada lengkungan baik searah maupun berlawanan arah jarum jam. Turunannya dapat berupa widget android standar atau widget "melengkung" yang mengimplementasikan antarmuka ArcLayoutWidget. Contoh penggunaan:
<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
Versi 1.2.0-alpha02
29 September 2021
androidx.wear:wear-input:1.2.0-alpha02
dan androidx.wear:wear-input-testing:1.2.0-alpha02
dirilis. Versi 1.2.0-alpha02 berisi commit ini.
Perubahan API
- Mengganti nama
disallowEmoji
menjadisetEmojisAllowed
diWearableRemoteInputExtender
yang akan digunakan untuk menyetel apakah opsi untuk menggambar emoji akan ditampilkan. (I28393)
Versi 1.2.0-alpha01
15 September 2021
androidx.wear:wear-input:1.2.0-alpha01
dan androidx.wear:wear-input-testing:1.2.0-alpha01
dirilis. Versi 1.2.0-alpha01 berisi commit ini.
Perubahan API
- Mengekspos semua konstanta lokasi tombol dari
WearableButtons
. (Ibb12c) - Menambahkan class
WearableRemoteInputExtender
yang dapat digunakan untuk memberikan tambahan khusus Wear ke android.app.RemoteInput. (I01903)
Wear-Input 1.1.0
Versi 1.1.0
18 Agustus 2021
androidx.wear:wear-input:1.1.0
dan androidx.wear:wear-input-testing:1.1.0
dirilis. Versi 1.1.0 berisi commit ini.
Perubahan penting sejak versi 1.0.0
- Menambahkan
RemoteInputIntentHelper
.- Class ini dapat digunakan untuk membuat Intent RemoteInput. Intent ini kemudian dapat digunakan untuk meminta input dari pengguna dalam aktivitas yang dapat disesuaikan.
Versi 1.1.0-rc01
4 Agustus 2021
androidx.wear:wear-input:1.1.0-rc01
dan androidx.wear:wear-input-testing:1.1.0-rc01
dirilis. Versi 1.1.0-rc01 berisi commit berikut ini.
Tidak ada Perubahan API sejak androidx.wear:wear-input:1.1.0-beta01
dan androidx.wear:wear-input-testing:1.1.0-beta01
Versi 1.1.0-beta01
21 Juli 2021
androidx.wear:wear-input:1.1.0-beta01
dan androidx.wear:wear-input-testing:1.1.0-beta01
dirilis tanpa perubahan sejak 1.1.0-alpha03
. Versi 1.1.0-beta01 berisi commit berikut ini.
Versi 1.1.0-alpha03
30 Juni 2021
androidx.wear:wear-input:1.1.0-alpha03
dan androidx.wear:wear-input-testing:1.1.0-alpha03
dirilis. Versi 1.1.0-alpha03 berisi commit ini.
Perbaikan Bug
- Memperbaiki bug yang menyebabkan intent RemoteInput, yang telah ditambahkan
RemoteInput
ke dalamnya melaluiRemoteInputHelper.putRemoteInputsExtra
, ditolak.
Versi 1.1.0-alpha02
18 Mei 2021
androidx.wear:wear-input:1.1.0-alpha02
dan androidx.wear:wear-input-testing:1.1.0-alpha02
dirilis. Versi 1.1.0-alpha02 berisi commit berikut ini.
Perubahan API
- Metode
RemoteInputIntentHelper
yang digunakan untuk mendapatkan atau menempatkan tambahan yang mewakili label judul, batal, konfirmasikan, dan sedang diproses kini menggunakanCharSequence
, bukanString
untuk label ini. (I0e71f)
Versi 1.1.0-alpha01
27 Januari 2021
androidx.wear:wear-input:1.1.0-alpha01
dan androidx.wear:wear-input-testing:1.1.0-alpha01
dirilis. Versi 1.1.0-alpha01 berisi commit ini.
Perubahan API
- Memigrasikan class RemoteInputIntent dari Wearable Support Library ke AndroidX. Class yang dimigrasikan berganti nama menjadi RemoteInputIntentHelper yang menyediakan fungsi bantuan untuk input remote pendukung melalui memulai intent. (I47cee)
Wear-Input 1.0.0
Versi 1.0.0
2 Desember 2020
androidx.wear:wear-input:1.0.0
dan androidx.wear:wear-input-testing:1.0.0
dirilis. Versi 1.0.0 berisi commit ini.
Rilis ini sama persis dengan 1.0.0-rc01
.
Fitur utama 1.0.0
Migrasi fungsi WearableButtons dari Wearable Support Library ke Jetpack.
Menambahkan
androidx.wear.input.test.TestWearableButtonsProvider
yang mengimplementasikanandroidx.wear.input.WearableButtonsProvider
untuk membantu menguji aplikasi yang dikembangkan dengan libraryandroidx.wear:wear-input
.
Versi 1.0.0-rc01
11 November 2020
androidx.wear:wear-input:1.0.0-rc01
dan androidx.wear:wear-input-testing:1.0.0-rc01
dirilis. Versi 1.0.0-rc01 berisi commit ini.
Rilis ini sama persis dengan 1.0.0-beta01
.
Versi 1.0.0-beta01
28 Oktober 2020
androidx.wear:wear-input:1.0.0-beta01
dan androidx.wear:wear-input-testing:1.0.0-beta01
dirilis tanpa perubahan sejak 1.1.0-alpha01
. Versi 1.0.0-beta01 berisi commit ini.
Wear-Input-Testing Versi 1.0.0-alpha01
14 Oktober 2020
androidx.wear:wear-input-testing:1.0.0-alpha01
dirilis. Versi 1.0.0-alpha01 berisi commit ini.
Perubahan API
- Menambahkan
androidx.wear.input.test.TestWearableButtonsProvider
yang mengimplementasikanandroidx.wear.input.WearableButtonsProvider
untuk membantu menguji aplikasi yang dikembangkan dengan libraryandroidx.wear:wear-input
. (I0ed0c)
Wear-Input Versi 1.0.0-alpha01
2 September 2020
androidx.wear:wear-input:1.0.0-alpha01
dirilis. Versi 1.0.0-alpha01 berisi commit ini.
Fitur Baru
Migrasi fungsi WearableButtons dari Wearable Support Library ke Jetpack. Dukungan pengujian tambahan akan disediakan dalam library androidx.wear:wear-input-testing
pada rilis Jetpack berikutnya.
Versi 1.1.0
Versi 1.1.0
14 Oktober 2020
androidx.wear:wear:1.1.0
dirilis. Versi 1.1.0 berisi commit ini.
Perubahan utama sejak versi 1.0.0
- Menambahkan awalan
layout_
ke atribut boxedEdges (kinilayout_BoxedEdges
) untukBoxInsetLayout
guna mematuhi konvensi penamaan Android. Ini akan menghapus error linter di Android Studio untuk atribut ini. (I4272f) - Menambahkan
EXTRA_ANIMATION_DURATION_MILLIS
opsional keConfirmationActivity
untuk mengizinkan durasi yang ditampilkan dialog konfirmasi. (adb83ce, b/143356547) - Memperbarui
WearableActionDrawView
untuk menunda kemunculan panel tindakan sampai panel terbuka untuk kali pertama. (I01026, b/163870541)
Versi 1.1.0-rc03
2 September 2020
androidx.wear:wear:1.1.0-rc03
dirilis. Versi 1.1.0-rc03 berisi commit ini.
Perbaikan Bug
- Memperbaiki masalah Panel Tindakan yang tidak menampilkan konten saat dibuka. (I01026, b/163870541)
Versi 1.1.0-rc02
24 Juni 2020
androidx.wear:wear:1.1.0-rc02
dirilis. Versi 1.1.0-rc02 berisi commit ini.
Perbaikan Bug
- Menambahkan awalan
layout_
ke atribut boxedEdges (kinilayout_boxedEdges
) untukBoxInsetLayout
guna mematuhi konvensi penamaan Android. Ini akan menghapus error linter di Android Studio untuk atribut ini.
Versi 1.1.0-rc01
14 Mei 2020
androidx.wear:wear:1.1.0-rc01
dirilis tanpa perubahan sejak .1.0-beta01
. Versi 1.1.0-rc01 berisi commit ini.
Versi 1.1.0-beta01
29 April 2020
androidx.wear:wear:1.1.0-beta01
dirilis tanpa perubahan sejak androidx.wear:wear:1.1.0-alpha01
. Versi 1.3.0-beta01 berisi commit berikut ini.
Versi 1.1.0-alpha01
15 April 2020
androidx.wear:wear:1.1.0-alpha01
dirilis. Versi 1.1.0-alpha01 berisi commit ini.
Perubahan API
- Menambahkan
EXTRA_ANIMATION_DURATION_MILLIS
opsional keConfirmationActivity
untuk mengizinkan durasi yang ditampilkan dialog konfirmasi. (adb83ce, 134523c, b/143356547)
Perbaikan Bug
- Memperbarui
WearableActionDrawView
untuk menunda kemunculan panel tindakan sampai panel terbuka untuk kali pertama. (5cd32f7)