Wear OS 6 یک API جدید به نام Watch Face Push را معرفی میکند که فرصتهایی را برای موارد استفاده پیشرفتهتر از انتشار چهره ساعت ایجاد میکند.
زمان استفاده از Watch Face Push را مشخص کنید
Watch Face Push یک API در Wear OS است که به برنامهنویس اجازه میدهد مستقیماً چهرههای ساعت را اضافه، بهروزرسانی یا حذف کند. برای توسعه استاندارد صفحه ساعت به آن نیازی نیست.
چهرههای ساعتی که با Watch Face Push استفاده میشوند باید با فرمت Watch Face نوشته شوند. این میتواند شامل صفحههای ساعتی باشد که با استفاده از Watch Face Studio یا هر ابزار دیگری که صفحههای ساعتی را تولید میکند که از فرمت Watch Face استفاده میکنند، طراحی شده باشد.
در حالی که Watch Face Push API به طور بالقوه می تواند به روش های مختلفی مورد استفاده قرار گیرد، جدول زیر باید به عنوان راهنمای موارد استفاده اصلی استفاده شود:
مورد استفاده | راه حل پیشنهادی | پیچیدگی |
---|---|---|
من می خواهم واچ فیس های جداگانه ایجاد کنم و آنها را منتشر کنم. | از فرمت Watch Face، مستقیم یا از طریق ابزاری مانند Watch Face Studio استفاده کنید و آنها را در Google Play منتشر کنید. | کم |
من میخواهم یک برنامه تلفنی ایجاد کنم که به کاربران امکان میدهد چهرههای ساعت را از یک مجموعه انتخابشده انتخاب کنند، یا چهرههای ساعت را برای نصب مستقیم روی ساعت Wear OS خود طراحی و سفارشی کنند. | با استفاده از Watch Face Push API روی ساعت، یک برنامه هم برای ساعت و هم برای تلفن ایجاد کنید. | بالا |
هدف
مورد استفاده متعارف Watch Face Push API برای ایجاد یک برنامه بازار است. از این برنامه، کاربران میتوانند چهرههای ساعت را از مجموعهای انتخابشده در گوشی خود انتخاب کنند و مستقیماً نصب این صفحهها را روی ساعت متصل خود کنترل کنند.
ملاحظات
برای جزئیات بیشتر در مورد ساخت صفحههای ساعت خود، به راهنمای فرمت واچ فیس مراجعه کنید: چهرههای ساعتی که با استفاده از Watch Face Push استفاده میشوند، صفحههای ساعت با فرمت واچ فیس معمولی هستند.
هنگام ساخت صفحه ساعت خود، ملاحظات زیر را در نظر داشته باشید.
نام بسته ها
صفحههای ساعتی که با استفاده از Watch Face Push نصب میشوند باید با قرارداد زیر مطابقت داشته باشند:
<app name>.watchfacepush.<watchface name>
... که در آن <app name>
نام بسته برنامه فراخوانی Watch Face Push API است.
به عنوان مثال، برای برنامهای با نام بسته com.example.mymarketplace
، نامهای زیر بستهبندی چهره ساعت معتبر هستند:
-
com.example.mymarketplace.watchfacepush.watchface1
-
com.example.mymarketplace.watchfacepush.watchface2
-
com.example.mymarketplace.watchfacepush.another_watchface
چهرههای ساعتی که با این قرارداد مطابقت ندارند توسط API رد میشوند.
محتویات بسته
محتوای APK به شدت اجرا می شود. برای اطمینان از مطابقت فرمت Watch Face با محدودیتهای زیر باید دقت کرد: از نظر فنی میتوان APKهایی با فرمت Watch Face تولید کرد که حاوی فایلهای فراداده بیضرر و سایر مصنوعات باشد، که ممکن است برای Google Play قابل قبول باشد، اما از اعتبارسنجی Watch Face Push عبور نمیکند (به زیر مراجعه کنید).
فقط فایلها/مسیرهای زیر در هر APK صفحه ساعت قابل قبول هستند:
-
/AndroidManifest.xml
-
/resources.arsc
-
/res/**
-
/META-INF/**
علاوه بر این، فقط برچسبهای زیر در فایل AndroidManifest.xml
مجاز هستند:
-
<manifest>
-
<uses-feature>
-
<uses-sdk>
-
<application>
-
<property>
-
<meta-data>
در نهایت، بسته باید یک minSdk
حداقل 33
را مشخص کند و تگ <application>
باید ویژگی android:hasCode="false"
را مشخص کند.
اعتبار سنجی
برخلاف صفحههای ساعت معمولی که از طریق Google Play توزیع میشوند، Watch Face Push بررسی میکند تا اطمینان حاصل شود که هر صفحه ساعت به خوبی شکل گرفته است و عملکرد آن بر عهده برنامه Marketplace است.
Google Play از بررسیهای اعتبارسنجی زیر برای تأیید کیفیت هر صفحه ساعتی که از Watch Face Push استفاده میکند استفاده میکند:
- تمام صفحههای ساعت نصب یا بهروزرسانی شده از طریق Watch Face Push API باید از ابزار اعتبارسنجی Watch Face Push عبور کنند.
- فقط ابزار اعتبارسنجی رسمی میتواند برای تولید نشانههای اعتبارسنجی برای استفاده با API استفاده شود.
- ابزار اعتبارسنجی مورد استفاده باید در زمان اجرای اعتبارسنجی به روز باشد.
هیچ الزامی برای تأیید مجدد یک APK که تغییر نکرده است وجود ندارد. توکنها منقضی نمیشوند، حتی زمانی که نسخه ابزار اعتبارسنجی مورد استفاده جایگزین شود.
در عین حال، توصیه می کنیم هر چند وقت یکبار اعتبار سنجی را دوباره اجرا کنید، زیرا اعتبار سنجی به صورت دوره ای به روز می شود.
اعتبار سنجی را اجرا کنید
برای اجرای اعتبار سنجی در APK صفحه ساعت، این مراحل را دنبال کنید:
- اعتبار سنجی را از مخزن Maven Google دریافت کنید.
ابزار را به صورت زیر اجرا کنید:
java -jar validator-push-cli-1.0.0-alpha01.jar \ --apk_path=youwatchface.apk \ --package_name=<your marketplace package name>
در صورت موفقیت آمیز بودن، خروجی شامل یک نشانه اعتبار سنجی است که باید هنگام افزودن یا به روز رسانی صفحه ساعت، آن را به Watch Face Push API ارائه دهید.
اگر خطایی رخ دهد، خروجی شامل جزئیاتی در مورد اینکه کدام چک خاص ناموفق است.
برای مثالی از گنجاندن ابزار اعتبارسنجی CLI در ساخت Gradle، نمونه Watch Face Push را در GitHub ببینید.
اندازه APK
برای اطمینان از اینکه اندازه APK به حداقل میرسد، باید مراقب صفحههای ساعت Watch Face Push باشید: احتمالاً APK صفحه ساعت از طریق بلوتوث از برنامه تلفن به برنامه ساعت منتقل میشود، که میتواند کند باشد.
یک APK بیش از حد بزرگ می تواند زمان قابل توجهی برای انتقال نیاز داشته باشد، که هم تجربه کاربری ضعیفی است و هم باتری آن خالی می شود.
- از کتابخانه های مناسب مانند
pngquant
استفاده کنید تا اندازه فایل های تصویری را به حداقل برسانید- این را در فرآیند ساخت مجموعه چهره ساعت خود بگنجانید
- بررسی کنید ابعاد تصویر متناسب با مقیاسی است که در آن استفاده خواهد شد.
- اطمینان حاصل کنید که تصاویر به درستی برش داده شده اند تا پس زمینه اطراف حذف شود.
- حجم فایل های فونت را کاهش دهید
- به عنوان مثال، اگر از یک فونت خاص فقط برای نشان دادن زمان استفاده میکنید، با فرمت
HH:MM
، میتوانید از ابزاری مانندpyftsubset
استفاده کنید تا فایل فونت را محدود کنید تا فقط حاوی حروفهای ضروری باشد. این می تواند به طور چشمگیری اندازه فایل فونت و APK حاصل را کاهش دهد. برای جزئیات بیشتر در مورد به حداقل رساندن اندازه فایل فونت، برای موارد دیگر، این پست وبلاگ را ببینید .
- به عنوان مثال، اگر از یک فونت خاص فقط برای نشان دادن زمان استفاده میکنید، با فرمت
برای پیشنهادات بیشتر در مورد به حداقل رساندن اندازه APK به راهنمای استفاده از حافظه Optimize مراجعه کنید.
امضای APK
به عنوان یک APK معمولی، تمام صفحههای ساعت شما نیاز به امضا دارند. یک کلید متفاوت از کلید مورد استفاده در برنامه اصلی خود ایجاد کنید و از کلید متفاوت برای تمام صفحه های ساعت خود استفاده کنید.
معماری
سه جزء اصلی سیستم را در نظر بگیرید:
- فضای ذخیرهسازی مبتنی بر ابر : در برنامه معمولی Marketplace، صفحههای ساعت شما در Cloud ساخته و ذخیره میشوند و برای استفاده توسط کاربران شما آماده هستند. صفحه های ساعت عبارتند از:
- از پیش ساخته شده به عنوان APKهای معمولی با فرمت Watch Face
- هر کدام تنها شامل یک صفحه ساعت مبتنی بر فرمت Watch Face هستند
- با استفاده از فرآیند اعتبارسنجی Watch Face Push اعتبارسنجی شدهاند و همراه با نشانه اعتبارسنجی مرتبط ذخیره میشوند.
- آماده است تا در صورت نیاز توسط برنامه تلفن شما بازیابی شود.
- برنامه تلفن : برنامه تلفن اصلی ترین روشی است که کاربران شما با سیستم شما تعامل دارند. به آنها اجازه می دهد:
- فهرست صفحه ساعت خود را مرور و جستجو کنید
- صفحه ساعت را روی ساعت نصب یا جایگزین کنید
- برنامه تماشا : برنامه ساعت معمولاً ممکن است رابط کاربری قابل توجهی نداشته باشد. این در درجه اول پلی است بین برنامه تلفن و واچ فیس Push API، با عملکرد زیر:
- استفاده از Watch Face Push API برای نصب/بهروزرسانی یا جایگزینی صفحههای ساعت
- درخواست مجوزهای لازم و درخواست از کاربر
- ارائه یک صفحه ساعت پیش فرض
- ارائه حداقل حافظه پنهان از صفحه های ساعت
- ارتباطات ساعت تلفن : ارتباط تلفن و برنامه ساعت برای موفقیت تجربه کلی بسیار مهم است. از API های لایه داده Wear OS استفاده کنید که اجازه می دهد:
- تشخیص نصب : با استفاده از قابلیتها و
CapabilityClient
، برنامه تلفن میتواند عدم وجود برنامه ساعت را تشخیص دهد و برعکس. این را می توان با راه اندازی یک قصد به فروشگاه Play برای نصب فاکتور فرم گم شده دنبال کرد. - مدیریت وضعیت : با استفاده از
DataClient
یاMessageClient
، تلفن را می توان با وضعیت ساعت هماهنگ نگه داشت، به عنوان مثال، اطمینان حاصل شود که تلفن از صفحه ساعت تنظیم شده آگاه است. - انتقال APK : با استفاده از
ChannelClient
یاMessageClient
، فایل های APK را می توان از تلفن به ساعت ارسال کرد. - فراخوانی از راه دور : با استفاده از
Messageclient
، تلفن میتواند به ساعت دستور دهد که واچ فیس فشاری API را فراخوانی کند، به عنوان مثال، یک صفحه ساعت را نصب کند.
- تشخیص نصب : با استفاده از قابلیتها و
برای جزئیات بیشتر به راهنمای API لایه داده مراجعه کنید.