اخبار محصول

آوردن اندرویدای به سیستم عامل Wear OS با قابلیت Watch Face Push

۳ دقیقه مطالعه
Garan Jenkin
مهندس روابط توسعه‌دهنده

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

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

یک واچ فیس اندرویدفای

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

تظاهرات.gif

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

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

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

تصویر.png

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

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

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

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

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

ایجاد قالب‌های صفحه ساعت

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

تصویر.png

یک الگوی صفحه ساعت اندرویدفای در طراح صفحه ساعت

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

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

پس از ترکیب الگو و آواتار ، از کیت کامپایلر دارایی قابل حمل (بسته) برای مونتاژ یک APK استفاده می‌شود.

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

به عنوان آخرین مرحله قبل از انتقال، APK توسط اعتبارسنج Watch Face Push بررسی می‌شود.

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

این توکن برای نصب توسط ساعت مورد نیاز است.

ارسال صفحه ساعت

برنامه Androidify در Wear OS از WearableListenerService برای گوش دادن به رویدادهای لایه داده Wearable استفاده می‌کند.

برنامه تلفن، با استفاده از ترکیبی از MessageClient برای تنظیم فرآیند و سپس ChannelClient برای پخش APK، صفحه ساعت را منتقل می‌کند .

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

پس از دریافت واچ فیس در دستگاه Wear OS، برنامه Androidify از API جدید Watch Face Push برای نصب واچ فیس استفاده می‌کند:

  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 مفهومی از «slots» را تعریف می‌کند - اینکه یک برنامه مشخص می‌تواند در هر زمان چند واچ فیس نصب کند. برای Wear OS 6، این مقدار در واقع ۱ است.

رویکرد اندرویدایفای این است که اگر فضای خالی وجود داشته باشد، واچ فیس را نصب می‌کند و در غیر این صورت، واچ فیس‌های موجود با واچ فیس جدید جایگزین می‌شوند.

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

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

واچ فیس پوش یک مجوز زمان اجرا جدید معرفی می‌کند که برای اینکه برنامه‌ها بتوانند به آن دست یابند، باید اعطا شود:

com.google.wear.permission.SET_PUSHED_WATCH_FACE_AS_ACTIVE

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

با این حال، Androidify باید چندین نکته را در نظر بگیرد:

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

برای جزئیات بیشتر، به نحوه پیاده‌سازی منطق set active در Androidify مراجعه کنید.

با Watch Face Push برای Wear OS شروع کنید

واچ فیس پوش یک API همه کاره است که به همان اندازه که برای بهبود اندرویدفای مناسب است، برای ساخت بازارهای واچ فیس با امکانات کامل نیز مناسب است.

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

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

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

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

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

    نوشته شده توسط:

    ادامه مطلب