1. 기본
1) 연락처의 그룹 정보를 담고 있는 ContactsContract.Groups 라는 테이블이 따로 있다.
2) ContactsContract.Groups 에 신규 그룹에 관한 row를 추가한다.
3) ContactsContract.Data 테이블에 GroupMembership 에 관한 row를 생성할 때, ContactsContract.CommonDataKinds.GroupMembership.GROUP_ROW_ID 에 ContactsContract.Groups 테이블의 id를 할당한다.
2. ContactsContract.Groups 에 신규 그룹 row 추가 방법
1) 연락처 정보에서 그룹에 관한 정보를 중복을 제거해서 추려낸다. (사람별로 그룹 정보는 겹칠 수 있기 때문에 중복 제거를 해야 한다. 중복 제거는 직접 로직을 구현하지 않고, Set 이라는 Java Collection 을 이용한다.)
2) ContactsContract.Groups 에 항목을 추가한다.
3. Data 에 GroupMembership 에 관한 row를 생성시, ContactsContract.Groups 테이블의 id를 할당하는 방법
1) 그룹명을 가지고, Groups table 에서 id를 조회하는 method를 만든다.
2) GroupMembership 에 관한 row를 생성시, Groups table 에서 id를 조회해서, ContactsContract.CommonDataKinds.GroupMembership.GROUP_ROW_ID 에 설정한다.
참고)
1. Contact Groups'Programming Practice > Android' 카테고리의 다른 글
[Contacts Provider]연락처 입력 방법 (0) | 2014.10.26 |
---|---|
[Contacts Provider]연락처 기본 개념 (0) | 2014.10.26 |
SQLite database 에 데이터 저장하고 조회하기 (0) | 2014.10.18 |
한 화면에서 버튼을 눌렀을 때 다른 화면을 호출하기 (0) | 2014.10.17 |
화면에 리스트 목록 표시하기 (0) | 2014.10.17 |