0

맞춤 계정을 만들었으며 해당 계정에 몇 개의 연락처를 추가했습니다. 그래서 지금 그 연락처에서 계정을 제거하고 싶습니다. 몇 주 동안 인터넷 검색을하고 있지만 아무것도 찾을 수 없습니다. 아무도 어떻게해야하는지 안다면 저를 도와주세요.연락처에서 맞춤 계정 ACCOUNT_TYPE을 (를) 삭제하십시오.

감사합니다.

답변

0

아래 코드는 내 문제 :

String selection = ContactsContract.RawContacts._ID+ "=?"; 
    String selectionargs[] = { String.valueOf(rawContactId) }; //Get rawContactId  

    int deletedRawContacts = context.getContentResolver().delete(ContactsContract.RawContacts.CONTENT_URI.buildUpon() 
           .appendQueryParameter(ContactsContract.RawContacts.ACCOUNT_NAME, ACCOUNT_NAME) 
           .appendQueryParameter(ContactsContract.RawContacts.ACCOUNT_TYPE, ACCOUNT_TYPE) 
           .appendQueryParameter(ContactsContract.CALLER_IS_SYNCADAPTER, "true").build(), 
           selection,selectionargs); 
    System.out.println("No. of contacts deleted are " + deletedRawContacts); 

을 해결 참조 :https://stackoverflow.com/a/8692909/3142192

0

참고 : 이 아닌 RawContacts을 수정해야합니다. Contacts은 단순히 RawContacts에 가입하고 계정에는 RawContacts이 생성됩니다.

RawContacts은 정확히 하나의 계정에 속해야하므로 확실하지 않습니다. 당신은 그 RawContacts 이상 반복 시도하고 다른 유효기존 계정에 account_typeaccount_name의 값을 변경할 수 있습니다.

성공할 가능성이 있지만, 모든 Android 버전/기기에 대해 신뢰할 수 있는지 확신 할 수 없습니다.

+0

난 다음 전체 연락처도 삭제됩니다 ** :( – Ram

+0

당신이하려고하는 ** RawContacts을 삭제하려고하면 해당 RawContacts를 삭제하거나 계정을 변경 하시겠습니까? 휴대 전화의 설정> 계정> 맞춤 계정> 계정 삭제로 계정을 삭제하면 쉽게 삭제할 수 있습니다 .. – marmor

+0

연락처를 모두 지우고 싶지 않습니다. 삭제하고 싶을뿐입니다. 하나의 연락. – Ram