يتوافق Wear OS مع التحديثات الديناميكية للمعلومات التي تظهر في المربّعات والإضافات.
باستخدام التعبيرات الديناميكية، يمكنك ربط البيانات التي تظهر على سطح تطبيقك، مثل مربّع أو إضافة، بمصدر بيانات معيّن. مثال على مصدر البيانات هذا هو بيانات معدل ضربات القلب التي يمكن للمنصة قراءتها. بعد إنشاء هذا الربط، يقوم النظام بتحديث البيانات الموجودة في المربّعات والإضافات تلقائيًا.
إنشاء عمليات ربط بيانات ديناميكية
لإنشاء ربط بيانات ديناميكي، حدِّد متغيّرًا يستخدم نوع بيانات ديناميكي. اربط هذا المتغيّر بمصدر البيانات الذي تريد استخدامه.
على سبيل المثال، يمكنك استرجاع القيم المتعلقة بساعة النظام والمعلومات الصحية، كما هو موضّح في مقتطف الرمز التالي.
Kotlin
val systemTime = DynamicInstant.platformTimeWithSecondsPrecision() val steps: DynamicInt32 = PlatformHealthSources.dailySteps()
Java
DynamicInstant systemTime = DynamicInstant.platformTimeWithSecondsPrecision(); DynamicInt32 steps = PlatformHealthSources.dailySteps();
يمكنك أيضًا إنشاء قيم ديناميكية من التعبيرات الثابتة وإجراء عمليات حسابية على أي قيمة ديناميكية، كما هو موضّح في المقتطف التالي:
Kotlin
val dynamicValue = DynamicInt32.constant(1).plus(2)
Java
DynamicInt32 dynamicValue = DynamicInt32.constant(1).plus(2)
قائمة بأنواع البيانات الديناميكية المحتملة
يتوافق Wear OS مع أنواع البيانات الديناميكية التالية:
بالإضافة إلى ذلك، يمكنك تحويل نوع البيانات باستخدام إمكانيات مضمّنة، مثل ما يلي:
- تتيح
DynamicInt32
إمكانية التحويل إلىDynamicString
باستخدامformat()
. - تتيح لك
DynamicDuration
استخراج أجزاء محدّدة، مثل جزء الثواني من مدة معيّنة، مثل كائناتDynamicInt32
.
استخدام عدد محدود من التعبيرات الديناميكية على كل شاشة
يضع النظام حدًا لعدد التعبيرات الديناميكية التي يمكنه معالجتها في آنٍ واحد على شاشة معيّنة. يحوّل النظام أي تعبيرات ديناميكية إضافية إلى قيم ثابتة.
يعتبر Wear OS التعبيرات الثابتة تعبيرات ديناميكية أيضًا. على سبيل المثال، يحتوي مقتطف الرمز التالي على 4 تعبيرات ديناميكية:
- عملية
plus()
. - عملية
animate()
. - تمثّل هذه السمة التعبير
constant(1)
. - تمثّل هذه السمة التعبير
constant(2)
المضمّن في القيمة2
في التعبير الديناميكيplus()
.
DynamicInt32.constant(1).plus(2).animate()
أفلام مُقترَحة لك
- ملاحظة: يظهر نص الرابط عند إيقاف JavaScript
- نقل البيانات إلى مساحات اسم ProtoLayout
- الآثار الجانبية في Compose
- مرجع AGSL السريع