https://developer.android.com/guide/topics/providers/contacts-provider
연락처 제공자 | Android 개발자 | Android Developers
연락처 제공자 연락처 제공자는 사람에 대한 데이터를 저장하는 기기의 중앙 리포지토리를 관리하는 강력하고 유연한 Android 구성요소입니다. 연락처 제공자는 기기의 주소록 애플리케이션에서
developer.android.com
private fun addContacts(name: String, tel: String) {
val p = ContentValues()
p.put(ContactsContract.RawContacts.ACCOUNT_TYPE, "com.google")
p.put(ContactsContract.RawContacts.ACCOUNT_NAME, "carrotgirl")
val rowContact = ctx.contentResolver.insert(ContactsContract.RawContacts.CONTENT_URI, p)
val rawContactId = ContentUris.parseId(rowContact!!)
// 연락처의 이름 지정
val value = ContentValues()
value.put(ContactsContract.Data.RAW_CONTACT_ID, rawContactId)
value.put(ContactsContract.Data.MIMETYPE, ContactsContract.CommonDataKinds.StructuredName.CONTENT_ITEM_TYPE)
value.put(ContactsContract.CommonDataKinds.StructuredName.DISPLAY_NAME, name)
ctx.contentResolver.insert(ContactsContract.Data.CONTENT_URI, value)
// 연락처의 전화번호 지정
val ppv = ContentValues()
ppv.put(ContactsContract.Data.RAW_CONTACT_ID, rawContactId)
ppv.put(ContactsContract.Data.MIMETYPE, ContactsContract.CommonDataKinds.Phone.CONTENT_ITEM_TYPE)
ppv.put(ContactsContract.CommonDataKinds.Phone.NUMBER, tel)
ppv.put(ContactsContract.CommonDataKinds.Phone.TYPE, ContactsContract.CommonDataKinds.Phone.TYPE_MOBILE)
ctx.contentResolver.insert(ContactsContract.Data.CONTENT_URI, ppv)
Toast.makeText(ctx,"$name 연락처가 저장되었습니다.", Toast.LENGTH_SHORT).show()
}
'Android Studio (Kotlin)' 카테고리의 다른 글
Android Component (1) (0) | 2022.04.18 |
---|---|
Tedpermission을 사용한 권한 설정 (Contacts 쓰기 권한 사용) (0) | 2022.04.14 |
Kotlin 기본 문법 (0) | 2022.04.04 |
코틀린 컬렉션과 예외처리 (0) | 2022.04.04 |
Kotlin 클래스 (0) | 2022.04.03 |