Saat Yüzünü Kullanın
Son Güncelleme | Kararlı Sürüm | Serbest Bırakma Adayı | Beta Sürümü | Alfa Sürümü |
---|---|---|---|---|
17 Nisan 2024 | 1.2.1 | - | - | 1.3.0-alpha03 |
Bağımlılıkları bildirme
Wear'da bağımlılık eklemek için projenize Google Maven deposunu eklemeniz gerekir. Daha fazla bilgi için Google'ın Maven deposunu okuyun.
Uygulamanızın veya modülünüz için build.gradle
dosyasına ihtiyaç duyduğunuz yapıların bağımlılıklarını ekleyin:
Modern
dependencies { // Use to implement wear watchfaces implementation "androidx.wear.watchface:watchface:1.2.1" // Use to implement wear watchface complications implementation "androidx.wear.watchface:watchface-complications-data-source:1.2.1" // (Kotlin-specific extensions) implementation "androidx.wear.watchface:watchface-complications-data-source-ktx:1.2.1" // Use to implement a watchface style and complication editor implementation "androidx.wear.watchface:watchface-editor:1.2.1" // Can use to render complications. // This library is optional and watchfaces may have custom implementation for rendering // complications. implementation "androidx.wear.watchface:watchface-complications-rendering:1.2.1" }
Kotlin
dependencies { // Use to implement wear watchfaces implementation("androidx.wear.watchface:watchface:1.2.1") // Use to implement wear watchface complications implementation "androidx.wear.watchface:watchface-complications-data-source:1.2.1" // (Kotlin-specific extensions) implementation "androidx.wear.watchface:watchface-complications-data-source-ktx:1.2.1" // Use to implement a watchface style and complication editor implementation("androidx.wear.watchface:watchface-editor:1.2.1") // Can use to render complications. // This library is optional and watchfaces may have custom implementation for rendering // complications. implementation "androidx.wear.watchface:watchface-complications-rendering:1.2.1" }
Bağımlılıklar hakkında daha fazla bilgi edinmek için Derleme bağımlılıkları ekleme konusuna bakın.
Geri bildirim
Geri bildiriminiz Jetpack'i daha iyi hale getirmemize yardımcı oluyor. Yeni sorunlar keşfederseniz veya bu kitaplığı nasıl geliştirebileceğimizle ilgili fikirleriniz varsa bize bildirin. Yeni bir sorun oluşturmadan önce lütfen bu kitaplıktaki mevcut sorunlara göz atın. Yıldız düğmesini tıklayarak mevcut bir soruna oyunuzu ekleyebilirsiniz.
Daha fazla bilgi için Sorun İzleyici belgelerine bakın.
Sürüm 1.3
Sürüm 1.3.0-alpha03
17 Nisan 2024
androidx.wear.watchface:watchface-*:1.3.0-alpha03
yayınlandı. 1.3.0-alpha03 sürümü bu kayıtları içerir.
API Değişiklikleri
- Düzenleme sırasında alttaki kadran örneğinin
ComplicationData
özelliğini geçici olarak ayarlayanEditorSession#setOverrideComplications
özelliğini ekledik. Özellikler nadiren değişiyorsa bu, geçersiz kılmalarıEditorSession#renderWatchFaceToBitmap
üzerinden iletmekten daha etkilidir. (I19384)
Hata Düzeltmeleri
- Önceden
selectComplicationDataForInstant
, tüm zaman çizelgeleri içintoApiComplicationData
çağrısını yapıyordu. Yani, sonraki === referans eşitlik testi her zaman başarısız oluyordu. Bu da her karede sorun yaşanan komplikasyonların pilin bitmesine neden olduğu anlamına geliyordu. (717406)
Sürüm 1.3.0-alpha02
3 Nisan 2024
androidx.wear.watchface:watchface-*:1.3.0-alpha02
yayınlandı. 1.3.0-alpha02 sürümü bu kayıtları içerir.
Yeni Özellikler
- Artık "eşittir" operatörünün pahalı olması nedeniyle "en iyi" ile
selectedData
" karşılaştırmasını referans eşitliği kullanıyoruz. (446b00)
API Değişiklikleri
GoalProgressComplicationData
için yedek olmayan bir dinamik API ekledik. (c33264)
Sürüm 1.3.0-alpha01
7 Şubat 2024
androidx.wear.watchface:watchface-*:1.3.0-alpha01
yayınlandı. Sürüm 1.3.0-alpha01 bu kayıtları içerir.
Yeni Özellikler
WatchFaceServices
eşzamanlı olarak başlatılabilir ve bu nedenle durum bilgisiz olmalıdır. Bunu desteklemek içinStatefulWatchFaceService
içindecreateExtra()
tarafından oluşturulan fazladan bir kullanıcı, başlatma sırasında çağrılan tüm geçersiz kılmalara geçirilir.GlesRenderer2
artıkeglChooseConfig
ile deneyebileceğiniz özelliklerin listesini belirtmenize olanak tanıyan bir yapıcı aşırı yüküne sahip.
API Değişiklikleri
StatefulWatchFaceService
artık,createExtra()
tarafından oluşturulan kullanıcı tanımlı ekstranın iletildiğigetComplicationSlotInflationFactory
geçersiz kılmasını destekliyor. (I82d9f)- Bazı kadranların
createUserStyleSchema
sırasında oluşturulan yardımcı verileri diğer başlatma yöntemleriyle paylaşması gerekir. Daha iyi bir alternatif olmadığı için geliştiriciler genellikleWatchFaceServices
özelliklerini durum bilgili hale getirirler. Aynı anda birden fazla örnek oluşturulabileceği ve bu da hatalara yol açabileceği için bu tehlikelidir. Bu sorunu çözmek içincreateExtra()
ile kullanıcı tanımlı tür oluşturup çeşitli oluşturma yöntemlerine parametre olarak geçirilenStatefulWatchFaceService
veStatefulWatchFaceRuntimeService
özelliklerini kullanıma sunduk. (If8a99) InteractiveWatchFaceClient
içine, öncelikli olarak OEM'lerin ilgi gösterdiğigetUserStyleFlavors
ürününü ekledik. (I0f5d8)GlesRenderer2
artıkeglChooseConfig
ile deneyebileceğiniz özelliklerin listesini belirtmenize olanak tanıyan bir yapıcı aşırı yüküne sahip. Bu, örneğin ilk olarak anti-aliasing içeren bir yapılandırmayı denemenize ve gerektiğinde bir yapılandırmaya geri dönmenize olanak tanır. (I1ba74)- Android U'dan Wear OS'e
SystemDataSources.DATA_SOURCE_HEART_RATE
desteği eklenecek. Bu özelliğin yalnızcaSHORT_TEXT
özelliklerini desteklediği garanti edilir, ancak OEM'ler canlı değer yerine sağlık uygulamalarına kısayol sunmayı tercih edebileceğindenComplicationSlot
uygulamasının daSMALL_IMAGE
özelliğini kabul etmesi önerilir. (I34223) - Android U'dan itibaren
METADATA_KEY_DATA_SOURCE_CONFIG_ACTION
ile birlikte kullanılan komplikasyon veri kaynağı için sistem yedekten geri yüklendiğinde ne olacağını kontrol edenMETADATA_KEY_CONFIG_RESTORE_SUPPORTED
ekledik. Varsayılan olarak sistem, özellik verisi kaynağı hizmetinin yapılandırma verilerinin yedeklemesini desteklediğini varsayar. Ancak bu destek sunulmuyorsa, özellik içinMETADATA_KEY_DATA_SOURCE_CONFIG_ACTION
meta veri ayarını false (yanlış) olarak ekleyebilir. Bu da özellik alanını yapılandırılmadı olarak işaretleyecektir. (I6c505)
Sürüm 1.2
Sürüm 1.2.1
24 Ocak 2024
androidx.wear.watchface:watchface-*:1.2.1
yayınlandı. 1.2.1 sürümü bu kayıtları içerir.
Hata Düzeltmeleri
- Samsung Galaxy Watch 4, 5 ve 6'daki bir kilitlenme düzeltildi. (43f0b0)
Sürüm 1.2.0
29 Kasım 2023
androidx.wear.watchface:watchface-*:1.2.0
yayınlandı. 1.2.0 sürümü bu kayıtları içerir.
1.1.0'dan sonraki önemli değişiklikler
- Android T'de kullanılabilen bazı yeni özellik türlerini desteklemeye başladık:
GoalProgressComplicationData
(min. dolaylı olarak sıfır olduğu ve değerintargetValue
değerinden büyük olmasına izin verilen bir hedefe yönelik ilerleme durumu)RangedValueComplicationData
ile benzerdir.- İsteğe bağlı metin/başlık/resim ile birlikte bir Öğeler dizisinden (ağırlık ve renk çiftleri) oluşan
WeightedElementsComplicationData
. Bunlar, genellikle etiketleri oluşturmak için karmaşıklık olmadığından bağlam açısından renklerin anlamlı olması gereken bir pasta grafik olarak görüntülenebilir.
RangedValueComplicationData
için isteğe bağlıColorRanges
desteği ekledik. Normalde özellikler kadranın seçtiği renklerde oluşturulur, ancak bazen renkleri ayarlamak için en iyi seçenek, örneğin belirli bir anlamsal anlam olduğundaComplicationDataSource
. Ör. sıcaklık değeri için kırmızıdan maviye.- Artık neredeyse her
ComplicationData
türüSmallImages
özelliğini destekliyor. DO_NOT_SHOW_WHEN_DEVICE_LOCKED
, uyumlu bir kadrana cihaz kilitliyken özelliği görüntülememesini söyleyenComplicationDisplayPolicy
eklendi.- OEM'ler, Android T'den itibaren bir özellik isteğinin
ComplicationRequest#isForSafeWatchFace
tarafından sağlayıcıların manifest dosyasındakiandroid.support.wearable.complications.SAFE_WATCH_FACES
meta verileri tarafından tanımlanan listedeki kadranlardan gelip gelmediğini belirleyebilecektir. Sağlayıcının TargetWatchFaceSafety.UNKNOWN dışında bir şey almak içincom.google.wear.permission.GET_IS_FOR_SAFE_WATCH_FACE
iznine ihtiyacı vardır. UserStyleFlavors
, deneysel olmayan bir özellik haline geldi.
Sürüm 1.2.0-rc01
18 Ekim 2023
androidx.wear.watchface:watchface-*:1.2.0-rc01
yayınlandı. 1.2.0-rc01 sürümü bu kayıtları içerir.
Sürüm 1.2.0-beta02
6 Eylül 2023
androidx.wear.watchface:watchface-*:1.2.0-beta02
yayınlandı. 1.2.0-beta02 sürümü bu kayıtları içerir.
Yeni Özellikler
SuspendingComplicationDataSourceService#onDestroy
şu an açık. Sistemin varsayılan hava durumu özelliği desteğinin kaldırıldığını lütfen unutmayın.
API Değişiklikleri
- "Hava durumu komplikasyonları için yeni bir veri kaynağı göster" ayarını geri alın. (I6f335)
Sürüm 1.2.0-beta01
23 Ağustos 2023
androidx.wear.watchface:watchface-*:1.2.0-beta01
yayınlandı. 1.2.0-beta01 sürümü bu kayıtları içerir.
Yeni Özellikler
- Android T'den WearOS artık varsayılan bir hava durumu sistemi özelliğini destekleyecek.
API Değişiklikleri
- Özellikler için varsayılan hava durumu sistem yedeği ekleyin. (Ia0994)
- Bu yama, guava sarmalayıcılarıyla birlikte
WatchFaceRuntimeService
veWatchFaceControlClient.createWatchFaceRuntimeControlClient
öğelerini ekler. Bunlar, tanımını başka bir paketten yükleyen özel bir kadran türü olan kadran çalışma zamanlarını destekler. WearOS şu anda yalnızca Android Saat Yüzü Biçimi'nin çalışma zamanını desteklemektedir. (I2799f) - Bu yama aosp/2636578 ile ilgili bir takip olup int defs adını değiştirdiğimiz için
WatchFaceType
,CanvasType
,TapType
veyaComplicationsSlotBoundsType
'ye bağlı kodların değiştirilmesi gerekmez. (I4098b) - API dosyaları, uyumluluğun giderilmesine ek açıklama eklemek için güncellendi. (I8e87a, b/287516207)
- Bu yama,
WatchFaceTypes
içindeWatchFaceType
,CanvasTypes
içindeCanvasType
,TapTypes
içindeTapType
veComplicationsSlotBoundsType
içindeComplicationsSlotBoundsType
sabiti gösterir. (I3b85a, b/288750666) WatchFace.OverlayStyle
çok düşük bir kullanım oranına sahip ve OEM'ler tarafından iyi desteklenmemektedir. Bu nedenle, ileri bir tarihte kaldırmak amacıyla uygulamayı kullanımdan kaldırıyoruz. (I7344a)
Sürüm 1.2.0-alpha09
21 Haziran 2023
androidx.wear.watchface:watchface-*:1.2.0-alpha09
yayınlandı. Sürüm 1.2.0-alpha09 bu kayıtları içerir.
Yeni Özellikler
RangedValueComplicationData.Builder
artıkDynamicFloat
kabul ediyor. Ayrıca yeni birDynamicComplicationText
,ComplicationText
alt sınıfı olarak kullanıma sunuldu. Her iki sınıf da dinamik ifadeleri ve desteklenen Wear 4 cihazlarda 1 Hz'de güncellenen platform bağlamalarını kullanabiliyor.
API Değişiklikleri
- Günlük mesafe, günlük kalori ve günlük tabanlar için dinamik türler eklendi. Platform durumu kaynaklarının anahtarları artık
PlatformHealthSources.Keys
(Ib7637) kapsamındadır - Nabzı ve günlük adım sayısını sağlamak için
PlatformDataProvider
özelliğini uygulayın.SensorGateway
arayüzü, herkese açık API'den kaldırıldı. (I55b84) StateEntryValue
öğesiniDynamicDataValue
olarak yeniden adlandırın ve durum API'larınıDynamicDataKey
kullanacak şekilde güncelleyin. (If1c01)- Uygulamanın aktarım durumuna erişmek için
AppDataKey
, platform verilerine erişmek içinPlatformDataKey
ekleyin veStateStore
alanına ad alanı desteği ekleyin. (I7985e) enable
/disablePlatformSource
yöntem,DynamicTypeEvaluator
hedefinden kaldırıldı. Arayan kişi güncellemelerden sorumlu olmalıdır. (I78c6d)- Bağlanmış veri türlerinin boyutunu sınırlandırmaya izin ver. (Ie2966)
Sürüm 1.2.0-alpha08
19 Nisan 2023
androidx.wear.watchface:watchface-*:1.2.0-alpha08
yayınlandı. Sürüm 1.2.0-alpha08 bu kayıtları içerir.
Yeni Özellikler
- Ayrıcalıklı
com.google.wear.permission.GET_IS_FOR_SAFE_WATCH_FACE
özelliğine sahip özellik sağlayıcıları, Android T'den güvenli kadranlardaandroid.support.wearable.complications.SUPPORTED_TYPES
öğesini geçersiz kılanandroidx.wear.watchface.complications.datasource.SAFE_WATCH_FACE_SUPPORTED_TYPES
meta verilerini kaydedebilir. Dolayısıyla bir özellik sağlayıcı, güvenilir ve güvenilmeyen saat yüzlerine farklı türler sunabilir.
API Değişiklikleri
@Deprecated
sınıfının mülke çoğaltılması (I882d1, b/271441831)Enum.valueOf
için değer parametresi adı değiştirildi (Ia9b89)- Enum valueOf parametresinden (I818fe) daha fazla atılmış istisna
- SurfaceControlViewHost'ın temel alınarak oluşturulan ve arayanın kadrandan, istemci
RemoteWatchFaceViewHost#renderWatchFace
çağırdığında oluşturulan bir görünüm yerleştirmesine olanak tanıyancreateRemoteWatchFaceView
içinrenderWatchFaceToSurface
kaldırıldı. (Ib311d) renderWatchFaceToSurface
öğeleriniInteractiveWatchFaceClient
,HeadlessWatchFaceClient
veEditorSession
klasörlerine ekledik. Genellikle bu işlem, bit eşlem oluşturmaya göre daha etkili olacaktır. (Ieacad)ObservableStateStore
,StateStore
olarak yeniden adlandırıldı. (Ieb0e2)- Daha fazla isteğe bağlı bağımsız değişkene izin vermek için kurucu bağımsız değişkenleri yerine
DynamicTypeEvaluator.Builder
eklendi. Bu bağımsız değişkenler artık varsayılan olarak boş olanObservableStateStore
değerini içerir. (I6f832) DynamicTypeEvaluator
içindeki parametrelerin sırası yeniden düzenlendi. (Ic1ba4)- Yürütücü,
DynamicTypeEvaluator.bind
yöntemlerine eklendi. (I346ab) - Dinamik tür bağlandıktan sonra değerlendirmenin tetiklenmesi için
BoundDynamicType
öğesinestartEvaluation
yöntemi ekledik. (I19908) - Ayrıcalıklı
com.google.wear.permission.GET_IS_FOR_SAFE_WATCH_FACE
özelliğine sahip komplikasyon sağlayıcılarandroidx.wear.watchface.complications.datasource.SAFE_WATCH_FACE_SUPPORTED_TYPES
meta verilerini kaydedebilir. Bu veriler, güvenli kadranlardaandroid.support.wearable.complications.SUPPORTED_TYPES
öğesini geçersiz kılar. (Id1c73) CustomValueUserStyleSettings2
alan adının adınıLargeCustomValueUserStyleSettings
olarak değiştirdik. (Ic17ac)
Hata Düzeltmeleri
DynamicTypeValueReceiver#onPreUpdate
kaldırıldı. (I2dc35)
Sürüm 1.2.0-alpha07
22 Şubat 2023
androidx.wear.watchface:watchface-*:1.2.0-alpha07
yayınlandı. Sürüm 1.2.0-alpha07 bu kayıtları içerir.
Yeni Özellikler
OEM'ler, Android T'den itibaren bir özellik isteğinin
ComplicationRequest#isForSafeWatchFace
tarafından sağlayıcıların manifest dosyasındakiandroid.support.wearable.complications.SAFE_WATCH_FACES
meta verileri tarafından tanımlanan listedeki kadranlardan gelip gelmediğini belirleyebilecektir. Sağlayıcının,TargetWatchFaceSafety.UNKNOWN
dışında bir şey almak içincom.google.wear.permission.GET_IS_FOR_SAFE_WATCH_FACE
iznine ihtiyacı vardır.12,5 KB'a kadar veri depolayabilen
CustomValueUserStyleSetting2
, Android T'den de kullanılabilir.CustomValueUserStyleSetting
için önceki sınır 1 KB'tı. Artırılmış boyut sınırlarına rağmen, kadran geliştiricilerinin verileri küçük tutmaları önerilir. Düzenleme sırasında ayarlar Bluetooth üzerinden gönderilir ve Bluetooth bant genişliği sınırlıdır.
API Değişiklikleri
GlesRenderer
veGlesRenderer2
öğelerine,EGL14.eglCreateContext
için iletilenEGL14.EGL_CONTEXT_CLIENT_VERSION
değerini ayarlamanıza olanak tanıyan isteğe bağlıeglContextAttribList
parametresini ekledik. (I2a83e)- Kadran kitaplıkları
java.util.function.Consumer
yerineandroidx.core.util.Consumer
hizmetine taşındı. (I273f5) - KT mülk erişimcilerinden gelen diğer uyarılar (Iff9d9)
- Müşterinin eski kadran yerine destek emülasyonunu taklit etmesi gerekip gerekmediğini belirleyebilmesi için
InteractiveWatchFaceClient.isComplicationDisplayPolicySupported
eklendi. (I24c89) isForSafeWatchFace
için üç eyaletliIntDef
olması gerektiğine karar verdik. (Ief2f7)- Android T için, OEM kullanımı için tasarlanmış ve
com.google.wear.permission.GET_IS_FOR_SAFE_WATCH_FACE
gerektirenComplicationRequest.isForSafeWatchFace
ürününü kullanıma sunduk. İstekte bulunan kadran, manifest dosyasında veri kaynağı tarafından belirtilen güvenli kadran listesinde yer alıyorsa sistem görüntüsündeki veri kaynaklarında "true" değerini döndürür. (I0cbb6) - Android T için 12,5 kb'a kadar veri depolayabilen
CustomValueUserStyleSetting2
ekledik.CustomValueUserStyleSetting
için önceki sınır 1 KB'tı. (I0b100)
Sürüm 1.2.0-alpha06
25 Ocak 2023
androidx.wear.watchface:watchface-*:1.2.0-alpha06
yayınlandı. Sürüm 1.2.0-alpha06 bu kayıtları içerir.
Yeni Özellikler
- Özellik platformu bağlama desteği ekleme çalışmaları devam ediyor. Bu platform henüz kullanıma hazır değil. Gelişmeler için takipte kalın.
- Yeni özellik türleri olan GOAL_PROGRESS ve WEIGHTED_ELEMENTS için XML
ComplicationSlot
desteği ekledik.
Hata Düzeltmeleri
- Samsung cihazlarda kadran düzenleyicisinin doğru şekilde yayınlanmadığı bir sızıntıyı düzeltir. (3b5987)
- Bazen birden fazla favori saat yüzü arasında geçiş yaparken özelliklerin düzgün görüntülenmemesine neden olan hata düzeltildi. (b38ece)
- perOptionScreenReaderNames ile saat yüzü kilitlenmelerine neden olan serileştirme hatası düzeltildi. (e9f466)
Sürüm 1.2.0-alpha05
7 Aralık 2022
androidx.wear.watchface:watchface-*:1.2.0-alpha05
yayınlandı. Sürüm 1.2.0-alpha05 bu kayıtları içerir.
Yeni Özellikler
Bir süre önce hiyerarşik
UserStyleSettings
desteği ekledik ve Android T'den bir hiyerarşide birden fazlaComplicationSlotsUserStyleSetting
olması artık mümkün. Kullanıcının stil seçimlerine göre yalnızca birComplicationSlotsUserStyleSetting
etkin olacak.Bir
screenReaderName
alanı ekleyerekListOption
veComplicationSlotsOption
için ekran okuyucu desteğini iyileştiriyoruz. Android T'den önce bu alanın tamamlayıcı düzenleyiciler tarafından yoksayılacağını unutmayın.
API Değişiklikleri
- Düzenleyiciler tarafından kullanılması için
ListOption
veComplicationSlotsOption
alan adına yeni bir isteğe bağlıscreenReaderName
alan ekledik. Android T'den önceki cihazlarda tamamlayıcı düzenleyiciler tarafından yoksayılır. (I75326) - Android T'den, aynı anda en fazla bir tanesi etkin olabildiği sürece stil hiyerarşisinde birden fazla
ComplicationSlotsUserStyleSettings
artık desteklenmektedir. Varsa etkinComplicationSlotsOption
öğesini bulmaya yardımcı olmak içinUserStyleSchema
öğesinefindComplicationSlotsOptionForUserStyle
yardımcı program işlevi ekledik. (Ic2b06) RangedValuesTypes
,RangedValueComplicationData
adlı nesnenin tamamlayıcı nesnesine alındı veTYPE_UNDEFINED
,TYPE_RATING
olarak yeniden adlandırıldı. Ayrıca yeni birTYPE_PERCENTAGE
eklendi. (I55d02)DynamicFloat
denemesiniFloatExpression
olarak yeniden adlandırdık ve@hide
olarak işaretledik. (Idf4f1)@JvmDefaultWithCompatibility
ek açıklaması ekleniyor (I8f206)
Sürüm 1.2.0-alpha04
9 Kasım 2022
androidx.wear.watchface:watchface-*:1.2.0-alpha04
yayınlandı. Sürüm 1.2.0-alpha04 bu kayıtları içerir.
Yeni Özellikler
- Android T için
GoalProgressComplicationData
veWeightedElementsComplicationData
olmak üzere iki yeni özellik türü için destek ekledik. GoalProgressComplicationData
RangedValueComplicationData
ile benzerdir. Ancak değerin hedefi aşmasına izin verilir (RangedValueComplicationData
için değer [min .. max] aralığına sabitlenir). Bu durum, tüm saat yüzlerine uygun olmayabilecek görsel tasarım açısından bazı sonuçlar doğurabilir.GoalProgressComplicationData
, pasta grafikleri ve basit verilerin benzer dökümlerini destekler.RangedValueComplicationData
içinColorRamps
için isteğe bağlı destek ekledik.- Android T için
ComplicationPersistencePolicy
vesetCachePolicy
özellikleriniComplicationData
ürününe ekledik.Bu sayede sağlayıcı, şu anda bir özelliğin devam edip etmediğini (ör. yeniden başlatma sonrasında önbelleğe alınıp alınmayacağını) kontrol edebilir. Çoğu özelliğin önbellek kontrolü ayarlanmasına gerek yoktur, ancak bunu yapmak sık sık güncellenen bazı komplikasyonlar (ör. sağlık verisi komplikasyonları) için eski verilere sahip köşe vakalarını düzeltebilir. AyrıcaDO_NOT_SHOW_WHEN_DEVICE_LOCKED
, uyumlu bir kadrana cihaz kilitliyken özelliği görüntülememesini söyleyenComplicationDisplayPolicy
işlevini de ekledik. (Ic9574)
API Değişiklikleri
GoalProgressComplicationData
,WeightedElementsComplicationData
veColorRamp
artık deneme aşamasında değil. (Ica9e2)ComplicationPersistencePolicy
veComplicationDisplayPolicy
artık gerektiği gibi T API'leri olarak işaretleniyor. (I31d88)- Kullanımdan kaldırılan
ComplicationSlotOverlay
kurucusu, artık Java'dan tekrar çağrılabilmesine izin verenDeprecationLevel.WARNING
özelliğine sahiptir. (Ib308c) ComplicationRequestListener
,CanvasComplication
,ComplicationTapFilter
veInteractiveWatchFaceClient
ile ilgili bazı Java uyumluluk sorunlarını@JvmDefaultWithCompatibility
ile notlandırarak (Id94fc) düzelttik- Deneysel
ProtoLayoutComplicationData
veListComplicationData
kaldırıldı. Bu uygulamaların geliştirici hikayesi net değildi. İleride tekrar ziyaret etmeyi umuyoruz. (I9df05) RangedValueComplicationData
hesabınızaValueType
ekledik.WeightedElementsComplicationData
artık arka plan rengini destekliyor. İşlevleriWeightedElementsComplicationData
alt kümesi olduğundanDiscreteRangedValueComplicationData
kaldırıldı. (I6446c)
Hata Düzeltmeleri
isForScreenShot
öğesini eşittir ve karma koduna ekleyin.onRenderParametersChanged
için doğruisForScreenshot
değeri verildiğinden emin olun (I04a41)- Gözetimsiz istemcilerden
WatchFaceControlService
ile ilgili sızıntılar düzeltildi. (e90e00)
Sürüm 1.2.0-alpha03
5 Ekim 2022
androidx.wear.watchface:watchface-*:1.2.0-alpha03
yayınlandı. Sürüm 1.2.0-alpha03 bu kayıtları içerir.
Yeni Özellikler
- Yeni özellik yok, ancak kadran düzenleyiciyle ilgili birkaç hatayı düzelttik.
API Değişiklikleri
rootUserStyleSettings
olarak kullanımdan kaldırılanUserStyleSchema.userStyleSettings
, deneysel olmayan bir sürüm haline geldi (Ie96e3)rootUserStyleSettings
adlı öğeyi deneme sürümünden (I8d6b3) taşı- Tüm sistemler tarafından desteklenmediği için
WatchFaceColors
hesabını deneysel olarak işaretledik (I6d75d) IntDef
ile çalışması içinDisconnectReasons
API'sini genel API'de kullanıma sunun. (I791f8)
Hata Düzeltmeleri
SysUI
ölürse kol saati düzenleyicide açık olan tüm cihazları kapatın. Sistem, kullanıcı stili değişikliklerinin devam etmesi içinSysUI
kullandığı içinSysUI
kapanıp kadran düzenleyicisi kapanmazsa kadran tutarsız bir durumda kalabilir.(ba762aComplicationDataSourceInfoRetriever
ürününde, kotlin eş kotin devam etmesinin gckök işlevi görüp düzenleyici etkinliğini tuttuğu bellek sızıntısı düzeltildi.(33ee06)
Sürüm 1.2.0-alpha02
21 Eylül 2022
androidx.wear.watchface:watchface-*:1.2.0-alpha02
yayınlandı. Sürüm 1.2.0-alpha02 bu kayıtları içerir.
Yeni Özellikler
Bazı kadranlar
UserStyle
dışında bir yapılandırmaya sahiptir ve bu yapılandırmalar kendisini görsel olarak etkiler (ör. arka plan fotoğrafı seçme). Kadranın güncellenmiş önizleme resmi istemesine olanak tanıyanRenderer.sendPreviewImageNeedsUpdateRequest
özelliğini ekledik. Bu özelliğin çalışması için ilgili bir sistem güncellemesi gerektiğini unutmayın.Ayrıca, renk paletini sisteme göre seçebilecek saat yüzlerine yönelik bir API de ekledik. Bunun, bir takip yaması kullanılarak deneysel hale getirildiğini unutmayın.
Artık neredeyse tüm
ComplicationData
türleriSmallImages
destekleniyor.
API Değişiklikleri
- Duvar kağıdı yöneticisi bazen bir motordan ayrılıp başka bir motor oluşturabilir.
DisconnectReason
int def ekledik veClientDisconnectListener
öğesini,DisconnectReason
içeren yeni bir yöntemle genişlettik. Böylece işleyicinin motor ayrılmalarını gözlemlemesini sağladık. (I45cce) ComplicationSlotOverlay
oluşturucuya iki isteğe bağlı parametre (nameResourceId
vescreenReaderResourceId
) eklendi (I157e8)PreviewImageUpdateRequestedListener
içeren yenigetOrCreateInteractiveWatchFaceClient
aşırı yüklemesi için bir guava sarmalayıcı ekledik. (Ic31f0)- Durumu
UserStyleSchema
dışında olan kadranlar için kullanışlı bir özellik olanRenderer.sendPreviewImageNeedsUpdateRequest
özelliğini ekledik.Bu durum, saatin görünüşünü etkiler (ör. seçilebilir bir arka plan resmi olan kadranı). İstemci tarafında, bu istekleri gözlemlemek içinPreviewImageUpdateRequestedListener
parametresinigetOrCreateInteractiveWatchFaceClient
öğesine isteğe bağlı bir parametre olarak ekledik. (Iff44a) WatchFaceColors
gösterimini göstermek için API'yi basitleştirdik. Artık saat yüzünün ayarlayabileceğiwatchFaceColors
adlı basit bir özellik bulunmaktadır. Artık bu özellik, stil değişikliklerine yanıt olarak gerektiğinde güncellenmelidir. Renk değişikliklerini gözlemlemek içinWallpaperManager
kullanmak yerine,InteractiveWatchFaceClient
öğesineOnWatchFaceColorsListener
ekledik. (I490bc)- En belirgin üç kadran rengini içeren bir
WatchFaceColors
sınıfı ve Oluşturucu'yawatchfaceColors
venotifyWatchFaceColorsChanged
açık yöntemlerini ekledik. Bunlar, sisteminWallpaperManager.getWallpaperColors
aracılığıyla kadran renklerini almasını sağlar. (I3d611) ShortTextComplicationData
,RangedValueComplicationData
,NoPermissionComplicationData
(ve deneme amaçlıDiscreteRangedValueComplicationData
,GoalProgressComplicationData
veWeightedElementsComplicationData
) artıkSmallImages
desteklenmektedir. Bir kadran, bir özelliği birden fazla renkle oluşturmayı tercih ettiğinde artık tek renkli bir resim kullanması gereken çok renkliSmallImage
kullanma seçeneği de sunuluyor. (I257df)PreviewImageUpdateRequestedListener
öğesiniConsumer<>
olacak şekilde değiştirin (Ia875d)- Özel Tekli Soyut Yöntem (SAM) türü
OnWatchfaceColorsListener
yerine genel Java SAM türünü (Tüketici) (I0c489) kullanın PreviewImageUpdateRequestedListener
belirtilmeyen eskigetOrCreateInteractiveWatchFaceClient
velistenableGetOrCreateInteractiveWatchFaceClient
yöntemleri kullanımdan kaldırıldı. (Iec502)
Hata Düzeltmeleri
DisconnectReason.BINDER_DIED
,DisconnectReason.ENGINE_DIED
olarak yeniden adlandırıldı. (I4eb0e)
Sürüm 1.2.0-alpha01
10 Ağustos 2022
androidx.wear.watchface:watchface-*:1.2.0-alpha01
yayınlandı. Sürüm 1.2.0-alpha01 bu kayıtları içerir.
Yeni Özellikler
- Çeşitli yeni özellik biçimleri için deneysel destek ekledik. Bu, aktif bir geliştirme alanıdır. Bu yeni biçimler önceden haber verilmeden değiştirilebilir ve şu anda
CanvasComplicationDrawable
tarafından oluşturucu desteği sunulmamaktadır. - Özellik alanlarına, küçük özelliklere dokunmayı kolaylaştırmak için isteğe bağlı kenar boşlukları da ekledik.
API Değişiklikleri
- Deneysel
BoundingArc
sınıfı artık sabittir. (If624a) - Küçük özelliklere dokunmak zor olabilir. Bu sorunu azaltmak amacıyla, oluşturmayı etkilemeden dokunulabilir alanı artıran kenar boşlukları desteği sunmaya başladık. Belirtilmediği sürece (kodda veya XML aracılığıyla)
ComplciationSlots
sıfır boyutlu kenar boşluklarına sahiptir. (I14089) getComplicationSlotInflationFactory(CurrentUserStyleRepository)
imzası, boş olmayan bir fabrika örneği döndürülecek şekilde değiştirildi. Daha önce null değerinin döndürülmesi bir hataydı. Dolayısıyla bu, API sözleşmesini daha net bir hale getirmektedir. (I0fcc0)createComplicationSlotsManager
ile tutarlı olması içinWatchFaceService.getComplicationSlotInflationFactory
yönteminecurrentUserStyleRepository
bağımsız değişken ekledik. (I2ddd2)UserStyleFlavors
, deneysel olmayan özellik haline geldi. (I69cdc)RangedValueComplicationData
türündeki deneme amaçlıValueType
öğesiniRangedValueComplicationData
öğesinden kaldırdık ve bunun yerine tam sayı aralığı ve değer dışındaRangedValueComplicationData
benzeri deneme amaçlıDiscreteRangedValueComplicationData
öğesini kullanıma sunduk. Ayrıca, minimum olarak örtülü olarak sıfır olduğu ve değerintargetValue
değerinden büyük olmasına izin verilen bir hedefe yönelik ilerleme durumu için yapılmış olması dışındaRangedValueComplicationData
ile benzer olan deneme amaçlıGoalProgressComplicationData
özelliğini de kullanıma sunduk. TümRangedValue
varyantlar için en az bir monochromeImage, metin veya başlık belirtilmelidir. (I9590c)- Sistem yazılımında bunun bir kullanım alanı olmadığından
boundsWithMargins
öğesiniComplicationSlotState
alan adından kaldırdık. (I42e26) - İsteğe bağlı metin/başlık/resim ile birlikte bir Elementler (ağırlık ve renk çiftleri) dizisinden oluşan
WeightedElementsComplicationData
için deneysel destek ekledik. Bunlar, genellikle etiketleri oluşturmak için karmaşıklık olmadığından bağlam açısından renklerin anlamlı olması gereken bir pasta grafik olarak görüntülenebilir. (I87eea) - İsteğe bağlı olarak
RangedValueComplicationData
veGoalProgressComplicationData
tarafından kullanılan deneyselColorRamps
, artık yedi adede kadar renkten oluşan bir dizi ve renkler arasında düzgün bir şekilde aralama yapılıp yapılmayacağını veya eşit boyutlu düz renk adımlarının oluşturulması gerekip gerekmediğini belirten bir işaret belirtmenize olanak tanıyor. (I9f5bf) RangedValueComplicationData.drawSegmented
, aralıklı değere anlamsal anlam sağlayan ve komplikasyon oluşturucu tarafından stili etkilemek için kullanılabilenValueType IntDef
ile karşılık gelen bir int olanvalueType
olarak değiştirildi. (I0616b)RangedValueComplicationData
için isteğe bağlıColorRanges
için deneysel destek ekledik. Normalde özellikler kadranın seçtiği renklerde oluşturulur, ancak bazen renkleri ayarlamak için en iyi seçenek, örneğin belirli bir anlamsal anlam olduğundaComplicationDataSource
. Ör. sıcaklık değeri için kırmızıdan maviye. (I5153a)RangedValueComplicationData
öğesine deneysel birdrawSegmented
ipucu ekledik. Bu, oluşturuculara segmentlerle aralıklı değer göstergesini çizmeleri için sinyal gönderir. Burada 1 segment = 1 birimdir. (I7d7c1)
Hata Düzeltmeleri
- Önceden tanımlanmış bir ekran koordinat sistemine göre
ComplicationSlotBounds
tanımlama özelliğini ekledik. (I0985d)
Sürüm 1.1
Sürüm 1.1.1
10 Ağustos 2022
androidx.wear.watchface:watchface-*:1.1.1
yayınlandı. 1.1.1 sürümü bu kayıtları içerir.
- Bu, bir hata düzeltme sürümüdür. 1.1.0 sürümünü kullananların yeni sürüme geçmelerini önemle tavsiye ederiz.
Hata Düzeltmeleri
Kadranı başlatma işlemi eşzamansız olarak yapılır ve kadran hazır olmadan önce bir özellik elde edilirse kadran
pendingInitialComplications
listesine eklenir ve daha sonra uygulanır. MaalesefpendingInitialComplications
çok erken uygulandı. Bu da kadranı başlatma işlemi sırasında, özelliklerinpendingInitialComplications
özelliğine eklenip yoksayılacağı bir zaman aralığı olduğu anlamına geliyordu. Bu sorun artık düzeltildi. Ayrıca bu yama,ComplicationRenderer
ürününün yer tutucuları yanlış bir şekilde eşzamansız olarak yüklemeye çalıştığı, bunun da derleme grafiğinin hiç güncellenmemesine neden olan bir hatayı düzeltir. Son olarak bu yama, birden fazlapendingInitialComplications
öğesinin birleştirilmesi gereken teorik hatayı düzeltir. (0d03ba3)getExistingInstanceOrSetPendingWallpaperInteractiveWatchFaceInstance
adlı kullanıcının kilidi gerekenden daha uzun süre tuttuğuInteractiveInstanceManager
cihazında olası kilitlenmeyi düzeltin. Genellikleengine.setUserStyle
ürününün hızlı olmasını bekleriz ancak herhangi bir nedenle hızlı olmazsa bir kilitlenme/ANR ile karşılaşabiliriz. Bu yama, gereksiz işleri kilitten çıkararak kilitlenme potansiyelini ortadan kaldırır.(5a2adca)WatchFaceService
uygulamasına neden olan sorunları düzeltin. WakeLock, bazenWatchFaceService
bilgisini koruyabilir verelease()
çağrısı ekleyerek bu sorunu düzeltebilir. AyrıcaStateFlows
,WatchFaceService
özelliğini koruyarak temelCoroutineScopes
düzeltmelerini iptal edebilir.(fd48138)awaitDeferredWatchFace
* kampanyasına zaman aşımları ekleyin vewatchfaceOverlayStyle
NullPointerException
sorununu düzeltin. Normal koşullarda bu, yeni yükleme sonrası ve CPU yükünün yüksek olduğuDirectBoot
senaryoları dahil olmak üzere zaman aşımına uğramamalıdır.getWatchfaceOverlayStyle
,close()
tarihinden sonra çağrılırsa da NPE sorununu düzelttik.(a4c3a5a)
Sürüm 1.1.0
15 Haziran 2022
androidx.wear.watchface:watchface-*:1.1.0
yayınlandı. 1.1.0 sürümü bu kayıtları içerir.
1.0.0'dan sonraki önemli değişiklikler
Geliştirilmiş Düzenleme:
- Stil hiyerarşisinin düzenleyici kullanıcı arayüzleri tarafından yazılmasına olanak tanıyan hiyerarşik şemalar için destek ekledik. Artık kadranda ve tamamlayıcı düzenleyicilerde kullanılmak üzere ayrı simgeler belirtebilirsiniz.
- Bir kadranın birden fazla örneği için kaydolma desteği vardır. Her örneğin, tüm API yüzeylerinde kullanılabilen benzersiz bir kimliği vardır.
- Artık düzenleyicilerde kullanılmak üzere
ComplicationSlots
için okunabilir adlar belirtebilirsiniz. - "Aromalar" için deneysel destek, tamamlayıcı düzenleyiciden görülebilecek, özenle seçilmiş stillerden oluşan bir seçkidir.
- Kadranın iki örneğini düzenlerken, kadran örnekleri artık kaynakları paylaşabiliyor ve bellek tasarrufu yapabiliyor
- Kadran düzenleyicisinde özellik seçerken mevcut sağlayıcının önceden seçilmiş olması gerekir.
İyileştirilmiş Özellikler:
- Artık birincil ve ikincil veri kaynakları için
ComplicationType
belirterek geliştiricilere kullanıma hazır deneyim için daha fazla esneklik sağlayabilirsiniz. - Kadrana aktarılacak ve otomatik olarak güncellenebilecek, zaman sınırlamalı bir veri dizisi sağlayan
ComplicationDataTimeline
özelliğini ekledik. Örneğin, bugünün farklı saatlerdeki hava durumu tahmini veya yaklaşan birden çok takvim etkinliği. - Özellik sağlayıcısının
ComponentName
bölümüComplicationData
kapsamındadır. - Özellikler artık önbelleğe alınıyor. Böylece, kadranlar arasında geçiş yaparken daha iyi bir deneyim sunulur.
Diğer değişiklikler:
UserStyleSchema
veComplicationSlots
artık XML'de tanımlanabilir. Bu, kadran yapısını basitleştirir ve sistemden daha hızlı meta veri sorgularına olanak tanır.- Kadranlar artık sistem yer paylaşımını oluşturmak için kullanılan renkleri etkileyebilir.
Sürüm 1.1.0-rc01
18 Mayıs 2022
androidx.wear.watchface:watchface-*:1.1.0-rc01
yayınlandı. 1.1.0-rc01 sürümü bu kayıtları içerir.
Yeni Özellikler
- Kadran XML desteğinde kullanılabilirlikle ilgili bazı düzenlemeler yaparak
ComplicationSlotBounds
ve destekleyici referansların belirtilmesini kolaylaştırdık. Uç özelliği (BoundingArc
) ile ilgili denemeler devam ediyor. Söz konusu özelliğin şu anda kullanılması önerilmese dedrawHighlight
bölgesinde kullanıma sunulmaktadır.
API Değişiklikleri
BoundingArc
parametresini kabul eden deneysel birdrawHighlight
eklentisi ekledik. (I705f8)- Kadran XML'i artık kaynak referanslarını destekliyor. Aynı sabit değerleri hem XML'de hem de kodunuzda kullanmanıza olanak tanır. (I3ef61)
ComplicationSlotBounds
öğesinicenter_x
,center_y
,size_x
vesize_y
biçiminde tanımlama özelliğini ekledik. Artık kaynak referanslarını kullanarak farklı birimler (ör. dp) kullanmak da mümkündür. (Iace98)
Hata Düzeltmeleri
- Görevleri yanlış bağlamda çalıştıran
runBlockingWithTracing
sorununu düzeltin.(4f595fe) BaseEditorSession.close
öğesini eşzamanlı hale getirin.BaseEditorSession.close
öğesinin eşzamansız olmasıyla ilgili sorun,ComplicationDataSourceInfoRetriever
öğesini çok geç yayınlamamız ve bu nedenle logcat'te spam uyarısı verilmesidir. Bu muhtemelen zararsızdır ancak logcat spam'leri dikkat dağıtıcıdır ve kaçınılması gerekir.(35a5308)
Sürüm 1.1.0-beta02
11 Mayıs 2022
androidx.wear.watchface:watchface-*:1.1.0-beta02
yayınlandı. 1.1.0-beta02 sürümü bu kayıtları içerir.
Yeni Özellikler
- Yeni
ComplicationData
türleri için deneysel destek ekledik. Bu türler henüz kullanıma hazır değil ancak bu alanı takip edin.
API Değişiklikleri
- Bir kenar özelliği (komplikasyon) alanının geometrisini tanımlayan deneysel bir sınıf olan
BoundingArc
'i ekledik. Bu,ComplicationSlot
etiketine eklendi veComplicationSlotState
veWatchFaceMetadataClient
iş akışlarına iletildi. (I61a40) UserStyleSetting
XML'de ayarları devralma özelliğini ekledik. Ayrıntı düzeyini azaltmanıza ve kadranlar arasında belirli bir ayarı paylaşmanıza olanak tanır. (Ief841)- İki yeni deneme amaçlı
ComplicationData
türü ekledik:ListComplicationData
veProtoLayoutComplicationData
. Şu anda bu türlerden ikisi için de oluşturma desteği bulunmamaktadır ve WearOS,ComplicationDataSource's
manifestine eklendiğinde şu anda bu türleri tanımaz. (I1811c)
Hata Düzeltmeleri
TimeLineEntry
türünün serileştirme işlemi düzeltildi.TimeLineEntry
türünü serileştirmiyorduk. Bu durum, NoData türündeki önbelleğe alınmışTimeLineEntries
öğesinin, mevcut olmayan zorunlu alanlara erişildiğinde, üst özellik türünün yanlış bir şekilde NPE'lere yol açacağı şeklinde yorumlanacağı anlamına geliyordu. (55ffdf5)setComplicationData
ürününün zaman çizelgesi alanlarını bırakmasına neden olan hata düzeltildi(fb392f5)runBlockingWithTracing
ürününün nadiren NPE'ye(12ca62e) yol açtığı bir hatayı düzeltir- Bir komplikasyon alırken bazen
ClassNotFoundException: android.support.wearable.complications.ComplicationText
almamıza neden olan hata düzeltildi.(217942d9) GlesRenderer.backgroundThreadInitInternal
işlevinde, yalnızcaEGL14.eglCreateContext
arandığındaonBackgroundThreadGlContextCreated
çağrısının yapıldığı hata düzeltildi. Ekran görüntüsündeverticalFlip
kaynaklı görsel bir hatanın bulunduğu başka bir hatayı düzeltir.(c674ad2)- Yanlış paketten yükleniyordu,
WatchFaceService
XML sürüm kontrolünü düzeltin.(dfa06f3) - Yer tutucu kablo biçimi artık bir iç paket kullanıyor. Yer tutucuların, içteki gizli a.s.w.c.ComplicationData öğesini kullanabilecek mevcut saat yüzlerini bozmasını istemeyiz. Önceden
NoDataComplication
verilerinin kablo biçimi, yer tutucuyu normal alanlarda saklıyordu (eski saat yüzleri amaçlanmayan yer tutucu dizesine neden olacağından sorun yaşanıyordu). Bunun yerine, bunu tamamen izole etmek için bir iç paket kullanıyoruz.(d5e7bd2)
Sürüm 1.1.0-beta01
20 Nisan 2022
androidx.wear.watchface:watchface-*:1.1.0-beta01
yayınlandı. 1.1.0-beta01 sürümü bu kayıtları içerir.
API Değişiklikleri
- Artık
WatchFaceMetadataClient
yöntemleri (getUserStyleSchema
,getComplicationSlotMetadataMap
,getUserStyleFlavors
) veHeadlessWatchFaceClient.getUserStyleFlavors
,WatchFaceException
yerine işaretli RuntimeException hatası veriyor. (I0718a) WatchFaceMetadataClient.WatchFaceException
, yeniden kullanılabilmesi için sınıftan çıkarıldı. (I4e869)
Hata Düzeltmeleri
ComplicationSlotBounds
kısmi olarak gönderildiğindeWatchFaceMetadataClient
artık kilitlenmeyecek.(Iaafd)
Sürüm 1.1.0-alpha05
6 Nisan 2022
androidx.wear.watchface:watchface-*:1.1.0-alpha05
yayınlandı. Sürüm 1.1.0-alpha05 bu kayıtları içerir.
Yeni Özellikler
- Artık
ComplicationData.dataSource
öğesini inceleyerek hangi veri kaynağınınComplicationData
gönderdiğini anlayabilirsiniz. Bazı saat yüzleri, özellik görünümünü özelleştirmek için bunu kullanabilir. (I44a73)
API Değişiklikleri
Renderer.CanvasRenderer
veRenderer.GlesRenderer
kullanımdan kaldırılanRenderer.CanvasRenderer2
veRenderer.GlesRenderer2
ile birlikte oluşturma yöntemlerine aktarılanSharedAssets
desteklenir. Java birlikte çalışabilirlik içinListenableCanvasRenderer2
veListenableGlesRenderer2
özelliklerini kullanıma sunduk. (I31ffa)@WatchFaceFlavorsExperimental
aromaları tanımlama özelliği eklendi. Önceden yapılandırılmış kadranlar listesi (I04dd0)Renderer.sharedAssets
artık bir StateFlow ve kullanılmayanRenderer.SharedAssetsFactory
(I12ac5) kaldırıldıUserStyleSchema.userStyleSettings
desteği sonlandırıldı (Iba7e3)HeadlessWatchFaceClient
öğesinin, özet karmasını hesaplamadan önce şemayı AIDL üzerinden geçirmenin neden olduğu nispeten düşük ek yükü önlemesini sağlayanHeadlessWatchFaceClient.getUserStyleSchemaDigestHash
eklendi. (I33597)isUserStyleSchemaStatic
özelliğiniWatchFaceMetadataClient
uygulamasına ekledik. Bu koşul, yalnızca saat yüzü APK'sı güncellenmediği süreceUserStyleSchema
öğesinin değişmeyecek olmasına güvenilmesi durumunda geçerlidir. (I45a3f)- Şemanın özet karmasını hesaplayan
getDigestHash
öğesiniUserStyleSchema
öğesine ekledik. Bu,UserStyleSchema
değerinin değişip değişmediğini verimli bir şekilde belirlemek için kullanılabilir. (I2063d) METADATA_KEY_DATA_SOURCE_DEFAULT_CONFIGURATION_SUPPORTED
,METADATA_KEY_DATA_SOURCE_DEFAULT_CONFIG_SUPPORTED
(I9ba5d) olarak yeniden adlandırıldıUserStyleSetting.OnWatchEditorData
uygulamasıUserStyleSetting.WatchFaceEditorData
olarak yeniden adlandırıldı. Bu uygulama, sadece kadran üzerinde düzenleyici tarafından kullanılan verileri içeriyor. (If3afb)
Sürüm 1.1.0-alpha04
9 Mart 2022
androidx.wear.watchface:watchface-*:1.1.0-alpha04
yayınlandı. Sürüm 1.1.0-alpha04 bu kayıtları içerir.
API Değişiklikleri
- Güncel
ComplicationData
her zaman kullanılamayabilir (ör.süresi dolan önbelleğe alınmış ComplicationData), bu nedenleNoDataComplication
öğesini isteğe bağlı bir yer tutucu ComplicationData ile genişlettik veComplicationText.PLACEHOLDER
,MonochromaticImage.PLACEHOLDER
,SmallImage.PLACEHOLDER
,PhotoImage.PLACEHOLDER
öğelerini ekledik. Bu değerlerin yalnızcaNoDataComplicationData
yer tutucu bağlamında kullanılmasına izin verilir. Seçilirse bu yer tutucuların gri kutular/yaylarla oluşturulması önerilir. (I6285d) - Referans Anında Arama'dan sonraki, özelliğin herhangi bir alanının değişebileceği bir sonraki Anında Arama'yı bildiren
ComplicationData.getNextChangeInstant
ekledik. Bu, komplikasyon güncellemelerine ilişkin çerçeveleri planlamak için dahili olarak kullanılır. Örneğin, bir kadran normalde dakikada bir güncelleniyorsa, kol saatini durdurma özelliğini ayarlamak onun saniyede bir güncellenmesine neden olur. (I7ceb2) EditorSession.watchFaceId
artık tüm API düzeylerinde kullanılabilir. Ayrıca değeri artık her zamanWatchState.watchFaceInstanceId
ile tutarlı olacaktır. (I323b9)- Temel sorun çerçevede çözüldüğü için
getPendingIntentForTouchEvent
API artık gerekli değildir. Bu nedenle ilgili tüm API'ler kaldırılmıştır. Ana sayfa düğmesine yakın zamanda basılmış olsa bile kadranlarınPendingIntents
ürününün etkinleşmesi için özel bir şey yapmasına gerek yoktur. (I1f2e8) - Oluşturma işlemi ekran görüntüsü için yapıldıysa doğru olacak
RendererParameters.isForScreenShot
değerini ekledik. Animasyonlu bazı saat yüzlerinin en iyi sonuçları elde etmek üzere ayarlamalar yapmak için bunu bilmesi gerekir. (I96d99) - Sorunun ne olduğuyla ilgili fikir vermek için
WatchFaceException
etiketineWatchFaceExceptionReason
ekledik. (I01d15) ComplicationDataSourceService.onImmediateComplicationRequest
kaldırıldı. Bunun yerine, sağlayıcının hızlı bir şekilde yanıt vermesi (ideal olarak < 100 ms. içinde yanıt vermesi) gerektiğini belirtmek içinComplicationRequest.immediateResponseRequired
eklendi. Bu işlevin, ayrıcalıklıcom.google.android.wearable.permission.USE_IMMEDIATE_COMPLICATION_UPDATE
izninin arkasında korunduğunu unutmayın. (Ie6b23)- Core ve appcompat içindeki null değer, Tiramisu DP2'yle (I0cbb7) eşleşecek şekilde güncellendi
Hata Düzeltmeleri
- Şema doğrulaması başarısız olursa kadran uygulaması bir istisnayla kilitleniyor (Ia400f)
Sürüm 1.1.0-alpha03
9 Şubat 2022
androidx.wear.watchface:watchface-*:1.1.0-alpha03
yayınlandı. Sürüm 1.1.0-alpha03 bu kayıtları içerir.
API Değişiklikleri
- Hiyerarşik stil şemalar için deneysel destek ekledik.
androidx.wear.watchface.style.UserStyleSetting.Option
öğesine, subSettings başlangıçta yalnızcaListOption
tarafından kullanılan yeni bir mülk ekledik. Bu, stiller hiyerarşisinin Düzenleyici kullanıcı arayüzleri tarafından kullanılmak üzere açıklanmasına olanak tanır. Temel UserStyle değiştirilmez veMap<String, ByteArray>
olarak kullanılmaya devam eder. (Iaf6f4) - Kadranın sistem durumu yer paylaşımının oluşturulmasını yapılandırmasına olanak tanıyan
WatchFace.OverlayStyle
özelliğini ekledik. (I8520d) CanvasRenderer
için isteğe bağlı yeni bir oluşturucu parametresi (clearWithBackgroundTintBeforeRenderingHighlightLayer
) kullanıma sunduk. True (doğru) değerine ayarlanırsa tuval, arka plan tonlaması rengiyle temizlenir. (Ie01e5)- Özellik veri kaynaklarının herhangi bir yapılandırma olmadan varsayılan bir değer sağlayabileceklerini belirtmesine olanak tanıyan
androidx.watchface.complications.datasource.DEFAULT_CONFIGURATION_SUPPORTED
meta veri anahtarı eklendi (Icc0d4) - Kadran düzenlenirken hem etkileşimli hem de gözetimsiz bir örnek olması yaygın bir durumdur. Bellekten tasarruf etmenize yardımcı olmak için kadran oluşturucunun örnekler arasında sabit veriler (ör. dokular ve gölgelendiriciler) paylaşmasına olanak tanıyan
Renderer.SharedAssets
özelliğini kullanıma sunduk.GlesRenderer.setEglConfig
veGlesRenderer.setEglDisplay
desteği sonlandırıldığı için bunların hiçbir zaman ayarlanabilir olması amaçlanmamıştır ve böyle yapılması tanımlanmamış davranışa yol açacaktır. (I0d9e7) setNameResourceId
vesetScreenReaderNameResourceId
öğelerini (referans dizesi kaynakları)ComplicationSlot.Builder
veandroidx.wear.watchface.client.ComplicationSlotState
reklam grubundaki karşılık gelen alıcıları ekledik. Bu, sistemin, düzenleyicilerde ve ekran okuyucularda kullanmak üzere ComplicationSlots adlarını getirmesine olanak tanır. (If6c6a)WatchfaceMetadataClient.getUserStyleSchema
vegetComplicationSlotMetadataMap
artıkRemoteException
yerineWatchFaceException
fırlatıyor. (I86f11)onSynchronousComplicationRequest
veComplicationDataSourceService
içindeki ilgili işlevleronImmediateComplicationRequest
olarak yeniden adlandırıldı... (I87ba0)- Kadran düzenleyicilerinin, tamamlayıcı düzenleyicilere kıyasla çok daha az ekran alanı vardır. Bu nedenle, kadran düzenleyicilerinde farklı simgelerin desteklenmesi önerilir. Bu yama, tüm UserStyleSettings ve uygun olduğu yerlerde Option sınıflarına
OnWatchEditorData
(şu anda yalnızca bir simge içerir) ekler. (If1886) - Daha iyi java birlikte çalışabilirliği için ListenableGlesRenderer oluşturucusuna
@JvmOverloads
öğesini ekledik. (I2974a)
Hata Düzeltmeleri
ListenableGlesRenderer
kurucusu doğru şekilde@Throws(GlesException::class)
olarak işaretlendi ve bu sınıfı Java'da genişletmek artık mümkün. (Iac6d0)PhotoImageComplicationData
TapAction'ın doğru işlenememesiyle ilgili hata düzeltildi (I1cc30)
Sürüm 1.1.0-alpha02
12 Ocak 2022
androidx.wear.watchface:watchface-*:1.1.0-alpha02
yayınlandı. Sürüm 1.1.0-alpha02 bu kayıtları içerir.
Yeni Özellikler
- Hata ayıklama ve test işlemlerine yardımcı olmak için
ComplicationData
ve ilgili alt sınıflar artık karma kodunu, eşittir ve toString yöntemlerini geçersiz kılarak bunların daha kolay kullanılmasını sağlamaktadır.
API Değişiklikleri
WatchfaceMetadataClient
yöntemleri bir kez daha uygun durumlardaRemoteExceptions
hatası vererek istemci kodunun kadrandaki hataları yakalamasını kolaylaştırır. (I78785)ComplicationData
ve alt sınıflar artık karma kodu, eşittir ve toString özelliklerine sahip. (I24bc6)
Sürüm 1.1.0-alpha01
15 Aralık 2021
androidx.wear.watchface:watchface-*:1.1.0-alpha01
yayınlandı. Sürüm 1.1.0-alpha01 bu kayıtları içerir.
Yeni Özellikler
UserStyleSchema
veComplicationSlots
artık XML'de tanımlanabilir. Bu, kadran yapısını kolaylaştırır. Ayrıca, meta verileri almak için hizmete bağlanması gerekmediğindenWatchFaceMetadataClient
sorguları daha hızlıdır.WatchFaceMetadataClient
veListenableWatchFaceMetadataClient
artık deneysel değildir ve kararlı API'lerin bir parçası olacaktır. Sistem, isteğe bağlı olarak, her biri kullanıcı tanımlı farklı stil seçeneklerine sahip, kadranların birden fazla örneğini destekleyebilecektir. Bunlar, saat yüzü seçicide gösterilir. Bunu etkinleştirmek için kadranın manifest dosyasında aşağıdaki meta veri etiketini içermesi gerekir.<meta-data android:name="androidx.wear.watchface.MULTIPLE_INSTANCES_ALLOWED" android:value="true" />
Bazı kadranlarda bu durum ve birden fazla örneği desteklemek amacıyla kadranların örnek kimliği artık
WatchState.watchFaceInstanceId
aracılığıyla belirtilemez.UserStyle
Özelliklerin yüklendikten hemen sonra görüntülenmesi için
ComplicationData
önbelleğe alınıyor.ComplicationData
bazen sistem tarafından bellekte önbelleğe alınır, bazen de kadran kitaplıkları tarafından serileştirilir. Serileştirildiğinde ilişkili TapAction kaybolur.Bu durumdaComplicationData.tapActionLostDueToSerialization
,true
değerini döndürür ve kadranın, dokunulamayacağını belirtmek için özelliği farklı bir şekilde (ör. gri veya yarı şeffaf) oluşturması gerekir. Sistem en kısa sürede güncellenmişComplicationData
öğesinitapAction
ile gönderecektir.Bazı
ComplicationData
özelliklerinin uzun süre önbellekte tutulmaması gerekiyor. Bunu desteklemek için daha genel bir özellik (ComplicationDataTimeline
) ekledik. Bu, önbelleğe alınabilen ve otomatik olarak güncellenebilen saat yüzüne yayınlanacak bir zaman sınırlamalıComplicationData
dizisi sağlamak için kullanılabilir. Örneğin, bugünün farklı saatlerdeki hava durumu tahmini veya yaklaşan birden çok takvim etkinliği.ComplicationRequestListener
, bu verileri döndürmek için kullanabileceğiniz yeni bironComplicationDataTimeline
yöntemiyle genişletildi.Birincil ve ikincil veri kaynakları için
ComplicationType
belirtebileceğiniz şekildeDefaultComplicationDataSourcePolicy
uzatıldı.Saat kadranı göründüğü ve harici olduğu durumlarda, özelliğin normalden daha yüksek sıklıkta güncellendiği eşzamanlı özellik sağlayıcıları için destek ekledik. Not: Senkronize özellik sağlayıcılarının, bellek yetersizliği sorunları nedeniyle sınırlı kullanımı olabilir.
PendingIntentTapListener
değişiklikleri büyük olasılıkla geri döndürülecektir çünkü temel sorunu çözdük (ana sayfa düğmesine basıldıktan sonra saat yüzünün etkinlikleri 5 saniye boyunca başlatması mümkün değildir).
API Değişiklikleri
ComplicationData.isCached
,tapActionLostDueToSerialization
olarak değiştirildi. Bu, özellik alanının dokunulamayacağını belirtmek için farklı şekilde oluşturulması gerekip gerekmediğini belirlerken daha yararlı olur. (I6de2f)ComplicationDataTimeline
,wear-complication-data-source
koleksiyonuna eklendi. Bu, önbelleğe alınabilen ve otomatik olarak güncellenebilen saat yüzüne yayınlanacak bir zaman sınırlamalıComplicationData
dizisi sağlamak için kullanılabilir. Örneğin, bugünün farklı saatlerdeki hava durumu tahmini veya yaklaşan birden çok takvim etkinliği.ComplicationRequestListener
, bu verileri döndürmek için kullanabileceğiniz yeni bironComplicationDataTimeline
yöntemiyle genişletildi. Veri kaynağı hizmetlerini askıya almak için yeni bir kotlin sarmalayıcıSuspendingTimelineComplicationDataSourceService
kullanıma sunuldu. (Idecdc)PendingIntentTapListener
veWatchFaceControlClient.getPendingIntentForTouchEvent
eklendi. Bu, çerçevenin ana sayfa düğmesine bastıktan sonra 5 saniye boyunca yeni etkinlik başlatmayı engellediği bir sorunu çözmek için dokunma işlemlerine yanıt olarak niyet başlatması gereken kadranlara yardımcı olabilir. (I98074)- Kadran başına
ComplicationData
önbelleği kullanıma sunuldu. Bunun amacı, sistem bunları güncelleyene kadar saat yüzünün yükleme sonrasında bilinen son komplikasyon veri değerlerini göstermesini sağlamaktır. OEM'lere yönelik yeni bir API yöntemiWatchFaceControlClient.hasComplicationCache
kullanıma sunulmuştur. Bu durum, sistemin kadranlara özellikler gönderme stratejisini etkileyebilir. Buna ek olarak,ComplicationData
birisCached
özelliğine sahiptir.tapAction
önbelleğe alınamadığı ve önbelleğe alınan bir komplikasyondanull
olacağı için önbelleğe alınan özelliklerin farklı şekilde oluşturulması önerilir. (I404b0) - Kadranın örnek kimliğine artık
WatchState.watchFaceInstanceId
üzerinden ulaşabilirsiniz. Çoğu kadran bunu kullanmak zorunda değildir. Ancak Şemada kayıtlı olmayan kadran durumu bilgisi, kadran örneğini tanımlamak için kullanılacak anahtardır. Bu konuda destek alabilmek için,WatchFaceControlClient.createHeadlessWatchFaceClient
numaralı telefonu ararken artık bir kimlik sağlayabilirsiniz. (I1ff98) - Birincil, ikincil sağlayıcı ve yedek sistem sağlayıcı için varsayılan
ComplicationTypes
değerini ayarlama olanağıylaDefaultComplicationDataSourcePolicy
genişletildi.ComplicationSlot.defaultDataSourceType
desteği sonlandırıldı. (If0ce3) ComplicationSlot.configExtras
artık değişebilir veEditorSession.openComplicationDataSourceChooser()
çağrılmadan önce güncellenebilir. (I6f852)WatchFace.setComplicationDeniedDialogIntent
vesetComplicationRationaleDialogIntent
eklendi. Bu amaçlar, özellik izinleri istemeden önce gerekçe iletişim kutusu ve izinler reddedildiğinde bir özelliği düzenlemeye çalışırken karmaşıklık izni gerektiğini açıklayan başka bir iletişim kutusu olacak şekilde başlatılır (sağlayıcı seçici açılmaz ve bu nedenle iletişim kutusunu açılması gerekir). (I3a29c)UserStyleSchema
veComplicationSlots
artık XML'de tanımlanabilir. Bu, kadran yapısını basitleştirir ve meta verileri almak için hizmete bağlanmasına gerek olmadığındanWatchFaceMetadataClient
sorgularının daha hızlı olmasını sağlar. (I85bfa)- Müşterinin, kadranın
getPendingIntentForTouchEvent
özelliğini destekleyip desteklemediğini belirleyebilmesi içinInteractiveWatchFaceClient.supportsPendingIntentForTouchEvent
eklendi. (I0b917) WatchFaceMetadataClient
veListenableWatchFaceMetadataClient
artık deneme aşamasında değil. Bu etiketler, mümkün olduğunda kadrana bağlı bir dosya açmadan kadran meta verilerini etkili bir şekilde elde etmek için kullanılabilir. (Ibb827)- Eşzamanlı özellik (komplikasyon) sağlayıcıları için destek eklendi. Bu destek, saat kadranı görünür ve ambiyans dışında olduğunda, özelliği (saniyede bir defaya kadar) normalden daha yüksek bir sıklıkta güncellemiştir. Bunu kullanmak için sağlayıcının manifest dosyasına yeni bir
androidx.wear.watchface.complications.data.source.SYNCHRONOUS_UPDATE_PERIOD_SECONDS
meta veri etiketi eklemesi veonSynchronousComplicationRequest
politikasını geçersiz kılması gerekir. Veri kaynağının yapısına bağlı olarak, komplikasyonun ne zaman etkileşimli moda girip çıktığıyla ilgili bildirim almak içinonStartSynchronousComplicationRequests
veonStopInteractiveComplicationRequests
özelliklerinin geçersiz kılınması da gerekebilir. (I8fe9d)
Sürüm 1.0
Sürüm 1.0.1
9 Şubat 2022
androidx.wear.watchface:watchface-*:1.0.1
yayınlandı. 1.0.1 sürümü bu kayıtları içerir.
Hata Düzeltmeleri
PhotoImageComplicationData
TapAction'ın doğru işlenememesiyle ilgili hata düzeltildi (I1cc30)
Sürüm 1.0.0
1 Aralık 2021
androidx.wear.watchface:watchface-*:1.0.0
yayınlandı. 1.0.0 sürümü bu kayıtları içerir.
1.0.0'ın Temel Özellikleri
androidx.wear.watchface
paketi, WearOS kadranların geliştirilmesi için önerilen yeni kitaplıktır. Eski Giyilebilir Cihaz Destek Kitaplığı'na kıyasla çok sayıda yeni özellik içeriyor.
- Kullanıcı stili (ör. renk paletini, kolların stilini, saat işaretlerinin görünümünü vb. değiştirmek için) doğrudan kitaplık tarafından desteklenmektedir (bkz.
androidx.wear.watchface.style
). androidx.wear.watchface.editor kullanarak kadran üzerinde düzenleyici geliştirmek artık çok daha kolay ve kadranınız ekstra kod yazmaya gerek kalmadan sistem tamamlayıcı uygulamasından düzenlenebilir. - Hazırlanan en iyi uygulamalar. Kitaplık, özellikler için ekran okuyucu içerik etiketlerini otomatik olarak oluşturur (kendi etiketlerinizi de ekleyebilirsiniz) ve pil ömrünü uzatmak için, kare hızı pil azaldığında ve şarj edilmediğinde otomatik olarak düşer.
- Özellikle, standart metinlerin büyük bir kısmının kitaplığa taşındığı özelliklerde, kadranı geliştirmek için daha az kod gerekir.
Hata Düzeltmeleri
EditorSession.userStyle.compareAndSet
(I6f676) sorununu düzeltin- Kadranınızda çok kısa gecikmeleri düzeltme (Iffb97)
- Kullanıcı arayüzü iş parçacığında
InteractiveWatchFaceImpl.onDestroy
gönder (I83340) - Yayın alıcılarıyla ilgili çeşitli sorunları düzeltme (I7d25f)
Sürüm 1.0.0-rc01
3 Kasım 2021
androidx.wear.watchface:watchface-*:1.0.0-rc01
yayınlandı. 1.0.0-rc01 sürümü bu kayıtları içerir.
Hata Düzeltmeleri
Akış taşıma işlemleriyle bozulan dump() (adb shell dumpsys tarafından adlandırılır) düzeltildi. (087cf9e)
writeDirectBootPrefs öğelerinin doğru sıralandığından emin olun. writeDirectBootPrefs öğelerinin her zaman initStyleAndComplications öğesinden sonra çalışmasını istiyoruz. Aksi takdirde, kullanıcı arayüzü iş parçacığının başlatılmasını geciktirme riskiyle karşı karşıya kalırız.(37650ac)
Renderer.onDestroy'un çağrıldığından emin olun. Oluşturucunun oluşturulduğu ancak WF başlatma işleminin tamamlanmadığı ve Engine.onDestroy'un çağrıldığı senaryoda, Renderer.onDestroy'u çağırmamız gerekir. (f9952dc)
isBatteryLowAndNot Charge olarak optimizasyon/düzeltme işlemi gerçekleştiriliyor. Bu yama, isBatteryLowAndNot Charge adlı özelliğinin ilk kurulumunu daha erkene taşıyor. Böylece, createWatchFace ile paralel olarak yapılabilir. Ayrıca şu anda ACTION_POWER_DISCONNECTED adlı parçayı da dinliyoruz. (ddffd80
InteractiveWatchFaceClientImpl.isConnectionAlive işlevini kapattıktan sonra yanlış olacak şekilde (ab9774e)
Sürüm 1.0.0-beta01
27 Ekim 2021
androidx.wear.watchface:watchface-*:1.0.0-beta01
yayınlandı. 1.0.0-beta01 sürümü bu kayıtları içerir.
Sürüm 1.0.0-alpha24
13 Ekim 2021
androidx.wear.watchface:watchface-*:1.0.0-alpha24
yayınlandı. Sürüm 1.0.0-alpha24 bu kayıtları içerir.
API Değişiklikleri
androidx.wear.watchface.complications
paketindeki sınıflar yeni birwear:watchface:watchface-complications
projesine taşındı. Bu durumda, kopya sınıflarla ilgili hatalar alacağınız için bu kitaplığı vewear:watchface:watchface-complications-data
uygulamasının önceki alfa sürümlerini dahil edemeyeceğinizi unutmayın. (I97195)- Renderer.dump'ın adı Renderer.onDump olarak değiştirildi ve bunlara @UiThread ek açıklaması eklendi. (I44845)
InteractiveWatchFaceClient.addWatchFaceReadyListener
adıaddOnWatchFaceReadyListener
,removeWatchFaceReadyListener
deremoveOnWatchFaceReadyListener
olarak yeniden adlandırıldı. (I48fea)- EditorSession
getComplicationsPreviewData
vegetComplicationsDataSourceInfo
artık askıya alma işlevleri değil, değerleri başlangıçta null olanStateFlow<>
mülkleridir. ListenableEditorSession'dagetListenableComplicationPreviewData
vegetListenableComplicationsProviderInfo
, temel sınıftaki yeniStateFlow<>
nesnelerinin yerine kaldırıldı. Java kodundaki değişiklikleri dinlemeniz gerekiyorsaLiveData<>
biçimine dönüştürmek içinandroidx.lifecycle.FlowLiveDataConversions.asLiveData
kullanmayı düşünün. (Ic5483)
Sürüm 1.0.0-alfa23
29 Eylül 2021
androidx.wear.watchface:watchface-*:1.0.0-alpha23
yayınlandı. 1.0.0-alpha23 sürümü bu kayıtları içerir.
Yeni Özellikler
Kadran kitaplığı artık tek bir kitaplık grubu haline geldi. Sonuç olarak kitaplıklar taşındı ve gradle içe aktarmalarınızı aşağıdaki gibi güncellemeniz gerekiyor:
Eski | Yeni |
---|---|
androidx.wear:wear-complications-data |
androidx.wear.watchface:watchface-complications-data |
androidx.wear:wear-complications-data-source |
androidx.wear.watchface:watchface-complications-data-source |
androidx.wear:wear-watchface |
androidx.wear.watchface:watchface |
androidx.wear:wear-watchface-complications-rendering |
androidx.wear.watchface:watchface-complications-rendering |
androidx.wear:wear-watchface-client |
androidx.wear.watchface:watchface-client |
androidx.wear:wear-watchface-client-guava |
androidx.wear.watchface:watchface-client-guava |
androidx.wear:wear-watchface-data |
androidx.wear.watchface:watchface-data |
androidx.wear:wear-watchface-editor |
androidx.wear.watchface:watchface-editor |
androidx.wear:wear-watchface-editor-guava |
androidx.wear.watchface:watchface-editor-guava |
androidx.wear:wear-watchface-guava |
androidx.wear.watchface:watchface-guava |
androidx.wear:wear-watchface-style |
androidx.wear.watchface:watchface-style |
API Değişiklikleri
- Ayrı
androidx.wear
kadranı ve özellikler kitaplıklarınıandroidx.wear.watchface
kitaplık grubuna taşıyın. (b25f3c0) - Kadran düzenleyicisinin gözetimsiz düzenlemeyi destekleyip desteklemediğini müşteriye bildirmek için EditorRequest.canWatchFaceSupportHeadlessEditing eklendi. Asop/1756809 desteği eklendi ancak gelecekteki tüm kadranlar için doğru değeri döndürecek olan bu hatada bazı yanlış negatifler olacaktır. (ca55590)
- Oluşturucu artık, ABD shell dumpsys etkinlik hizmeti WatchFaceService tarafından oluşturulan bilgilere özel veri eklemek için geçersiz kılınabilen bir dump() yöntemine sahip. (95235f9)
- InteractiveWatchFaceClient.addWatchFaceReadyListener artık önce yürütücüyü belirtir. (563ac2f)
- StateFlowCompatHelper kaldırıldı. Bunun yerine asLiveData (androidx.lifecycle.asLiveData) kullanılmalıdır. (bd35d3)
- CurrentUserStyleRepository.userStyle artık değişken değil. (I44889)
- WatchFaceReadyListener, OnWatchFaceReadyListener olarak yeniden adlandırıldı. (Ic12a9)
Hata Düzeltmeleri
- InteractiveInstanceManager.deleteInstance'ın onDestroy'u çağırması, InteractiveWatchFaceImpl'in çöp toplamasını sağlamak için gereklidir.(fce4af8, b/199485839)