2012-03-29 14 views
6

क्या कोई एप्लिकेशन स्वयं अनइंस्टॉल करने का कोई तरीका है? उदाहरण के लिए: मैं अपने ऐप में "अनइंस्टॉल करें" बटन पर क्लिक करने में सक्षम होना चाहता हूं और ऐप को स्वयं अनइंस्टॉल कर सकता हूं।एंड्रॉइड एप्लिकेशन स्व-अनइंस्टॉल

मैं कल्पना कर सकता हूं कि आप फर्मवेयर का एक फ़ंक्शन कॉल कर सकते हैं और उस पर कार्रवाई का प्रतिनिधि हो सकते हैं ताकि ऐप अनइंस्टॉल हो जाए।

मुझे इसकी आवश्यकता यह है कि जब ऐप अनइंस्टॉल किया जाता है तो मुझे ऐप द्वारा डाउनलोड किए गए sdcard पर कुछ फ़ाइलों को हटाने की आवश्यकता होती है।

+0

के संभावित डुप्लिकेट के लिए यह काम करने की कोशिश [स्थापना रद्द APK का प्रोग्राम के रूप में (PackageManager बनाम इंटेंट) स्थापित /] (निकाल सकते हैं http://stackoverflow.com/questions/6813322/install-uninstall-apks-programmatically-packagemanager-vs-intents) –

उत्तर

10

आप अपने ऐप Intent.ACTION_DELETE

का उपयोग करके मुझे

Intent intent = new Intent(Intent.ACTION_DELETE); 
    intent.setData(Uri.parse("package:" + this.getPackageName())); 
    startActivity(intent); 
+0

यह उपयोगकर्ता को अनइंस्टॉल स्क्रीन पर ले जाता है। –

+0

हाय, मुझे पता है कि मैं बहुत देर हो चुकी हूं, लेकिन क्या आप जानते हैं कि ऐप को स्वचालित रूप से अनइंस्टॉल कैसे करें? (यानी उपयोगकर्ता से कोई पुष्टि की आवश्यकता नहीं है) –

3

नहीं आप बस नहीं कर सकते हैं। कम से कम उन फ़ोनों के लिए नहीं जो रूट नहीं हैं। आप उपयोगकर्ता को Uninstall स्क्रीन पर ले जा सकते हैं, लेकिन उन्हें ऐप को अनइंस्टॉल करने के लिए "अनइंस्टॉल करें" पर क्लिक करना होगा। अधिक जानकारी के लिए install/uninstall application programmatically.

-1

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

मेरा सुझाव है कि फ़ाइलों को स्टोर करने के लिए एसडी कार्ड का उपयोग करने के बजाय, आप आंतरिक संग्रहण का उपयोग करते हैं। जब ऐप अनइंस्टॉल किया जाता है तो ये फ़ाइलें स्वचालित रूप से हटा दी जाती हैं।

http://developer.android.com/guide/topics/data/data-storage.html#filesInternal

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