قبل بضعة أشهر، أعدنا إطلاق 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 الذي يتيح لك إنشاء خلفيات شاشة الساعة بتنسيق خلفية شاشة الساعة مباشرةً داخل Figma.
نموذج خلفية شاشة ساعة Androidify في Watch Face Designer
يتيح المكوّن الإضافي تصدير خلفية شاشة الساعة بعدة طرق مختلفة، بما في ذلك كموارد بتنسيق Watch Face Format (WFF). ويمكن بعد ذلك دمجها بسهولة كمواد عرض داخل تطبيق Androidify، لإنشاء خلفية شاشة الساعة النهائية بشكل ديناميكي.
التجميع والتحقّق
بعد دمج النموذج والأفاتار، يتم استخدام حزمة Portable Asset Compiler Kit (Pack) لتجميع حزمة APK.
في Androidify، يتم استخدام Pack كمكتبة مجمّعة من رموز برمجية أصلية على الهاتف. لمزيد من التفاصيل حول كيفية تفاعل Androidify مع مكتبة Pack، يُرجى الاطّلاع على مستودع GitHub.
كخطوة أخيرة قبل الإرسال، يتم فحص ملف APK من خلال أداة التحقّق من Watch Face Push.
تتحقّق أداة التحقّق هذه من أنّ ملف 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
- مستودع GitHub لتطبيق Androidify
- بطاقة بيانات Androidify على "متجر Google Play"
ويمكنك أيضًا الاطّلاع على الفيديو المرفق لإلقاء نظرة أكثر تفصيلاً على كيفية نقل Androidify إلى Wear OS.
نتطلّع إلى رؤية ما ستبتكره باستخدام Watch Face Push.
-
أخبار المنتجاتبما أنّ Unity تشغّل أكثر من نصف جميع الألعاب على الأجهزة الجوّالة في جميع أنحاء العالم، فإنّ الانطباعات الأولى مهمة. بالنسبة إلى مطوّري الألعاب، تُعدّ تجربة الإعداد السلسة والموثوقة للاعبين ضرورية لتعزيز معدّل الاحتفاظ باللاعبين من اليوم الأول وزيادة تفاعلهم على المدى الطويل.
Michelle Martin • مدّة القراءة: دقيقة واحدة -
أخبار المنتجاتمن خلال تطوير التطبيقات على Android XR، يمكنك تلبية احتياجات المستخدمين في أي وقت، سواء كانوا يبحثون عن تجربة غامرة بالكامل في المنزل أو تجربة سريعة أثناء التنقل، وذلك من خلال مجموعة واسعة من التطبيقات المكانية. في مؤتمر Android Dev Summit، احتفلنا بإنجاز رائع من خلال إطلاق نظارة XREAL AURA.
Amy Zeppenfeld, Vinny DaSilva • مدّة القراءة: 3 دقائق -
أخبار المنتجاتفي عصر الذكاء الاصطناعي، لم يعُد المستخدمون يكتفون بالنقر على التطبيقات، بل يعبّرون عن أهداف عالية المستوى ويتوقّعون من وكلاء الذكاء الاصطناعي، مثل Gemini، إكمال مهام متعددة الخطوات، أحيانًا على تطبيقات متعددة على أجهزتهم.
Jingyu Shi • مدّة القراءة: 4 دقائق
يمكنك الحصول على آخر الإحصاءات حول تطوير تطبيقات Android في بريدك الوارد أسبوعيًا.