Android 11 और इसके बाद के वर्शन में, कीबोर्ड और इनपुट के अन्य तरीकों के एडिटर (IME) ऑटोमैटिक भरने के सुझावों को इनलाइन, सुझाव वाले बार में या मेन्यू में सुझाव दिखाने वाले सिस्टम के बजाय कुछ और दिखा सकते हैं. ऑटोमैटिक भरने की सुविधा से मिलने वाले सुझावों में, पासवर्ड या क्रेडिट कार्ड की जानकारी जैसा निजी डेटा शामिल हो सकता है. इसलिए, जब तक उपयोगकर्ता कोई सुझाव नहीं चुनता, तब तक ये सुझाव IME से छिपे रहते हैं. इस सुविधा का इस्तेमाल करने के लिए, IME और ऑटोमैटिक भरने की सेवाओं को अपडेट करें. जैसे, पासवर्ड मैनेजर. अगर कोई IME या ऑटोमैटिक भरने की सेवा, इनलाइन ऑटोमैटिक भरने की सुविधा के साथ काम नहीं करती है, तो सुझाव एक मेन्यू में दिखाए जाते हैं. जैसे, Android 11 से पहले के वर्शन में.
वर्कफ़्लो
इस फ़्लो में, आईएमई का मतलब मौजूदा कीबोर्ड या अन्य इनपुट एडिटर से है. साथ ही, सुझाव देने वाली कंपनी का मतलब, ऑटोमैटिक भरने के सुझाव देने वाली सही कंपनी से है. इनपुट फ़ील्ड और उपयोगकर्ता की सेटिंग के आधार पर, सुझाव देने वाला प्लैटफ़ॉर्म या अपने-आप जानकारी भरने की सेवा हो सकती है.
इसमें लोग किसी ऐसे इनपुट फ़ील्ड पर फ़ोकस करते हैं जो ऑटोमैटिक भरने की सुविधा को ट्रिगर करता है. जैसे, पासवर्ड या क्रेडिट-कार्ड इनपुट फ़ील्ड.
प्लैटफ़ॉर्म, मौजूदा IME और सुझाव देने वाली सही सेवा से पूछता है कि क्या इन-लाइन ऑटोमैटिक भरने की सुविधा काम करती है. अगर IME या सुझाव देने वाली सेवा, इनलाइन ऑटोमैटिक भरने की सुविधा के साथ काम नहीं करती है, तो सुझाव, Android 10 और उससे पहले के वर्शन की तरह ही मेन्यू में दिखता है.
यह प्लैटफ़ॉर्म, IME से सुझाव देने का अनुरोध मांगता है. सुझाव के लिए किए गए इस अनुरोध में, दिखाए जाने वाले सुझावों की ज़्यादा से ज़्यादा संख्या के बारे में बताया जाता है. साथ ही, हर सुझाव के लिए प्रज़ेंटेशन की खास जानकारी भी दी जाती है. प्रज़ेंटेशन से जुड़ी खास जानकारी, ज़्यादा से ज़्यादा साइज़, टेक्स्ट के साइज़, रंग, और फ़ॉन्ट डेटा जैसी चीज़ें तय करती है, ताकि सुझाव देने वाली कंपनी, IME के रंग-रूप जैसी चीज़ों के बारे में बता सके.
प्लैटफ़ॉर्म, सुझाव देने वाली कंपनी से अनुरोध किए गए सुझावों की संख्या तक सुझाव देने के लिए कहता है. हर सुझाव में एक कॉलबैक शामिल होता है, ताकि सुझाव के यूज़र इंटरफ़ेस (यूआई) वाले
View
को फ़्लेट किया जा सके.प्लैटफ़ॉर्म, IME को बताता है कि सुझाव तैयार हैं. IME, हर सुझाव के
View
को बड़ा करने के लिए, कॉलबैक तरीके को कॉल करके सुझाव दिखाता है. उपयोगकर्ता की निजी जानकारी को सुरक्षित रखने के लिए, IME इस चरण में सुझावों को नहीं देखता.अगर उपयोगकर्ता सुझावों में से कोई एक चुनता है, तो IME को उसी तरह सूचना दी जाती है जैसे कि उपयोगकर्ता किसी सिस्टम मेन्यू से सुझाव चुनता है.
यहां दिए गए सेक्शन में, ऑटोमैटिक भरने की सुविधा को ऑटोमैटिक भरने की सुविधा के लिए, IME या ऑटोमैटिक जानकारी भरने की सेवा को कॉन्फ़िगर करने का तरीका बताया गया है.
इनलाइन ऑटोमैटिक भरने की सुविधा के साथ काम करने के लिए, आईएमई कॉन्फ़िगर करना
इस सेक्शन में, इनलाइन ऑटोमैटिक भरने की सुविधा के साथ काम करने के लिए, अपने आईएमई को कॉन्फ़िगर करने का तरीका बताया गया है. अगर आपका IME, इनलाइन ऑटोमैटिक भरने की सुविधा के साथ काम नहीं करता है, तो प्लैटफ़ॉर्म डिफ़ॉल्ट रूप से, ऑटोमैटिक भरने के सुझावों को मेन्यू में दिखाता है.
आपके IME को supportsInlinedSuggestions
एट्रिब्यूट को true
पर सेट करना चाहिए:
<input-method
xmlns:android="http://schemas.android.com/apk/res/android"
android:supportsInlineSuggestions="true"/>
जब प्लैटफ़ॉर्म को अपने-आप जानकारी भरने का सुझाव चाहिए होता है, तो वह आपके IME के InputMethodService.onCreateInlineSuggestionsRequest()
तरीके को कॉल करता है. आपको यह तरीका लागू करना होगा. InlineSuggestionsRequest
के तौर पर, यह जानकारी दें:
- आपके IME को कितने सुझाव चाहिए.
InlinePresentationSpec
हर सुझाव के लिए, इससे तय होता है कि सुझाव किस तरह दिखाया जाए.
जब प्लैटफ़ॉर्म से सुझाव मिलते हैं, तो यह आपके IME के
onInlineSuggestionsResponse()
तरीके को कॉल करता है और सुझाव वाले InlineSuggestionsResponse
को पास करता है. आपको यह तरीका लागू करना होगा. सुझावों की सूची पाने के लिए, लागू करने के दौरान InlineSuggestionsResponse.getInlineSuggestions()
को कॉल करें. इसके बाद, हर सुझाव को फ़्लेट करने के लिए, उसके InlineSuggestion.inflate()
तरीके को कॉल करें.
इनलाइन ऑटोमैटिक भरने की सुविधा के साथ काम करने के लिए, ऑटोमैटिक भरने की सेवाओं को कॉन्फ़िगर करना
इस सेक्शन में, इनलाइन ऑटोमैटिक भरने की सुविधा के साथ काम करने के लिए, ऑटोमैटिक भरने की सेवा को कॉन्फ़िगर करने का तरीका बताया गया है. अगर आपके ऐप्लिकेशन में ऑटोमैटिक जानकारी भरने की सुविधा के साथ, ऑटोमैटिक भरने की सुविधा काम नहीं करती, तो प्लैटफ़ॉर्म डिफ़ॉल्ट रूप से मेन्यू में जानकारी ऑटोमैटिक भरने की सुविधा के सुझाव दिखाता है.
जानकारी ऑटोमैटिक भरने की सुविधा को supportsInlinedSuggestions
एट्रिब्यूट को true
पर सेट करना होगा:
<autofill-service
xmlns:android="http://schemas.android.com/apk/res/android"
android:supportsInlineSuggestions="true"/>
जब IME को ऑटोमैटिक भरने की सुविधा के लिए सुझावों की ज़रूरत होती है, तब प्लैटफ़ॉर्म, जानकारी ऑटोमैटिक भरने की सुविधा के onFillRequest()
तरीके का इस्तेमाल करता है. यह ठीक वैसा ही होता है जैसे Android 11 से पहले के वर्शन में होता है. हालांकि, आपकी सेवा को IME से बनाया गया InlineSuggestionsRequest
पाने के लिए, पास किए गए FillRequest
ऑब्जेक्ट के getInlineSuggestionsRequest()
तरीके को कॉल करना होगा. InlineSuggestionsRequest
से पता चलता है कि कितने इनलाइन सुझावों की ज़रूरत है और हर एक को कैसे दिखाया जाना चाहिए. अगर IME, इनलाइन सुझावों के साथ काम नहीं करता है, तो यह तरीका null
दिखाता है.
ऑटोमैटिक भरने की सुविधा, InlineSuggestionsRequest
में अनुरोध की गई ज़्यादा से ज़्यादा संख्या तक InlinePresentation
ऑब्जेक्ट बनाती है.
आपके प्रज़ेंटेशन, InlineSuggestionsRequest
के तय किए गए साइज़ की सीमाओं के मुताबिक होने चाहिए. अपने सुझावों को IME पर वापस करने के लिए, हर सुझाव के लिए एक बार Dataset.Builder.setValue()
पर कॉल करें. Android 11 में, इनलाइन के सुझावों की सुविधा के लिए Dataset.Builder.setValue()
के वर्शन उपलब्ध हैं.