क्विक सेटिंग, क्विक सेटिंग पैनल में दिखने वाली टाइल होती हैं.
इससे उपयोगकर्ता, बार-बार होने वाले टास्क को तुरंत पूरा कर सकते हैं.
आपका ऐप्लिकेशन TileService
की मदद से, उपयोगकर्ताओं को उनकी पसंद के मुताबिक टाइल उपलब्ध करा सकता है
क्लास में शामिल करें और टाइल की स्थिति को ट्रैक करने के लिए, Tile
ऑब्जेक्ट का इस्तेमाल करें. उदाहरण के लिए,
एक ऐसी टाइल बनाई जा सकती है जिससे उपयोगकर्ता, आपके ऐप्लिकेशन से मिले वीपीएन को चालू कर सकें या
बंद करें.
![क्विक सेटिंग पैनल, जिसमें वीपीएन टाइल चालू है
चालू और बंद करें](https://developer.android.com/static/develop/ui/views/images/quick-settings-vpn-on-off.png?authuser=0&hl=hi)
तय करना कि टाइल कब बनानी है
हमारा सुझाव है कि आप उन खास सुविधाओं के लिए टाइल बनाएं जो आपको उपयोगकर्ताओं की उम्मीद के मुताबिक हों अक्सर ऐक्सेस करने की ज़रूरत होती है या तेज़ी से ऐक्सेस करने की ज़रूरत होती है. सबसे असरदार टाइल वे होती हैं जो इन दोनों गुणवत्ताओं से मेल खाती हैं, जिससे बार-बार की जाने वाली कार्रवाइयाँ.
उदाहरण के लिए, किसी फ़िटनेस ऐप्लिकेशन के लिए एक टाइल बनाई जा सकती है, ताकि उपयोगकर्ता तेज़ी से वर्कआउट सेशन शुरू करें. हालांकि, हम यह सुझाव नहीं देंगे कि उसी ऐप के लिए जो उपयोगकर्ताओं को अपने पूरे वर्कआउट इतिहास की समीक्षा करने देगा.
![फ़िटनेस ऐप्लिकेशन की टाइल के इस्तेमाल के उदाहरण](https://developer.android.com/static/develop/ui/views/images/use-cases-fitness-tiles.png?authuser=0&hl=hi)
हमारा सुझाव है कि टाइल को आसानी से खोजने और इस्तेमाल करने में मदद करने के लिए, कुछ खास तरीकों से बचें:
किसी ऐप्लिकेशन को लॉन्च करने के लिए, टाइल का इस्तेमाल करने से बचें. ऐप्लिकेशन शॉर्टकट या किसी सामान्य ऐप्लिकेशन का इस्तेमाल करें लॉन्चर का इस्तेमाल करें.
एक बार की जाने वाली उपयोगकर्ता कार्रवाइयों के लिए टाइल का इस्तेमाल करने से बचें. ऐप शॉर्टकट का इस्तेमाल करें या सूचना सबमिट करें.
बहुत ज़्यादा टाइल न बनाएं. हमारा सुझाव है कि हर ऐप्लिकेशन के लिए, ज़्यादा से ज़्यादा दो पैरामीटर इस्तेमाल किए जा सकते हैं. किसी शॉर्टकट का इस्तेमाल करें.
ऐसी टाइल का इस्तेमाल करने से बचें जो जानकारी दिखाती हों, लेकिन इंटरैक्टिव न हों उपयोगकर्ता. इसके बजाय, सूचना या विजेट का इस्तेमाल करें.
अपनी टाइल बनाएं
टाइल बनाने के लिए, सबसे पहले आपको टाइल का सही आइकॉन बनाना होगा. इसके बाद,
ऐप्लिकेशन की मेनिफ़ेस्ट फ़ाइल में TileService
बनाएं और उसका एलान करें.
क्विक सेटिंग सैंपल में, अलग-अलग प्रोसेस बनाने का तरीका बताया जाता है और टाइल मैनेज करें.
अपनी पसंद का आइकॉन बनाएं
आपको एक कस्टम आइकॉन देना होगा. यह आइकॉन, Quick में टाइल पर दिखेगा
सेटिंग पैनल. (TileService
का एलान करते समय आपको यह आइकॉन जोड़ना होगा,
अगले सेक्शन में बताया गया है.) आइकॉन पूरी तरह सफ़ेद होना चाहिए. साथ ही,
जो पारदर्शी बैकग्राउंड का इस्तेमाल करता है, उसका साइज़ 24 x 24dp होता है और उसे इमेज के तौर पर
VectorDrawable
.
![ड्रॉ करने लायक वेक्टर का उदाहरण](https://developer.android.com/static/develop/ui/views/images/vector-drawable.png?authuser=0&hl=hi)
ऐसा आइकॉन बनाएं जिससे आपकी टाइल के बारे में पता चलता हो. इससे उपयोगकर्ताओं को वे आसानी से पहचान कर सकते हैं कि आपकी टाइल उनकी ज़रूरतों को पूरा करती है या नहीं. उदाहरण के लिए, आपके पास फ़िटनेस ऐप्लिकेशन की टाइल की स्टॉपवॉच का आइकॉन. इससे लोग गेम शुरू करने के लिए, वर्कआउट सेशन.
अपनी TileService बनाएं और उसका एलान करें
अपनी टाइल के लिए ऐसी सेवा बनाएं जो TileService
क्लास को बढ़ाती हो.
Kotlin
class MyQSTileService: TileService() { // Called when the user adds your tile. override fun onTileAdded() { super.onTileAdded() } // Called when your app can update your tile. override fun onStartListening() { super.onStartListening() } // Called when your app can no longer update your tile. override fun onStopListening() { super.onStopListening() } // Called when the user taps on your tile in an active or inactive state. override fun onClick() { super.onClick() } // Called when the user removes your tile. override fun onTileRemoved() { super.onTileRemoved() } }
Java
public class MyQSTileService extends TileService { // Called when the user adds your tile. @Override public void onTileAdded() { super.onTileAdded(); } // Called when your app can update your tile. @Override public void onStartListening() { super.onStartListening(); } // Called when your app can no longer update your tile. @Override public void onStopListening() { super.onStopListening(); } // Called when the user taps on your tile in an active or inactive state. @Override public void onClick() { super.onClick(); } // Called when the user removes your tile. @Override public void onTileRemoved() { super.onTileRemoved(); } }
अपने ऐप्लिकेशन की मेनिफ़ेस्ट फ़ाइल में, अपने TileService
के बारे में बताएं. नाम और लेबल जोड़ें
आपका TileService
, जो कस्टम आइकॉन आपने पिछले सेक्शन में बनाया था,
और उचित अनुमति शामिल है.
<service
android:name=".MyQSTileService"
android:exported="true"
android:label="@string/my_default_tile_label" // 18-character limit.
android:icon="@drawable/my_default_icon_label"
android:permission="android.permission.BIND_QUICK_SETTINGS_TILE">
<intent-filter>
<action android:name="android.service.quicksettings.action.QS_TILE" />
</intent-filter>
</service>
अपनी TileService मैनेज करें
अपने ऐप्लिकेशन मेनिफ़ेस्ट में TileService
बनाने और उसका एलान करने के बाद, आपको
अपनी स्थिति को मैनेज करना पड़ता है.
TileService
एक सीमित सेवा है. आपका TileService
तब लागू होता है, जब
आपके ऐप्लिकेशन ने अनुरोध किया हो या जब सिस्टम को आपसे संपर्क करने की ज़रूरत हो. सामान्य
बाउंड-सर्विस लाइफ़साइकल में ये चार कॉलबैक तरीके शामिल हैं:
onCreate()
, onBind()
, onUnbind()
, और
onDestroy()
. सिस्टम हर बार इन तरीकों को शुरू करता है
सेवा एक नए लाइफ़साइकल फ़ेज़ में आ जाती है.
TileService लाइफ़साइकल की खास जानकारी
बाउंड-सर्विस लाइफ़साइकल को कंट्रोल करने वाले कॉलबैक के अलावा, आपको ये काम करने होंगे
TileService
लाइफ़साइकल के लिए तय किए गए अन्य तरीके लागू करें. ये तरीके
onCreate()
और onDestroy()
के बाहर कॉल किया जा सकता है, क्योंकि Service
लाइफ़साइकल मेथड और TileService
लाइफ़साइकल मेथड को दो में कॉल किया जाता है
अलग-अलग एसिंक्रोनस थ्रेड इस्तेमाल करें.
TileService
लाइफ़साइकल में ये तरीके शामिल होते हैं जिन्हें शुरू किया जाता है
हर बार आपका TileService
लाइफ़साइकल के किसी नए फ़ेज़ में जाने पर, सिस्टम के हिसाब से:
onTileAdded()
: यह तरीका सिर्फ़ तब कॉल किया जाता है, जब उपयोगकर्ता और अगर उपयोगकर्ता आपकी टाइल को हटाकर फिर से जोड़ता है. किसी भी एक बार में शुरुआत करने का यह सबसे सही समय है. हालांकि, ऐसा हो सकता है कि यह सभी ज़रूरी प्रोसेस को पूरा नहीं करता है.onStartListening()
औरonStopListening()
: ये तरीके हैं जब भी आपका ऐप्लिकेशन टाइल को अपडेट करता है, तब कॉल किया जाता है. इस सुविधा को अक्सर कॉल किया जाता है. कॉन्टेंट बनानेTileService
,onStartListening()
और के बीच बना रहेगाonStopListening()
से आपके ऐप्लिकेशन को टाइल में बदलाव करने और अपडेट पुश करने की अनुमति मिलती है.onTileRemoved()
: यह तरीका सिर्फ़ तब कॉल किया जाता है, जब उपयोगकर्ता आपकी टाइल.
पॉडकास्ट सुनने का कोई मोड चुनें
आपका TileService
, चालू मोड या बंद मोड में सुनता है. हमारा सुझाव है कि आप:
ऐक्टिव मोड का इस्तेमाल करके इसकी जानकारी देनी होगी. इसका एलान आपको ऐप्लिकेशन मेनिफ़ेस्ट में करना होगा. या फिर,
TileService
स्टैंडर्ड मोड है और इसका एलान करने की ज़रूरत नहीं होती.
यह न सोचें कि आपका TileService
, onStartListening()
के बाहर रहेगा और
onStopListening()
तरीकों का जोड़ा.
ऐक्टिव मोड (सुझाया गया)
ऐक्टिव मोड का इस्तेमाल, ऐसे TileService
के लिए करें जो इसकी स्थिति को सुन और मॉनिटर करता हो
खुद की प्रक्रिया में शामिल हो. ऐक्टिव मोड में TileService
, onTileAdded()
के लिए सीमित है,
onTileRemoved()
पर जाकर, इवेंट पर टैप करें. साथ ही, जब ऐप्लिकेशन प्रोसेस के लिए अनुरोध करे, तब इस पर टैप करें.
अगर टाइल की स्थिति बताने पर, आपके TileService
को सूचना मिलती है, तो हमारा सुझाव है कि चालू मोड का इस्तेमाल करें
उसे अपनी प्रोसेस से अपडेट करना चाहिए. ऐक्टिव टाइल,
सिस्टम को इसलिए बाइंड नहीं करना पड़ता, क्योंकि उसे हर बार क्विक सेटिंग पैनल के लिए बाउंड नहीं करना होता है
उपयोगकर्ता को दिखने लगता है.
स्टैटिक TileService.requestListeningState()
तरीके का इस्तेमाल
लिसनिंग स्टेट शुरू होने का अनुरोध करें और इसके लिए कॉलबैक पाएं
onStartListening()
.
ऐक्टिव मोड का एलान करने के लिए, META_DATA_ACTIVE_TILE
को अपने
की मेनिफ़ेस्ट फ़ाइल में दी गई है.
<service ...>
<meta-data android:name="android.service.quicksettings.ACTIVE_TILE"
android:value="true" />
...
</service>
नॉन-ऐक्टिव मोड
नॉन-ऐक्टिव मोड, स्टैंडर्ड मोड है. कोई TileService
, ऐक्टिव मोड में नहीं है, अगर
जब भी आपकी टाइल उपयोगकर्ता को दिखती है, तब यह तय होता है. इसका मतलब है कि
TileService
को कभी-कभी फिर से बनाया और बाइंड किया जा सकता है. हालांकि, यह इसके कंट्रोल से बाहर होता है. यह
जब उपयोगकर्ता टाइल न देख रहा हो, तब भी अनबाउंड हो सकता है और खत्म हो सकता है.
जब उपयोगकर्ता अपना ऐप्लिकेशन खोलता है, तो आपके ऐप्लिकेशन को onStartListening()
पर कॉलबैक मिलता है
क्विक सेटिंग पैनल. Tile
ऑब्जेक्ट को जितनी बार अपडेट किया जा सकता है उतनी बार अपडेट किया जा सकता है
onStartListening()
से onStopListening()
के बीच चाहिए.
आपको 'ऐक्टिव मोड' का एलान करने की ज़रूरत नहीं है—बस
META_DATA_ACTIVE_TILE
को आपके ऐप्लिकेशन की मेनिफ़ेस्ट फ़ाइल में सेव करें.
टाइल की स्थितियों के बारे में खास जानकारी
जब कोई उपयोगकर्ता आपकी टाइल जोड़ता है, तो यह हमेशा इनमें से किसी एक स्थिति में मौजूद रहती है.
STATE_ACTIVE
: इससे पता चलता है कि डिवाइस चालू है या चालू है. उपयोगकर्ता ये काम कर सकता है: इस स्थिति में रहते हुए अपनी टाइल के साथ इंटरैक्ट करें.उदाहरण के लिए, किसी फ़िटनेस ऐप्लिकेशन की टाइल जो लोगों को तय समय पर कसरत करने की सुविधा देती है सेशन के लिए,
STATE_ACTIVE
का मतलब है कि उपयोगकर्ता ने कसरत शुरू की है और टाइमर चल रहा है.STATE_INACTIVE
: यह स्टेटस, बंद या रोकी गई स्थिति को दिखाता है. उपयोगकर्ता ये काम कर सकता है: इस स्थिति में रहते हुए अपनी टाइल के साथ इंटरैक्ट करें.फ़िटनेस ऐप्लिकेशन की टाइल का उदाहरण दोबारा इस्तेमाल करने के लिए,
STATE_INACTIVE
में मौजूद टाइल को इसका मतलब है कि उपयोगकर्ता ने वर्कआउट सेशन शुरू नहीं किया है, लेकिन वह ऐसा कर सकता है. वे चाहते थे.STATE_UNAVAILABLE
: यह स्टेटस कुछ समय के लिए उपलब्ध नहीं है. कॉन्टेंट बनाने इस स्थिति में उपयोगकर्ता आपकी टाइल से इंटरैक्ट नहीं कर सकता.उदाहरण के लिए,
STATE_UNAVAILABLE
में मौजूद टाइल का मतलब है कि टाइल फ़िलहाल किसी वजह से उपयोगकर्ता के लिए उपलब्ध हो.
सिस्टम सिर्फ़ आपके Tile
ऑब्जेक्ट की शुरुआती स्थिति सेट करता है. आपने Tile
को सेट किया
पूरे लाइफ़साइकल के दौरान, ऑब्जेक्ट की स्थिति को मॉनिटर करता है.
सिस्टम, टाइल आइकॉन और बैकग्राउंड को हल्के रंग में बदल सकता है, ताकि आपके विज्ञापन की स्थिति का पता चल सके
Tile
ऑब्जेक्ट. STATE_ACTIVE
पर सेट किए गए Tile
ऑब्जेक्ट सबसे गहरे रंग की हैं. इनमें
STATE_INACTIVE
और STATE_UNAVAILABLE
की रफ़्तार धीरे-धीरे कम होती जाएगी. सटीक रंग
सिर्फ़ मैन्युफ़ैक्चरर और वर्शन पर निर्भर करता है.
![ऑब्जेक्ट की स्थिति दिखाने के लिए रंगी गई वीपीएन टाइल](https://developer.android.com/static/develop/ui/views/images/state-hues.png?authuser=0&hl=hi)
टाइल अपडेट करना
onStartListening()
पर कॉलबैक मिलने के बाद, अपनी टाइल अपडेट की जा सकती है.
टाइल के मोड के आधार पर, इस तारीख तक आपकी टाइल को कम से कम एक बार अपडेट किया जा सकता है
onStopListening()
के लिए कॉलबैक मिल रहा है.
ऐक्टिव मोड में, टाइल को अपडेट करने से पहले सिर्फ़ एक बार अपडेट किया जा सकता है
onStopListening()
पर कॉलबैक करें. नॉन-ऐक्टिव मोड में, अपनी टाइल को इस तरह अपडेट किया जा सकता है
onStartListening()
से onStopListening()
के बीच जितनी बार चाहें उतनी बार.
getQsTile()
पर कॉल करके, Tile
ऑब्जेक्ट वापस पाया जा सकता है. अपडेट करने के लिए
अपने Tile
ऑब्जेक्ट के खास फ़ील्ड का इस्तेमाल करते समय, इन तरीकों का इस्तेमाल करें:
टाइल सेट अप करने के बाद, आपको updateTile()
पर कॉल करना होगा
Tile
ऑब्जेक्ट के फ़ील्ड को सही वैल्यू पर सेट करें. इससे सिस्टम
अपडेट किया गया टाइल डेटा पार्स करें और यूज़र इंटरफ़ेस (यूआई) अपडेट करें.
Kotlin
data class StateModel(val enabled: Boolean, val label: String, val icon: Icon) override fun onStartListening() { super.onStartListening() val state = getStateFromService() qsTile.label = state.label qsTile.contentDescription = tile.label qsTile.state = if (state.enabled) Tile.STATE_ACTIVE else Tile.STATE_INACTIVE qsTile.icon = state.icon qsTile.updateTile() }
Java
public class StateModel { final boolean enabled; final String label; final Icon icon; public StateModel(boolean e, String l, Icon i) { enabled = e; label = l; icon = i; } } @Override public void onStartListening() { super.onStartListening(); StateModel state = getStateFromService(); Tile tile = getQsTile(); tile.setLabel(state.label); tile.setContentDescription(state.label); tile.setState(state.enabled ? Tile.STATE_ACTIVE : Tile.STATE_INACTIVE); tile.setIcon(state.icon); tile.updateTile(); }
टैप हैंडल करना
अगर आपकी टाइल टाइल में है, तो उपयोगकर्ता कार्रवाई को ट्रिगर करने के लिए उस पर टैप कर सकते हैं
STATE_ACTIVE
या STATE_INACTIVE
. इसके बाद सिस्टम आपके ऐप्लिकेशन के
onClick()
कॉलबैक.
जब आपके ऐप्लिकेशन को onClick()
पर कॉलबैक मिलता है, तो यह एक डायलॉग लॉन्च कर सकता है या
गतिविधि, बैकग्राउंड में होने वाले काम को ट्रिगर करें या अपनी टाइल की स्थिति बदलें.
Kotlin
var clicks = 0 override fun onClick() { super.onClick() counter++ qsTile.state = if (counter % 2 == 0) Tile.STATE_ACTIVE else Tile.STATE_INACTIVE qsTile.label = "Clicked $counter times" qsTile.contentDescription = qsTile.label qsTile.updateTile() }
Java
int clicks = 0; @Override public void onClick() { super.onClick(); counter++; Tile tile = getQsTile(); tile.setState((counter % 2 == 0) ? Tile.STATE_ACTIVE : Tile.STATE_INACTIVE); tile.setLabel("Clicked " + counter + " times"); tile.setContentDescription(tile.getLabel()); tile.updateTile(); }
डायलॉग लॉन्च करें
showDialog()
, क्विक सेटिंग पैनल को छोटा करता है और एक डायलॉग दिखाता है.
अगर अन्य इनपुट की ज़रूरत है, तो अपनी कार्रवाई में संदर्भ जोड़ने के लिए डायलॉग बॉक्स का इस्तेमाल करें
या उपयोगकर्ता की सहमति के बिना.
कोई गतिविधि लॉन्च करना
startActivityAndCollapse()
बटन को छोटा करते समय, कोई गतिविधि शुरू करता है
पैनल. अगर दिखाने के लिए ज़्यादा जानकारी है, तो गतिविधियों की जानकारी काम की होती है
या अगर आपकी गतिविधि बहुत ज़्यादा इंटरैक्टिव हो.
अगर आपके ऐप्लिकेशन को लोगों के साथ ज़्यादा इंटरैक्शन करने की ज़रूरत है, तो ऐप्लिकेशन को गतिविधि को अंतिम उपाय के रूप में स्वीकार नहीं किया जाता. इसके बजाय, डायलॉग या टॉगल का इस्तेमाल करें.
किसी टाइल पर देर तक टैप करने से, उपयोगकर्ता को ऐप्लिकेशन की जानकारी वाली स्क्रीन दिखने लगती है. बदलने के लिए
और इसके बजाय प्राथमिकताएं सेट करने के लिए कोई गतिविधि लॉन्च करें,
इसके साथ आपकी किसी गतिविधि में <intent-filter>
ACTION_QS_TILE_PREFERENCES
.
Android एपीआई 28 और इसके बाद के वर्शन में, PendingIntent
यह ज़रूरी है
Intent.FLAG_ACTIVITY_NEW_TASK
:
if (Build.VERSION.SDK_INT >= 28) {
intent.addFlags(Intent.FLAG_ACTIVITY_NEW_TASK);
}
इसके अलावा, आपके पास AndroidManifest.xml
में फ़्लैग जोड़ने का विकल्प भी है.
Activity
सेक्शन.
अपनी टाइल को 'टॉगल किया जा सकने वाला' के तौर पर मार्क करें
हमारा सुझाव है कि अगर आपकी टाइल मुख्य रूप से दो स्टेट वाला स्विच (यह टाइल का सबसे आम तरीका है). इससे मदद मिली ऑपरेटिंग सिस्टम पर टाइल के काम करने के तरीके के बारे में जानकारी देना और सुलभता को बेहतर बनाया जा सकता है.
अपनी टाइल को टॉगल करने लायक के तौर पर मार्क करने के लिए, TOGGLEABLE_TILE
मेटाडेटा को true
पर सेट करें.
<service ...>
<meta-data android:name="android.service.quicksettings.TOGGLEABLE_TILE"
android:value="true" />
</service>
सुरक्षित रूप से लॉक किए गए डिवाइसों पर सिर्फ़ सुरक्षित कार्रवाइयां करें
लॉक किए गए डिवाइसों पर, आपकी टाइल लॉक स्क्रीन पर सबसे ऊपर दिख सकती है. अगर टाइल
इसमें संवेदनशील जानकारी है. इसलिए, isSecure()
की वैल्यू की जांच करके,
यह तय करें कि डिवाइस सुरक्षित स्थिति में है या नहीं. साथ ही, आपके TileService
को
उसके व्यवहार में बदलाव कर सके.
अगर लॉक होने पर भी टाइल से जुड़ी कार्रवाई सुरक्षित हो, तो startActivity()
का इस्तेमाल करें
लॉक स्क्रीन पर कोई गतिविधि लॉन्च करने के लिए.
अगर टाइल से जुड़ी कार्रवाई सुरक्षित नहीं है, तो unlockAndRun()
का इस्तेमाल करके, उपयोगकर्ता से
उनके डिवाइस को अनलॉक करते हैं. यह प्रोसेस पूरी होने पर, सिस्टम
Runnable
ऑब्जेक्ट, जिसे आपने इसमें पास किया है
तरीका.
उपयोगकर्ता से टाइल जोड़ने का अनुरोध करें
मैन्युअल तरीके से टाइल जोड़ने के लिए, लोगों को कुछ चरण पूरे करने होंगे:
- क्विक सेटिंग पैनल को खोलने के लिए, नीचे की ओर स्वाइप करें.
- 'बदलाव करें' बटन पर टैप करें.
- उनके डिवाइस पर मौजूद सभी टाइल पर तब तक स्क्रोल करें, जब तक वे आपकी टाइल नहीं ढूंढ लेते.
- अपनी टाइल को दबाकर रखें और उसे खींचकर, इस्तेमाल की जा रही टाइल की सूची में छोड़ें.
उपयोगकर्ता किसी भी समय आपकी टाइल को दूसरी जगह ले जा सकता है या उसे हटा सकता है.
Android 13 और इसके बाद के वर्शन में, requestAddTileService()
तरीका इस्तेमाल किया जा सकता है
ताकि लोग किसी डिवाइस में आपकी टाइल आसानी से जोड़ सकें. यह तरीका
लोगों को अनुरोध भेजकर, आपकी टाइल को क्विक सेक्शन में तुरंत जोड़ने का अनुरोध करता है
सेटिंग पैनल. प्रॉम्प्ट में ऐप्लिकेशन का नाम, दिया गया लेबल,
और आइकन.
!['क्विक सेटिंग प्लेसमेंट एपीआई प्रॉम्प्ट'](https://developer.android.com/static/develop/ui/views/images/placement-api-user-prompt.png?authuser=0&hl=hi)
public void requestAddTileService (
ComponentName tileServiceComponentName,
CharSequence tileLabel,
Icon icon,
Executor resultExecutor,
Consumer<Integer> resultCallback
)
कॉलबैक में यह जानकारी होती है कि टाइल जोड़ी गई या नहीं, नहीं जोड़ा गया, अगर यह पहले से मौजूद था या कोई गड़बड़ी हुई थी.
अपने विवेक से ही यह तय करें कि लोगों को कब और कितनी बार मैसेज भेजना है. बुध
requestAddTileService()
को सिर्फ़ कॉन्टेक्स्ट के हिसाब से कॉल करने का सुझाव दिया जाता है – जैसे
जब उपयोगकर्ता पहली बार किसी ऐसी सुविधा से इंटरैक्ट करता है जो आपकी टाइल से मिलती है.
सिस्टम किसी दिए गए अनुरोध को प्रोसेस करना बंद कर सकता है
ComponentName
: अगर उपयोगकर्ता ने इस कार्रवाई को पहले ही कई बार अस्वीकार कर दिया हो. कॉन्टेंट बनाने
उपयोगकर्ता को, इसे पाने के लिए इस्तेमाल किए गए Context
से तय किया जाता है
सेवा—यह वर्तमान उपयोगकर्ता से मेल खाना चाहिए.