मेरा ऐप SyncAdapter
पैटर्न का उपयोग करता है, जिसमें AccountManager
और ContentProvider
का उपयोग करके उपयोगकर्ता क्रेडेंशियल्स को डीबी में डेटा स्टोर करने के लिए उपयोग किया जाता है।खाता हटाए जाने पर डेटाबेस को हटा रहा है
जब account
हटा दिया जाता है तो मैं this question में बताए गए दृष्टिकोण का उपयोग करके डीबी को हटा सकता हूं। डीबी को हटाकर हटा दिया जाता है:
boolean deleted = mContext.deleteDatabase(DatabaseHelper.DATABASE_NAME);
यह ठीक काम करता है लेकिन जब मैं लॉगिन करता हूं तो सब कुछ अभी भी वहां है। ऐसा लगता है कि ContentProvider
को पता नहीं है कि डीबी हटा दिया गया है।
this answer में, inazaruk का कहना है:
आप सुनिश्चित करें कि आप प्रक्रिया है कि ContentProvider कि विशिष्ट डेटाबेस फ़ाइल का उपयोग करता है होस्ट करता है को मार डाला गया है बनाने की जरूरत है। और से इसे हटाएं।
डीबी को साफ़ करने की प्रक्रिया को मारना सही नहीं लगता है।
क्या कोई बेहतर काम है?
उल्लेख डेटाबेस फ़ाइल क्यों हटाना चल रहा है और शायद पुरानी फाइल के लिए संदर्भ में एक ही उदाहरण है? डेटाबेस से डेटा को पर्याप्त नहीं हटा रहा है? – zapl
@zapl: हाँ। मैं कुछ ऐसा कर सकता था जैसे 'टेबल से हटाएं;' – Macarse