हटाना मैं अपने एंड्रॉइड एप्लिकेशन में स्वचालित रूप से कुछ निश्चित एसएमएस हटाना चाहता हूं। इसलिए मेरे पास एक विधि है जो वही करता है जो मैं चाहता हूं। हालांकि, यह केवल तभी काम करता है जब मैं सीधे ग्रहण से अपने फोन पर एप्लिकेशन को तैनात करता हूं। फिर यह आने वाले एसएमएस हटा देता है। हालांकि, यह काम नहीं करता है अगर आवेदन बाजार से डाउनलोड किया जाता है। लेकिन कोई त्रुटि भी नहीं है। क्या कोई जानता है कि मैं इसे कैसे हल कर सकता हूं या यह केवल रूट उपकरणों पर ही काम करता है?एंड्रॉइड एसएमएस प्रोग्रामेटिक रूप से
public void deleteSMS(Context context, String message, String number) {
try {
mLogger.logInfo("Deleting SMS from inbox");
Uri uriSms = Uri.parse("content://sms/inbox");
Cursor c = context.getContentResolver().query(uriSms,
new String[] { "_id", "thread_id", "address",
"person", "date", "body" }, null, null, null);
if (c != null && c.moveToFirst()) {
do {
long id = c.getLong(0);
long threadId = c.getLong(1);
String address = c.getString(2);
String body = c.getString(5);
if (message.equals(body) && address.equals(number)) {
mLogger.logInfo("Deleting SMS with id: " + threadId);
context.getContentResolver().delete(
Uri.parse("content://sms/" + id), null, null);
}
} while (c.moveToNext());
}
} catch (Exception e) {
mLogger.logError("Could not delete SMS from inbox: " + e.getMessage());
}
}
संभावित डुप्लिकेट [प्रोग्राम में एंड्रॉइड में इनबॉक्स से एक एसएमएस कैसे हटाएं?] (Http://stackoverflow.com/questions/419184/how-to-delete-an-sms-from-the-inbox-in -android- प्रोग्रामेटिक रूप से) –
@ मार्क्लिन दोनों प्रश्न अलग हैं। इस प्रश्न में एसएमएस को ग्रहण से सीधे तैनात किया गया है, लेकिन मार्कर्ट स्थान –
@ सुनीकुमार साहू से नहीं: आप सही हैं। कोड पूरी तरह से काम करता है, लेकिन केवल अगर डिवाइस पीसी से कनेक्ट है, न कि बाजार से डाउनलोड किया गया है और मैं समझने की कोशिश क्यों कर रहा हूं? – Florian