2015-09-25 16 views
8

मैं लॉकस्क्रीन आवेदन के विकास कर रहा हूँ, और मैं घर बटन को निष्क्रिय करना चाहते,स्क्रीन पिनिंग में उत्पन्न टोस्ट संदेशों को कैसे अक्षम करें?

मेरी अनुप्रयोग है - डिवाइस स्वामी और डिवाइस प्रशासक

अब मैं अक्षम होम बटन के लिए पिन करते हुए स्क्रीन usnig कर रहा हूँ।

लेकिन अगर मैं गतिविधि हर बार शुरू कर दिया मैं प्राप्त msg "स्क्रीन पिन की गई" और बंद "स्क्रीन अनपिन" पर और अगर फिर घर पर क्लिक करें,

"अनपिन आपके संगठन के द्वारा अनुमति नहीं है" मैं निकालना चाहते हैं उन सभी टोस्ट संदेश।

कृपया मुझे इसके लिए समाधान सुझाएं या यदि आपके पास होम बटन को अक्षम करने के लिए कोई अन्य बेहतर समाधान है तो कृपया मेरी मदद करें ..!

+0

क्या आपकी समस्या हल हो गई है? कैसे? – azhar

+0

इसके लिए कोई विकल्प नहीं, मैं बस इसके लिए खोज रहा था। यह या तो लॉन्चर या रूटिंग डिवाइस की तरह ऐप बना रहा है। –

उत्तर

1

कोई ओवरराइड या "श्वेतसूची" या नीति नहीं है जो किसी डिवाइस स्वामी को इस संदेश को ओवरराइड करने की अनुमति देती है।

यहां कोड है जो टोस्ट दिखाता है: http://androidxref.com/6.0.1_r10/xref/frameworks/base/services/core/java/com/android/server/am/LockTaskNotify.java#74

यहां एक कोड है जो लॉक किए गए कार्य को दिखाए जाने पर show विधि को कॉल करता है: http://androidxref.com/6.0.1_r10/xref/frameworks/base/services/core/java/com/android/server/am/ActivityStackSupervisor.java#3919

कोई झंडे या संसाधन नहीं हैं जिन्हें यहां तक ​​कि मुझे यहां तक ​​कि ओवरराइड किया जा सकता है। अगर आपके पास स्रोत तक पहुंच है, तो आपको उस लाइन पर टिप्पणी करने की आवश्यकता होगी जो show को आमंत्रित करता है।

+0

शायद हम ऐप को पहले लॉक गतिविधि पर वापस जाने की अनुमति नहीं दे सकते? 'OnResume' में दूसरी गतिविधि को मजबूर करना? http://androidxref.com/6.0.1_r10/xref/frameworks/base/services/core/java/com/android/server/am/ActivityStackSupervisor.java#3912 – Magillus

2

कर सकते हैं मान लिया जाये कि आप एक डिवाइस स्वामी रूप में अपने अनुप्रयोग सूची एडीबी इस्तेमाल किया, आप सभी टोस्ट संदेशों को निष्क्रिय करने के लिए एक समान कमांड प्रॉम्प्ट का उपयोग करें:, सीडी निर्देशिका के लिए जहां

adb shell appops set android TOAST_WINDOW deny 

काम करने के लिए इस आदेश के लिए अपने adb.exe रहता है (सिवाय इसके कि यदि आप इसे पथ में जोड़ते हैं)। यह सभी टोस्ट संदेशों को एंड्रॉइड डिवाइस पर अक्षम कर देगा जो वर्चुअल है या नहीं (वर्चुअल या नहीं)। यदि कई डिवाइस हैं, तो पहले पाए गए पहले का चयन किया जाएगा।

+0

यह सवाल का जवाब नहीं देता है, संघ_ विकास केवल वांछित है कुछ टोस्ट अक्षम करें, सब कुछ नहीं। –

+0

मुझे लगता है कि यही कारण है कि मेरा जवाब तब स्वीकार नहीं किया गया था। फिर भी, इसे एक कामकाज के रूप में इस्तेमाल किया जा सकता है। यदि आप उपयोगकर्ता को अन्य संदेश दिखाना चाहते हैं, तो आप एक कस्टम संवाद का उपयोग करके टोस्ट-जैसे व्यवहार की नकल कर सकते हैं जो कुछ सेकंड के बाद स्वचालित रूप से खारिज हो जाता है। यह मुश्किल नहीं है ... – Jenever

संबंधित मुद्दे