TileService
एक बाउंड सेवा है. आपका TileService
, आपके ऐप्लिकेशन के अनुरोध के नतीजे के तौर पर या सिस्टम को उससे संपर्क करने की ज़रूरत पड़ने पर बाउंड होता है. आम तौर पर, बाउंड-सेवा के लाइफ़साइकल में ये चार कॉलबैक तरीके होते हैं:
onCreate()
, onBind()
, onUnbind()
, और
onDestroy()
. जब भी सेवा, लाइफ़साइकल के किसी नए चरण में प्रवेश करती है, तो सिस्टम इन तरीकों को लागू करता है.
बाउंड की गई सेवा के लाइफ़साइकल को कंट्रोल करने वाले कॉलबैक के अलावा, TileService
लाइफ़साइकल के लिए खास तौर पर बनाए गए अन्य तरीके भी लागू किए जा सकते हैं. सिस्टम से अपडेट के अनुरोधों का जवाब देने के लिए, सभी टाइल सेवाओं को onTileRequest()
और onTileResourcesRequest()
को लागू करना ज़रूरी है.
onTileAddEvent()
: सिस्टम इस तरीके को सिर्फ़ तब कॉल करता है, जब उपयोगकर्ता पहली बार आपकी टाइल जोड़ता है. साथ ही, अगर उपयोगकर्ता आपकी टाइल को हटाकर फिर से जोड़ता है, तो भी सिस्टम इस तरीके को कॉल करता है. एक बार होने वाली कोई भी शुरुआत करने के लिए, यह सबसे सही समय है.onTileAddEvent()
को सिर्फ़ तब कॉल किया जाता है, जब टाइल के सेट को फिर से कॉन्फ़िगर किया जाता है, न कि जब सिस्टम किसी टाइल को बनाता है. उदाहरण के लिए, जब डिवाइस को रीबूट किया जाता है या चालू किया जाता है, तो पहले से जोड़ी गई टाइल के लिएonTileAddEvent()
को कॉल नहीं किया जाता. इसके बजाय,getActiveTilesAsync()
का इस्तेमाल करके, यह पता लगाया जा सकता है कि आपके पास कौनसी टाइल चालू हैं.onTileRemoveEvent()
: सिस्टम इस तरीके को सिर्फ़ तब कॉल करता है, जब उपयोगकर्ता आपकी टाइल को हटाता है.onTileEnterEvent()
: सिस्टम इस तरीके को तब कॉल करता है, जब स्क्रीन पर इस सेवा देने वाली कंपनी की टाइल दिखती है.onTileLeaveEvent()
: सिस्टम इस तरीके को तब कॉल करता है, जब इस सेवा देने वाली कंपनी की दी गई टाइल, स्क्रीन पर दिखना बंद हो जाती है.onTileRequest()
: सिस्टम इस प्रोवाइडर से नई टाइमलाइन का अनुरोध करने पर, इस तरीके को कॉल करता है.onTileResourcesRequest()
: सिस्टम इस तरीके को तब कॉल करता है, जब वह इस सेवा देने वाली कंपनी से संसाधन बंडल का अनुरोध करता है. ऐसा तब हो सकता है, जब पहली बार कोई टाइल लोड की जा रही हो या रिसॉर्स का वर्शन बदला गया हो.
यह क्वेरी करना कि कौनसी टाइल चालू हैं
ऐक्टिव टाइल, ऐसी टाइल होती हैं जिन्हें स्मार्टवॉच पर दिखाने के लिए जोड़ा गया है. आपके ऐप्लिकेशन से जुड़ी कौनसी टाइल चालू हैं, यह जानने के लिए TileService
के स्टैटिक तरीके getActiveTilesAsync()
का इस्तेमाल करें.