Supprimer des SMS sous Android 1.5
Il ya beaucoup de questions à ce sujet, pas de réponses sont à travailler dans mon application 🙁
J'ai besoin de supprimer des SMS à partir d'un récepteur, même si l'utilisateur peut le voir, mais il doit être retiré de la programmation.
Comment puis-je le faire?
Le plus approprié que j'ai utilisé était le suivant, mais ça ne fonctionne pas 🙁
context.getContentResolver().delete(
deleteUri,
"address=? and date=?",
new String[] { msg.getOriginatingAddress(),
String.valueOf(msg.getTimestampMillis()) });
Vous devez vous connecter pour publier un commentaire.
Après refactoring mon code, j'ai trouvé que la solution suivante fonctionne:
Merci à tous pour l'aide!
ps: si ce code est utile pour quelqu'un n'oubliez pas que le catch(Exception) n'est pas bon.
Suffit d'utiliser ce code simple dans votre récepteur de radiodiffusion.
Quelle est la valeur de
deleteUri
?Êtes-vous sûr que le SMS a été écrit dans le local de stockage avant vous essayez de le supprimer? Si vous êtes la manipulation de l'
SMS_RECEIVED
de diffusion, il n'est pas garanti que les SMS ont été traitées par l'application SMS native encore...Aussi, je tiens à préciser que le contenu de SMS API fournisseur n'est pas publiquement documentés par Android et pourrait être amené à changer dans le futur. Mais si vous êtes seulement en ciblant Android 1.5 (ou les dispositifs actuels), alors vous pouvez être ok.
content://sms
semble très bien. Pouvez-vous vérifier dans la base de données SQLite que les valeurs que vous êtes de passage dans la requête sont les mêmes que ceux stockés dans la base de données? Comment vérifiez-vous que le message n'a pas été supprimé?Ce lien peut être utile
http://blog.chinaunix.net/u/9577/showart_1850111.html
Je n'ai pas entièrement mis en œuvre moi-même, mais de ce que j'ai mis en œuvre des travaux
Noter qu'il n'est pas entièrement documenté et est donc susceptible de changer dans les futures versions d'Android
EDIT:
Ici est la façon dont j'ai mis en place le code moi-même:
Le code de l'écoute des changements dans le Contenu du SMS Fournisseur.
C'est la ligne qui vous intéresse, si vous souhaitez supprimer un SMS
Vous devez supprimer la totalité d'une conversation à supprimer les SMS, je n'ai pas été en mesure de simplement supprimer le dernier message d'une conversation
l'utiliser et être heureux gars