Wear OS 6 में, Watch Face Push नाम का एक नया एपीआई जोड़ा गया है. इससे, वॉच फ़ेस पब्लिश करने के ज़्यादा बेहतर तरीके इस्तेमाल किए जा सकते हैं.
Watch Face Push का इस्तेमाल कब करें
Watch Face Push, Wear OS पर मौजूद एक एपीआई है. इसकी मदद से, डेवलपर सीधे वॉच फ़ेस जोड़ सकते हैं, उन्हें अपडेट कर सकते हैं या हटा सकते हैं. सामान्य वॉच फ़ेस डेवलपमेंट के लिए, इसकी ज़रूरत नहीं होती.
Watch Face Push के साथ इस्तेमाल किए जाने वाले वॉच फ़ेस, Watch Face Format का इस्तेमाल करके बनाए जाने चाहिए. इसमें, Watch Face Designer, Watch Face Studio या किसी अन्य टूल का इस्तेमाल करके डिज़ाइन किए गए वॉच फ़ेस शामिल हो सकते हैं. इन टूल से, Watch Face Format का इस्तेमाल करके वॉच फ़ेस बनाए जाते हैं.
Watch Face Push API का इस्तेमाल कई तरीकों से किया जा सकता है. हालांकि, यहां दी गई टेबल में, इसके मुख्य इस्तेमाल के उदाहरण दिए गए हैं:
| इस्तेमाल का उदाहरण | अनुशंसित समाधान | जटिलता |
|---|---|---|
| मुझे अलग-अलग वॉच फ़ेस बनाने और उन्हें पब्लिश करना है. | Watch Face Format का इस्तेमाल करें. इसे सीधे तौर पर या Watch Face Designer या Watch Face Studio जैसे टूल की मदद से इस्तेमाल किया जा सकता है. इसके बाद, इन्हें Google Play पर पब्लिश करें. | कम |
| मुझे फ़ोन के लिए एक ऐसा ऐप्लिकेशन बनाना है जिससे उपयोगकर्ता, चुने गए कलेक्शन से वॉच फ़ेस चुन सकें. इसके अलावा, वे Wear OS वाली अपनी स्मार्टवॉच पर सीधे इंस्टॉल करने के लिए, वॉच फ़ेस डिज़ाइन और कस्टमाइज़ कर सकें. | स्मार्टवॉच पर Watch Face Push API का इस्तेमाल करके, स्मार्टवॉच और फ़ोन, दोनों के लिए एक ऐप्लिकेशन बनाएं. | ज़्यादा |
मकसद
Watch Face Push API का मुख्य इस्तेमाल, मार्केटप्लेस ऐप्लिकेशन बनाना है. इस ऐप्लिकेशन की मदद से, उपयोगकर्ता अपने फ़ोन पर चुने गए कलेक्शन से वॉच फ़ेस चुन सकते हैं. साथ ही, कनेक्ट की गई स्मार्टवॉच पर इन वॉच फ़ेस को सीधे इंस्टॉल किया जा सकता है.
ज़रूरी बातें
वॉच फ़ेस बनाने के बारे में ज़्यादा जानकारी के लिए, Watch Face Format के दिशा-निर्देश देखें: Watch Face Push का इस्तेमाल करके डिप्लॉय किए गए वॉच फ़ेस, सामान्य Watch Face Format वाले वॉच फ़ेस होते हैं.
वॉच फ़ेस बनाते समय, इन बातों का ध्यान रखें.
पैकेज के नाम
Watch Face Push का इस्तेमाल करके इंस्टॉल किए गए वॉच फ़ेस, इस कन्वेंशन के मुताबिक होने चाहिए:
<app name>.watchfacepush.<watchface name>
यहां <app name> , Watch Face
Push API को कॉल करने वाले ऐप्लिकेशन का पैकेज नाम है.
उदाहरण के लिए, com.example.mymarketplace पैकेज नाम वाले ऐप्लिकेशन के लिए, ये मान्य वॉच फ़ेस पैकेज नाम हैं:
com.example.mymarketplace.watchfacepush.watchface1com.example.mymarketplace.watchfacepush.watchface2com.example.mymarketplace.watchfacepush.another_watchface
एपीआई, इस कन्वेंशन के मुताबिक न होने वाले वॉच फ़ेस को अस्वीकार कर देता है.
पैकेज का कॉन्टेंट
सिस्टम, APK के कॉन्टेंट को सख्ती से लागू करता है. तकनीकी तौर पर, Watch Face Format वाले ऐसे APK बनाए जा सकते हैं जिनमें नुकसान न पहुंचाने वाली मेटाडेटा फ़ाइलें और अन्य आर्टफ़ैक्ट शामिल हों. इन्हें Google Play पर स्वीकार किया जा सकता है, लेकिन ये Watch Face Push की पुष्टि की प्रोसेस में पास नहीं होते. ज़्यादा जानकारी के लिए, नीचे दिया गया सेक्शन देखें.
हर वॉच फ़ेस APK में सिर्फ़ ये फ़ाइलें/पाथ शामिल होने चाहिए:
/AndroidManifest.xml/resources.arsc/res/**/META-INF/**
इसके अलावा, AndroidManifest.xml फ़ाइल में सिर्फ़ ये टैग शामिल होने चाहिए:
<manifest><uses-feature><uses-sdk><application><property><meta-data>
आखिर में, पैकेज में कम से कम 33 का minSdk होना चाहिए. साथ ही, <application> टैग में android:hasCode="false" एट्रिब्यूट होना चाहिए.
सत्यापन
Google Play के ज़रिए डिस्ट्रिब्यूट किए जाने वाले सामान्य वॉच फ़ेस के उलट, Marketplace ऐप्लिकेशन की यह ज़िम्मेदारी होती है कि वह पुष्टि करे कि Watch Face Push का इस्तेमाल करके बनाए गए हर वॉच फ़ेस का फ़ॉर्मैट सही है और वह अच्छी परफ़ॉर्मेंस देता है.
Watch Face Push, हर वॉच फ़ेस की क्वालिटी की पुष्टि करने के लिए, पुष्टि की इन जांचों का इस्तेमाल करता है:
- Watch Face Push API का इस्तेमाल करके इंस्टॉल या अपडेट किए गए सभी वॉच फ़ेस, Watch Face Push की पुष्टि करने वाले टूल की मदद से पुष्टि किए जाने चाहिए.
- एपीआई के साथ इस्तेमाल करने के लिए, पुष्टि करने वाले टोकन जनरेट करने के लिए, सिर्फ़ पुष्टि करने वाले आधिकारिक टूल का इस्तेमाल करें.
- पुष्टि की प्रोसेस शुरू करते समय, पुष्टि करने वाला टूल अप-टू-डेट होना चाहिए.
जिस APK में कोई बदलाव नहीं किया गया है उसकी पुष्टि फिर से करने की ज़रूरत नहीं है. टोकन की वैधता खत्म नहीं होती. भले ही, पुष्टि करने वाले जिस टूल का इस्तेमाल किया गया हो उसका नया वर्शन आ गया हो.
हालांकि, हमारा सुझाव है कि पुष्टि की प्रोसेस को समय-समय पर फिर से चलाएं, क्योंकि पुष्टि करने वाले टूल को समय-समय पर अपडेट किया जाता है.
पुष्टि करने वाले टूल को चलाना
पुष्टि करने वाला टूल, इन तीन फ़ॉर्मैट में उपलब्ध है:
- सीएलआई टूल
- जेवीएम के साथ इस्तेमाल करने के लिए लाइब्रेरी
- Android पर इस्तेमाल करने के लिए लाइब्रेरी
कमांड-लाइन से पुष्टि करने वाले टूल का इस्तेमाल करना
- Google की मेवन रिपॉज़िटरी से, पुष्टि करने वाला टूल पाएं.
टूल को इस तरह चलाएं:
java -jar validator-push-cli-1.0.0-alpha10.jar \ --apk_path=<your watch face>.apk \ --package_name=<your marketplace package name>अगर प्रोसेस पूरी हो जाती है, तो आउटपुट में पुष्टि करने वाला टोकन शामिल होता है. वॉच फ़ेस जोड़ने या अपडेट करने के दौरान, आपको यह टोकन Watch Face Push API को देना होगा.
अगर कोई गड़बड़ी होती है, तो आउटपुट में इस बारे में जानकारी शामिल होती है कि पुष्टि की कौनसी जांच फ़ेल हुई है.
लाइब्रेरी से पुष्टि करने वाले टूल का इस्तेमाल करना
Google और Jitpack की रिपॉज़िटरी शामिल करें. पुष्टि करने वाली लाइब्रेरी का इस्तेमाल करने के लिए, दोनों रिपॉज़िटरी शामिल करना ज़रूरी है.
repositories { ... google() maven { url = uri("https://jitpack.io") content { includeGroup("com.github.xgouchet") } } }अपने प्रोजेक्ट में, पुष्टि करने वाली डिपेंडेंसी शामिल करें:
// For use on JVM implementation("com.google.android.wearable.watchface.validator:validator-push:1.0.0-alpha10") // For use on Android implementation("com.google.android.wearable.watchface.validator:validator-push-android:1.0.0-alpha10")पुष्टि करने वाले टूल को चलाएं:
इस लाइब्रेरी का इस्तेमाल करने के उदाहरण के लिए, GitHub का सैंपल देखें. पोर्टेबल ऐसेट कंपाइलर किट (पैक) लाइब्रेरी भी देखें. यह लाइब्रेरी, Android पर आधारित पुष्टि करने वाले टूल के साथ इस्तेमाल करने के लिए, डिवाइस पर APK बनाने में काम आती है.
APK का साइज़
Watch Face Push का इस्तेमाल करके बनाए गए वॉच फ़ेस के लिए, APK का साइज़ कम करने पर खास ध्यान दें: ऐसा हो सकता है कि वॉच फ़ेस का APK, फ़ोन ऐप्लिकेशन से स्मार्टवॉच के ऐप्लिकेशन पर ब्लूटूथ के ज़रिए ट्रांसमिट किया जाए. इसमें ज़्यादा समय लग सकता है.
ज़्यादा बड़े APK को ट्रांसमिट होने में काफ़ी समय लग सकता है. इससे, उपयोगकर्ता को खराब अनुभव मिलता है. साथ ही, बैटरी भी ज़्यादा खर्च होती है.
- इमेज फ़ाइल के साइज़ को कम रखने के लिए,
pngquantजैसी सही लाइब्रेरी का इस्तेमाल करें- इसे, वॉच फ़ेस के कलेक्शन को बनाने की प्रोसेस में शामिल करें
- देखें कि इमेज के डाइमेंशन, उस स्केल के हिसाब से सही हैं जिस पर इसका इस्तेमाल किया जा रहा है.
- इमेज को सही तरीके से क्रॉप करें, ताकि उसके आस-पास का बैकग्राउंड हट जाए.
- फ़ॉन्ट फ़ाइलों का साइज़ कम करें
- उदाहरण के लिए, अगर किसी खास फ़ॉन्ट का इस्तेमाल सिर्फ़ समय दिखाने के लिए किया जाता है, तो
फ़ॉर्मैट
HH:MMमें,pyftsubsetजैसे टूल का इस्तेमाल करके, फ़ॉन्ट फ़ाइल को सिर्फ़ ज़रूरी ग्लिफ़ तक सीमित किया जा सकता है. इससे, बनने वाली फ़ॉन्ट फ़ाइल और APK का साइज़ काफ़ी कम हो सकता है. अन्य मामलों में, फ़ॉन्ट फ़ाइल का साइज़ कम करने के बारे में जानने के लिए, यह ब्लॉग पोस्ट देखें , .
- उदाहरण के लिए, अगर किसी खास फ़ॉन्ट का इस्तेमाल सिर्फ़ समय दिखाने के लिए किया जाता है, तो
फ़ॉर्मैट
APK का साइज़ कम रखने के बारे में ज़्यादा सुझाव पाने के लिए, मेमोरी के इस्तेमाल को ऑप्टिमाइज़ करने के दिशा-निर्देश देखें.
APK पर हस्ताक्षर करना
आपको अपने सभी वॉच फ़ेस पर हस्ताक्षर करने होंगे. इसके लिए, सामान्य APK पर हस्ताक्षर करने की प्रोसेस का इस्तेमाल करें. अपने मुख्य ऐप्लिकेशन के लिए इस्तेमाल की जाने वाली कुंजी से अलग कुंजी बनाएं और अपने सभी वॉच फ़ेस के लिए, अलग कुंजी का इस्तेमाल करें.
वास्तुकला
सिस्टम के चार मुख्य कॉम्पोनेंट के बारे में जानें:
- क्लाउड पर आधारित स्टोरेज: Marketplace ऐप्लिकेशन में, वॉच फ़ेस क्लाउड में बनाए और
स्टोर किए जाते हैं, ताकि उपयोगकर्ता उनका इस्तेमाल कर सकें. वॉच फ़ेस की ये प्रॉपर्टी होती हैं:
- इन्हें, सामान्य Watch Face Format वाले APK के तौर पर पहले से बनाया जाता है.
- हर APK में, सिर्फ़ Watch Face Format पर आधारित एक वॉच फ़ेस होता है.
- इनकी पुष्टि, Watch Face Push की पुष्टि की प्रोसेस से की जाती है. साथ ही, इन्हें पुष्टि करने वाले टोकन के साथ स्टोर किया जाता है.
- ज़रूरत पड़ने पर, आपका फ़ोन ऐप्लिकेशन इन्हें वापस पा सकता है.
- फ़ोन ऐप्लिकेशन: फ़ोन ऐप्लिकेशन, वह मुख्य तरीका है जिससे आपके उपयोगकर्ता आपके सिस्टम के साथ इंटरैक्ट करते हैं. इसकी मदद से, उपयोगकर्ता ये काम कर सकते हैं:
- वॉच फ़ेस के कैटलॉग को ब्राउज़ और खोजें
- स्मार्टवॉच पर वॉच फ़ेस इंस्टॉल करें या बदलें
- स्मार्टवॉच के लिए ऐप्लिकेशन: आम तौर पर, स्मार्टवॉच के ऐप्लिकेशन में कोई खास यूज़र
इंटरफ़ेस नहीं होता. यह मुख्य तौर पर, फ़ोन ऐप्लिकेशन और Watch Face Push API के बीच एक पुल का काम करता है. इसमें ये सुविधाएं होती हैं:
- वॉच फ़ेस इंस्टॉल/अपडेट करने या बदलने के लिए, Watch Face Push API का इस्तेमाल करना
- ज़रूरी अनुमतियों का अनुरोध करना और उपयोगकर्ता को प्रॉम्प्ट करना
- डिफ़ॉल्ट वॉच फ़ेस उपलब्ध कराना
- वॉच फ़ेस की कम से कम कैश मेमोरी उपलब्ध कराना
- फ़ोन और स्मार्टवॉच के बीच कम्यूनिकेशन: फ़ोन और स्मार्टवॉच के ऐप्लिकेशन के बीच कम्यूनिकेशन, पूरे अनुभव को बेहतर बनाने के लिए
ज़रूरी है. Wear OS Data Layer API का इस्तेमाल करें. इससे ये काम किए जा सकते हैं:
- इंस्टॉल होने का पता लगाना: Capabilities और
CapabilityClientका इस्तेमाल करके, फ़ोन ऐप्लिकेशन यह पता लगा सकता है कि स्मार्टवॉच का ऐप्लिकेशन मौजूद है या नहीं. इसी तरह, स्मार्टवॉच का ऐप्लिकेशन यह पता लगा सकता है कि फ़ोन ऐप्लिकेशन मौजूद है या नहीं. इसके बाद, Play Store पर इंटेंट लॉन्च करके, गायब फ़ॉर्म फ़ैक्टर को इंस्टॉल किया जा सकता है. - स्टेट मैनेजमेंट:
DataClientयाMessageClientका इस्तेमाल करके, फ़ोन को स्मार्टवॉच की स्थिति के साथ सिंक रखें. उदाहरण के लिए, चालू वॉच फ़ेस की स्थिति को सिंक करना. - APK ट्रांसमिशन:
ChannelClientयाMessageClientका इस्तेमाल करके, फ़ोन से स्मार्टवॉच पर APK भेजें - रिमोट इनवोकेशन:
Messageclientका इस्तेमाल करके, फ़ोन स्मार्टवॉच को Watch Face Push API को कॉल करने का निर्देश दे सकता है. उदाहरण के लिए, वॉच फ़ेस इंस्टॉल करने के लिए.
- इंस्टॉल होने का पता लगाना: Capabilities और
ज़्यादा जानकारी के लिए, Data Layer API के दिशा-निर्देश देखें.