Skip to content

A Flutter plugin to retrieve and manage contacts on Android and iOS devices. Maintainer: @lukasgit

License

Notifications You must be signed in to change notification settings

cantacell/flutter_contacts

 
 

Repository files navigation

contacts_service

pub package Build Status Coverage Status

A Flutter plugin to access and manage the device's contacts.

Usage

To use this plugin, add contacts_service as a dependency in your pubspec.yaml file.

Make sure you add the following permissions to your Android Manifest:

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

On iOS, make sure to set NSContactsUsageDescription in the Info.plist file

<key>NSContactsUsageDescription</key>
<string>This app requires contacts access to function properly.</string>

To check and request user permission to access contacts, I recommend using the following plugin: flutter_simple_permissions

If you do not request user permission or have it granted, the application will fail. For testing purposes, you can manually set the permissions for your test app in Settings for your app on the device that you are using. For Android, go to "Settings" - "Apps" - select your test app - "Permissions" - then turn "on" the slider for contacts.

Example

// Import package
import 'package:contacts_service/contacts_service.dart';

// Get all contacts
Iterable<Contact> contacts = await ContactsService.getContacts();

// Get contacts matching a string
Iterable<Contact> johns = await ContactsService.getContacts(query : "john");

// Add a contact
// The contact must have a firstName / lastName to be successfully addded
await ContactsService.addContact(newContact);

//Delete a contact
await ContactsService.deleteContact(contact);

Example

Todo

  • update contact

Contributions

Contributions are welcome! If you find a bug or want a feature, please fill an issue.

If you want to contribute code please create a pull request.

Credits

Heavily inspired from rt2zz's react native plugin

About

A Flutter plugin to retrieve and manage contacts on Android and iOS devices. Maintainer: @lukasgit

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages

  • Java 39.5%
  • Dart 37.7%
  • Swift 19.1%
  • Ruby 3.0%
  • Objective-C 0.7%