توفير تطبيق Androidify على Wear OS من خلال ميزة Watch Face Push
يستغرق الاطِّلاع على المقال 3 دقائق
قبل بضعة أشهر، أعدنا إطلاق Androidify كتطبيق لإنشاء روبوتات Android مخصّصة. يحوّل تطبيق Androidify صورة السيلفي إلى روبوت Android مرح باستخدام Gemini وImagen.
ومع ذلك، بما أنّ Android يشمل أشكال أجهزة متعددة، بما في ذلك أحدث إضافة لدينا، وهي XR، فكّرنا في كيفية نقل متعة Androidify إلى Wear OS.
خلفية شاشة ساعة Androidify
بما أنّ روبوتات Androidify مخصّصة بشكل كبير، فإنّ المكان الطبيعي لعرضها هو خلفية شاشة الساعة. فهي ليست فقط السطح الأكثر ظهورًا، بل هي أيضًا السطح الأكثر شخصية، ما يتيح لك التعبير عن هويتك.
خلفية شاشة ساعة Androidify مخصّصة تم إنشاؤها من صورة سيلفي
يتيح تطبيق Androidify الآن إنشاء خلفية شاشة ساعة ديناميكية داخل تطبيق الهاتف ثم إرسالها إلى ساعتك، حيث سيتم ضبطها تلقائيًا كخلفية شاشة الساعة. ويحدث كل ذلك في غضون ثوانٍ.
التصميم العالي المستوى
عملية إنشاء خلفية شاشة الساعة وتثبيتها من البداية إلى النهاية
لتحقيق تجربة شاملة، يجب دمج عدد من التقنيات معًا، كما هو موضّح في مخطط التصميم العالي المستوى هذا.
في البداية، يتم دمج الصورة الرمزية للمستخدم مع نموذج تنسيق خلفية شاشة الساعة مُعدّ مسبقًا، ثم يتم تجميعها في حزمة APK. يتم التحقّق من صحة ذلك، وسنوضّح الأسباب. - وتم إرسالها إلى الساعة.
عندما تتلقّى الساعة خلفية شاشة الساعة، يتم استخدام Watch Face Push API الجديدة، وهي جزء من Wear OS 6، لتثبيت خلفية شاشة الساعة وتفعيلها.
لنتعرّف على التفاصيل:
إنشاء نماذج لخلفيات شاشة الساعة
يتم إنشاء خلفية شاشة الساعة من نموذج مصمَّم في Watch Face Designer. هذا هو المكوّن الإضافي الجديد في Figma الذي يتيح لك إنشاء خلفيات شاشة ساعة بتنسيق Watch Face Format مباشرةً في Figma.
نموذج خلفية شاشة ساعة Androidify في تطبيق Watch Face Designer
يسمح المكوّن الإضافي بتصدير خلفية شاشة الساعة بطرق مختلفة، بما في ذلك كموارد بتنسيق خلفية شاشة الساعة (WFF). ويمكن بعد ذلك دمجها بسهولة كمواد عرض داخل تطبيق Androidify، لإنشاء خلفية شاشة الساعة النهائية بشكل ديناميكي.
التغليف والتحقّق من الصحة
بعد دمج النموذج مع الأفاتار، يتم استخدام Portable Asset Compiler Kit (Pack) لتجميع حزمة APK.
في Androidify، يتم استخدام Pack كـ مكتبة مجمّعة من رموز برمجية أصلية على الهاتف. لمزيد من التفاصيل حول كيفية تفاعل Androidify مع مكتبة Pack، يُرجى الاطّلاع على مستودع GitHub.
كخطوة أخيرة قبل الإرسال، يتحقّق مدقّق إرسال خلفيات شاشة الساعة من حزمة APK.
يتحقّق هذا المدقّق من أنّ حزمة APK مناسبة للتثبيت. ويشمل ذلك التحقّق من محتوى حِزمة APK للتأكّد من أنّها خلفية شاشة ساعة صالحة، بالإضافة إلى بعض عمليات التحقّق من الأداء. إذا كان صالحًا، سينتج المدقّق رمزًا مميّزًا.
تتطلّب الساعة هذا الرمز المميز لإجراء عملية التثبيت.
إرسال خلفية شاشة الساعة
يستخدم تطبيق Androidify على Wear OS WearableListenerService لرصد الأحداث في "طبقة بيانات الأجهزة القابلة للارتداء".
ينقل تطبيق الهاتف خلفية الساعة باستخدام مزيج من MessageClient لإعداد العملية، ثم ChannelClient لبث حزمة APK.
تثبيت خلفية شاشة الساعة على الساعة
بعد تلقّي خلفية شاشة الساعة على جهاز Wear OS، يستخدم تطبيق Androidify Watch Face Push API الجديد لتثبيت خلفية شاشة الساعة:
val wfpManager =
WatchFacePushManagerFactory.createWatchFacePushManager(context)
val response = wfpManager.listWatchFaces()
try {
if (response.remainingSlotCount > 0) {
wfpManager.addWatchFace(apkFd, token)
} else {
val slotId = response.installedWatchFaceDetails.first().slotId
wfpManager.updateWatchFace(slotId, apkFd, token)
}
} catch (a: WatchFacePushManager.AddWatchFaceException) {
return WatchFaceInstallError.WATCH_FACE_INSTALL_ERROR
} catch (u: WatchFacePushManager.UpdateWatchFaceException) {
return WatchFaceInstallError.WATCH_FACE_INSTALL_ERROR
}يستخدم Androidify الطريقة addWatchFace أو updateWatchFace، حسب السيناريو: يحدّد Watch Face Push مفهوم "الخانات"، أي عدد خلفيات شاشة الساعة التي يمكن تثبيتها من تطبيق معيّن في أي وقت. بالنسبة إلى Wear OS 6، تكون هذه القيمة في الواقع 1.
تتمثّل طريقة عمل تطبيق Androidify في تثبيت خلفية شاشة الساعة إذا كانت هناك مساحة متوفّرة، وإذا لم تتوفّر، يتم استبدال أي خلفية شاشة ساعة حالية بالخلفية الجديدة.
ضبط خلفية شاشة الساعة النشطة
يُعد تثبيت خلفية شاشة الساعة آليًا خطوة رائعة، ولكن يهدف Androidify إلى ضمان أن تكون خلفية شاشة الساعة هي أيضًا خلفية شاشة الساعة النشطة.
تقدّم ميزة Watch Face Push إذن التشغيل الجديد الذي يجب منحه لكي تتمكّن التطبيقات من تحقيق ذلك:
com.google.wear.permission.SET_PUSHED_WATCH_FACE_AS_ACTIVE
بعد الحصول على هذا الإذن، يمكن استدعاء الطريقة wfpManager.setWatchFaceAsActive() لضبط خلفية شاشة الساعة المثبَّتة كخلفية نشطة.
ومع ذلك، هناك عدد من الاعتبارات التي يجب أن يراعيها تطبيق Androidify:
- لا يمكن استخدام
setWatchFaceAsActiveإلا مرة واحدة. - لا يمكن إعادة طلب
SET_PUSHED_WATCH_FACE_AS_ACTIVEبعد أن يرفضه المستخدم. - قد يكون تطبيق Androidify يتحكّم حاليًا في خلفية شاشة الساعة النشطة.
لمزيد من التفاصيل، اطّلِع على كيفية تنفيذ منطق المجموعة النشطة في Androidify.
بدء استخدام ميزة Watch Face Push على Wear OS
Watch Face Push هو واجهة برمجة تطبيقات متعددة الاستخدامات، وهي مناسبة تمامًا لتحسين تطبيق Androidify كما هي مناسبة لإنشاء متاجر متكاملة لخلفيات شاشة الساعة.
ربما لديك تطبيق حالي على الهاتف وتبحث عن فرص إضافية للتفاعل مع المستخدمين وإبهارهم؟
أو ربما أنت مطوّر حالي لخلفيات شاشة الساعة وتريد إنشاء منتدى ومعرض خاصَّين بك من خلال إصدار تطبيق سوق؟
يمكنك الاطّلاع على المراجع التالية:
- Watch Face Push
- تنسيق خلفية شاشة الساعة: يُرجى أيضًا الاطّلاع على التغييرات القادمة على السياسة المتعلّقة بنشر خلفيات شاشة الساعة.
- Watch Face Designer
- مستودع Androidify على GitHub
- بطاقة بيانات تطبيق Androidify على "متجر Play"
يمكنك أيضًا مشاهدة الفيديو المصاحب للتعرّف بشكل أكثر تفصيلاً على كيفية نقلنا تطبيق Androidify إلى Wear OS.
نتطلّع إلى رؤية ما ستصمّمه باستخدام Watch Face Push.
-
أخبار المنتجاتنحن في Google Play ملتزمون بتقديم أفضل تجربة ممكنة للمستخدمين، مع ضمان توفير الأدوات والمرونة اللازمة للمطوّرين لتحقيق النجاح.
Paul Feng • يستغرق الاطّلاع على المقال 3 دقائق -
أخبار المنتجاتفي العام الماضي، أطلقنا ميزة التحقّق من هوية مطوّر تطبيقات Android لتعزيز أمان المنظومة المتكاملة ومنع الجهات المسيئة من إخفاء هويتها لنشر تطبيقات ضارة.
Matthew Forsythe • مدّة القراءة: دقيقتان -
أخبار المنتجاتبدءًا من التراكبات المعزّزة إلى البيئات الغامرة بالكامل، تتوسّع منظومة Android XR المتكاملة بسرعة، وتتوفّر سماعة الرأس Samsung Galaxy XR اليوم.
Stevan Silva, Vinny DaSilva • يستغرق الاطِّلاع على المقال 3 دقائق
يمكنك تلقّي أحدث الإحصاءات حول تطوير تطبيقات Android في بريدك الوارد أسبوعيًا.