*SMS(단문 문자)와 MMS(장문 문자)가 지우는 로직이 다르다 ~!! --> 엄청 헤멤.
안드로이드 개발 문서가 빈약함을 절실하게 느낀다.. ㅜㅜ
ContentResolve에 쓰이는 URI에 대한 설명이 어디에도 없다.. ;;
어떻게 알고 쓰라고?!
public void deleteSpecifiedSMSHistory(ArrayList<String>address){
Uri uri = Uri.parse("content://sms"); //우선 Content URI가 다르다.
Uri uri_mms = Uri.parse("content://mms");
ContentResolver contentResolver = getContentResolver();
for (int i = 0; i < address.size(); i++) {
String where = "address = " + "'" + address.get(i) + "'";
Cursor cursor = contentResolver.query(uri, null, where, null, null);
Cursor cursor_mms = contentResolver.query(uri_mms, null, where, null, null) ;
while (cursor.moveToNext()) { // Delete SMS
long thread_id = cursor.getLong(1); // SMS는 thread_id 값을
Uri thread = Uri.parse("content://sms/conversations/"+ thread_id);
getContentResolver().delete(thread, null, null);
}
while(cursor_mms.moveToNext()){ //Delete MMS
long _id = cursor_mms.getLong(0); // MMS는 _id 값을 가져와야 정상적으로 삭제가 된다 !! 이것을 누가 알까?
Uri thread = Uri.parse("content://mms/inbox/" + _id);
getContentResolver().delete(thread, null, null);
}
}
}
삭제 막 생각하고 구글링 중이라 잘 모르지만 ...
답글삭제믿음이 가는 깔끔한 글 인상적이네요.
베껴 두고 공부해야겠습니다.
감사합니다.
삭제 막 생각하고 구글링 중이라 잘 모르지만 ...
답글삭제믿음이 가는 깔끔한 글 인상적이네요.
베껴 두고 공부해야겠습니다.
감사합니다.