اخبار محصول

آوردن Androidify به Wear OS با Watch Face Push

‫۳ دقیقه برای خواندن
مشاهده نمایه Garan Jenkin
Garan Jenkin مهندس روابط توسعه‌دهندگان

 

 

چند ماه پیش، Androidify را دوباره راه‌اندازی کردیم تا برنامه‌ای برای تولید روبات‌های Android شخصی‌سازی‌شده باشد. Androidify بااستفاده از Gemini و Imagen، عکس سلفی شما را به یک روبات Android بازیگوش تبدیل می‌کند.

بااین‌حال، با توجه به اینکه Android چندین ضریب شکل را دربرمی‌گیرد، ازجمله جدیدترین افزودنی ما، XR، فکر کردیم که چگونه می‌توانیم سرگرمی Androidify را به Wear OS بیاوریم؟

صفحه ساعت Androidify

ازآنجایی‌که ربات‌های Androidify بسیار شخصی‌سازی شده‌اند، مکان طبیعی برای نمایش آن‌ها صفحه ساعت است. این سطح نه‌تنها بیشترین دفعات رؤیت را دارد، بلکه شخصی‌ترین سطح نیز هست و به شما امکان می‌دهد خودتان را معرفی کنید.

demonstration.gif

صفحه ساعت Androidify شخصی‌سازی‌شده، تولیدشده از تصویر سلفی

Androidify اکنون می‌تواند صفحه ساعتی را به‌طور پویا در برنامه تلفن تولید کند و سپس آن را به ساعتتان ارسال کند، جایی که به‌طور خودکار به‌عنوان صفحه ساعت شما تنظیم می‌شود. همه این‌ها در چند ثانیه اتفاق می‌افتد!

طراحی سطح بالا

تصویر.png

جریان سرتاسری برای ایجاد و نصب صفحه ساعت

برای دستیابی به تجربه سرتاسری، باید تعدادی فناوری با یکدیگر ترکیب شوند، همان‌طور که در این نمودار طراحی سطح بالا نشان داده شده است.

ابتدا، چهرک کاربر با الگوی ازپیش موجود قالب صفحه ساعت ترکیب می‌شود و سپس در یک APK بسته‌بندی می‌شود. این معتبر است - به دلایلی که توضیح داده خواهد شد! - و به ساعت ارسال شد.

پس‌از دریافت توسط ساعت، از Watch Face Push API جدید (بخشی از Wear OS 6) برای نصب و فعال کردن صفحه ساعت استفاده می‌شود.

بیایید جزئیات را بررسی کنیم:

درحال ایجاد الگوهای صفحه ساعت

صفحه ساعت از الگویی ایجاد شده است که خودش در طراح صفحه ساعت طراحی شده است. این افزایه Figma جدید ما است که به شما امکان می‌دهد صفحه‌های ساعت قالب صفحه ساعت را مستقیماً در Figma ایجاد کنید.

تصویر.png

الگوی صفحه ساعت Androidify در «طراح صفحه ساعت»

این افزونه امکان صادر کردن صفحه ساعت را به روش‌های مختلف، ازجمله به‌عنوان منابع «قالب صفحه ساعت» (WFF)، فراهم می‌کند. سپس می‌توان این موارد را به‌راحتی به‌عنوان دارایی در برنامه Androidify گنجاند تا صفحه ساعت نهایی به‌صورت پویا ساخته شود.

بسته‌بندی و اعتبارسنجی

پس‌از ترکیب شدن الگو و چهرک، از کیت کامپایلر دارایی قابل‌حمل (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، این مقدار درواقع ۱ است.

رویکرد 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 و هم برای ساختن بازارگاه‌های صفحه ساعت با ویژگی‌های کامل مناسب است.

شاید برنامه تلفن موجودی دارید و به‌دنبال فرصت‌هایی برای تعامل بیشتر و خوشحال کردن کاربرانتان هستید؟

یا شاید توسعه‌دهنده صفحه ساعت هستید و می‌خواهید با انتشار برنامه بازار، انجمن و گالری خودتان را ایجاد کنید؟

به این منابع نگاهی بیندازید:

همچنین ویدیو همراه را ببینید تا با جزئیات بیشتری درباره نحوه آوردن Androidify به Wear OS آشنا شوید!

مشتاقیم ببینیم با Watch Face Push چه چیزی خلق خواهید کرد!

نویسنده:
ادامه خواندن