اخبار محصول

با «ارسال صفحه ساعت»، Androidify را به Wear OS می‌آوریم

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

 

 

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

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

صفحه ساعت Androidify

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

demonstration.gif

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

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

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

image.png

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

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

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

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

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

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

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

image.png

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

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

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

پس‌از ترکیب الگو و چهرک، از کیت گردآورنده دارایی قابل‌حمل (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، بسته به سناریو، استفاده می‌کند: «ارسال صفحه ساعت» مفهوم «جایگاه‌ها» را تعریف می‌کند - هر برنامه در هر زمان می‌تواند چند صفحه ساعت نصب‌شده داشته باشد. برای Wear OS 6، این مقدار درواقع ۱ است.

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

تنظیم صفحه ساعت فعال

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

«ارسال صفحه ساعت» اجازه زمان اجرای جدیدی را معرفی می‌کند که برای اینکه برنامه‌ها بتوانند به این هدف دست یابند باید اعطا شود:

com.google.wear.permission.SET_PUSHED_WATCH_FACE_AS_ACTIVE

پس‌از دریافت این اجازه، می‌توان روش wfpManager.setWatchFaceAsActive() را فراخوانی کرد تا صفحه ساعت نصب‌شده به‌عنوان صفحه ساعت فعال تنظیم شود.

بااین‌حال، ملاحظاتی وجود دارد که Androidify باید آن‌ها را درنظر بگیرد:

  • فقط یک‌بار می‌توان از setWatchFaceAsActive استفاده کرد.
  • پس‌از اینکه کاربر SET_PUSHED_WATCH_FACE_AS_ACTIVE را رد کرد، نمی‌توانید دوباره درخواست کنید.
  • ‫Androidify ممکن است ازقبل کنترل صفحه ساعت فعال را دراختیار داشته باشد.

برای جزئیات بیشتر، ببینید Androidify چگونه منطق تنظیم فعال را پیاده‌سازی می‌کند.

شروع کار با «ارسال صفحه ساعت» برای Wear OS

‫Watch Face Push یک API چندمنظوره است که هم برای بهبود Androidify و هم برای ساخت بازارگاه‌های صفحه ساعت با ویژگی‌های کامل مناسب است.

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

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

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

همچنین ویدیو همراه را برای نگاهی عمیق‌تر به نحوه آوردن Androidify به Wear OS بررسی کنید!

بی‌صبرانه منتظریم ببینیم با «ارسال صفحه ساعت» چه چیزی خلق می‌کنید!

نوشته:
ادامه خواندن