Wear OS, karolarınızda ve özelliklerinizde görünen bilgilerde yapılan dinamik güncellemeleri destekler.
Dinamik ifadeleri kullanarak, uygulamanızın bir yüzeyinde görünen verileri (ör. bir karo veya komplikasyon) belirli bir veri kaynağına bağlayabilirsiniz. Platformun okuyabileceği nabız verileri, böyle bir veri kaynağına örnek gösterilebilir. Bu bağlantıyı oluşturduktan sonra sistem, karolarınızdaki ve özelliklerinizdeki verileri otomatik olarak günceller.
Dinamik veri bağlantıları oluşturma
Dinamik veri bağlama oluşturmak için dinamik veri türü kullanan bir değişken tanımlayın. Bu değişkeni, kullanmak istediğiniz veri akışıyla ilişkilendirin.
Örneğin, aşağıdaki kod snippet'inde gösterildiği gibi sistem saati ve sağlık bilgileriyle ilgili değerleri getirebilirsiniz.
Kotlin
val systemTime = DynamicInstant.platformTimeWithSecondsPrecision() val steps: DynamicInt32 = PlatformHealthSources.dailySteps()
Java
DynamicInstant systemTime = DynamicInstant.platformTimeWithSecondsPrecision(); DynamicInt32 steps = PlatformHealthSources.dailySteps();
Ayrıca, aşağıdaki snippet'te gösterildiği gibi, sabit ifadelerden dinamik değerler oluşturabilir ve herhangi bir dinamik değer üzerinde aritmetik işlemler gerçekleştirebilirsiniz:
Kotlin
val dynamicValue = DynamicInt32.constant(1).plus(2)
Java
DynamicInt32 dynamicValue = DynamicInt32.constant(1).plus(2)
Olası dinamik veri türlerinin listesi
Wear OS, aşağıdaki dinamik veri türlerini destekler:
Ayrıca, aşağıdakiler gibi yerleşik özellikleri kullanarak veri türünü dönüştürebilirsiniz:
DynamicInt32
,format()
kullanarakDynamicString
biçimine dönüştürmeyi destekler.DynamicDuration
, bir sürenin saniye kısmı gibi belirli parçalarıDynamicInt32
nesneleri olarak çıkarmanıza olanak tanır.
Her ekranda sınırlı sayıda dinamik ifade kullanın
Sistemin, belirli bir ekranda aynı anda işleyebileceği dinamik ifade sayısı konusunda bir sınır vardır. Sistem, ek dinamik ifadeleri statik değerlere dönüştürür.
Wear OS sabit ifadeleri de dinamik ifadeler olarak kabul eder. Örneğin, aşağıdaki kod snippet'i 4 dinamik ifade içermektedir:
plus()
işlemi.animate()
işlemi.constant(1)
ifadesi.plus()
dinamik ifadesinde2
değeri ile belirtilenconstant(2)
ifadesi.
DynamicInt32.constant(1).plus(2).animate()