[flutter] 플러터에서의 주소록 및 연락처 처리 방법

플러터는 멀티플랫폼 개발 프레임워크로, 안드로이드와 iOS 애플리케이션을 동시에 개발할 수 있습니다. 주소록 및 연락처와 같은 기기의 기능을 사용하기 위해서는 플러터에서 제공하는 플러그인을 사용하면 쉽게 처리할 수 있습니다.

플러그인 설치하기

플러터에서는 다양한 플러그인이 제공되고 있으며 그 중에서 연락처 및 주소록 기능을 사용하기 위해서는 contacts_service 플러그인을 설치해야 합니다. pubspec.yaml 파일에 아래와 같이 의존성을 추가해주세요.

dependencies:
  contacts_service: ^0.6.0

그리고 터미널에서 flutter pub get 명령어를 실행하여 의존성을 다운로드 받아주세요.

연락처 정보 가져오기

플러터에서 contacts_service 플러그인을 사용하여 연락처 정보를 가져오려면, 먼저 퍼미션을 얻어야 합니다. 안드로이드 앱의 경우, Manifest.xml 파일에 다음과 같이 퍼미션을 추가해주세요.

<uses-permission android:name="android.permission.READ_CONTACTS" />

그리고 아래와 같이 코드를 작성하여 연락처 정보를 가져올 수 있습니다.

import 'package:contacts_service/contacts_service.dart';

void fetchContacts() async {
  Iterable<Contact> contacts = await ContactsService.getContacts();
  
  contacts.forEach((contact) {
    print('Name: ${contact.displayName}');
    print('Phone: ${contact.phones}');
  });
}

위의 코드는 연락처에 저장된 모든 연락처 정보를 가져와서 출력하는 예제입니다.

연락처 정보 추가 및 수정하기

contacts_service 플러그인을 사용하여 연락처 정보를 추가하거나 수정할 수도 있습니다. 아래의 코드 예제는 연락처를 추가하는 방법을 보여줍니다.

import 'package:contacts_service/contacts_service.dart';

void addContact() async {
  // 새로운 연락처 생성
  Contact newContact = Contact(
    givenName: 'John',
    familyName: 'Doe',
    phones: [Item(value: '+1 123-456-7890')],
  );
  
  await ContactsService.addContact(newContact);
  print('Contact added successfully!');
}

addContact 함수를 실행하면, 주소록에 새로운 연락처가 추가됩니다.

결론

플러터에서 contacts_service 플러그인을 사용하면 주소록 및 연락처와 관련된 기능을 쉽게 처리할 수 있습니다. 연락처 정보를 가져오는 것부터 추가 및 수정까지 다양한 기능을 활용할 수 있으니 필요한 경우에는 이 플러그인을 사용해보시기 바랍니다.

참고 자료