android पहुंच योग्यता अनुमति के बिना इनपुट विधि पिकर दृश्यता का पता लगाने के लिए कैसे करें



android-activity service (1)

यह एक टिप्पणी होना चाहिए, लेकिन मैं अभी तक टिप्पणी नहीं कर सकता

आप इसे हासिल करने के लिए xposed का उपयोग कर सकते हैं, लेकिन इसके लिए जड़ें डिवाइस की आवश्यकता होगी, और मुझे लगता है कि चर्चा से बाहर है

यह एक बात है जिसके लिए एक्सेस एपीआई का महत्व है। आपने पहले ही कहा है कि आप गंदे तरीके से उपयोग नहीं करना चाहते, इसलिए मैं आपको केवल एपीआई का इस्तेमाल करने की सलाह दूंगा।

सुरक्षा चिंताओं के लिए ऐसा करने का कोई तरीका नहीं होना चाहिए (और नहीं है afaik)।

मैं इस तरह उपयोगकर्ता को इनपुट पद्धति पिकर दिखा रहा हूँ और पिकर पॉप अप करता है:

InputMethodManager im = (InputMethodManager) context.getSystemService(Context.INPUT_METHOD_SERVICE);

im.showInputMethodPicker();

अब अगर उपयोगकर्ता पिकर को खारिज कर देता है (उदाहरण के लिए पिकर के बाहर क्लिक करके) मुझे यह जानना है कि, ऐसा हुआ और कुछ कार्य किया (जैसे कि उदाहरण के लिए एक सूचना दिखाएं)

मुझे पता है कि किसी गतिविधि में मैं रूट लेआउट के फोकस को जांचने का गंदा तरीका कर सकता हूं और मुझे पता है कि अभिगम्यता की अनुमति के साथ मैं जांच सकता हूं कि उस सिस्टम पर ध्यान केंद्रित है या नहीं।

समस्या यह है कि मैं एक सेवा चला रहा हूं और मुझे यह पता लगाने की आवश्यकता है कि IME पिकर दिखा रहा है या नहीं, भले ही मैं अपने ऐप (उदाहरण के लिए एक तृतीय पक्ष ऐप या यहां तक ​​कि एंड्रॉइड कीबोर्ड सेटिंग्स) में नहीं हूं और मुझे एक्सेसबिलिटी भी मिल रही है उपयोगकर्ता के लिए थोड़ा भ्रमित करने की अनुमति इसलिए मैं उस का सहारा नहीं करना चाहूंगा और एक वैकल्पिक रास्ता खोजूँगा।

क्या कोई वैकल्पिक तरीका है?





android-input-method