2011-06-13 9 views
12

मुझे यह पता लगाने की आवश्यकता है कि वर्तमान एंड्रॉइड डिवाइस बाजार के अलावा अन्य स्रोतों से ऐप्स इंस्टॉल करने की अनुमति देता है या नहीं। यह विकल्प "अज्ञात स्रोत" नामक अनुप्रयोगों के तहत सेटिंग्स UI में दिखाई देता है।प्रोग्रामिक रूप से पता चलता है कि अज्ञात स्रोतों से स्थापित करने की अनुमति है

सेटिंग मूल रूप से आपको एपीके डाउनलोड और इंस्टॉल करने की अनुमति देती है जो Google ऐप मार्केट से उत्पन्न नहीं हुई थी।

मैं कैसे जांचूं कि यह ध्वज कोड का उपयोग कर चालू या बंद है या नहीं?

उत्तर

10

यह सेटिंग "कहा जाता है INSTALL_NON_MARKET_APP" (click for documentation)

(जब मैं इस सवाल का जवाब, प्रलेखन भीतर गहरे छिपा हुआ एक अलग नाम के साथ पाया मैं मूल रूप से पहले से ही सवाल टाइप किया, तो मैं, प्रश्न और आत्म उत्तर पोस्ट करने का फैसला किया है, क्योंकि यह ।

boolean isNonPlayAppAllowed = Settings.Secure.getInt(getContentResolver(), Settings.Secure.INSTALL_NON_MARKET_APPS) == 1; 

भी उपयोगकर्ता के लिए सेटिंग दिखा सकता है मुझे उपयोगी: तुच्छ नहीं)

21

यहाँ कोड का उल्लेख सेटिंग का उपयोग करता है है

0,123,
if (!isNonPlayAppAllowed) { 
    startActivity(new Intent(android.provider.Settings.ACTION_SECURITY_SETTINGS)); 
} 
+0

इस कोड को एप्लिकेशन में कहां जोड़ें? मुख्य गतिविधि या कहीं और कहीं और? – NetStarter

+0

प्रश्न "अज्ञात स्रोत" instalation ध्वज खोज रहा था। वेरिएबल isNonPlayApp अनुमति है वह ध्वज है। यह सभी स्थिर तरीकों से परिभाषित किया गया है, ताकि आप इसे अपने कोड में कहीं भी परिभाषित/उपयोग कर सकें। आपको बस getContentResover() की आवश्यकता है, जिसका अर्थ है कि आपको केवल संदर्भ की आवश्यकता है। – MSquare

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