raw_contacts 0.0.3

  • README.md
  • CHANGELOG.md
  • Example
  • Installing
  • Versions
  • new62

raw_contacts #

A Flutter plugin to access and manage the device's contacts. (Android Only for now)

Usage #

To use this plugin, add raw_contacts as a dependency in your pubspec.yaml file. For example:

dependencies:
    raw_contacts: ^0.0.1

Permissions #

Android #

Add the following permissions to your AndroidManifest.xml:

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

Note raw_contacts does not handle the process of asking and checking for permissions. To check and request user permission to access contacts, try using the following plugins: flutter_simple_permissions or permission_handler.

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:raw_contacts/raw_contacts.dart';
String _accountType="com.test_app";

// Get all contact list for the account type
Iterable<Contact> contacts = await RawContacts.getContacts(filter: _accountType);

// Get all contacts without thumbnail(faster)
Iterable<Contact> contacts = await RawContacts.getContacts(getImages: false,filter: _accountType);

// Add a contact
// The contact must have at least DisplayName and Email
await RawContacts.addContact(newContact);

// Delete a contact
// The contact must have a valid identifier
await RawContacts.deleteContact(contact);

Contact Model

// Name
String displayName, givenName, middleName, prefix, suffix, familyName;

// Company
String company, jobTitle;

// Email addresses
Iterable<KeyValuePair> emails = [];

// Phone numbers
Iterable<KeyValuePair> phones = [];

// Post addresses
Iterable<PostalAddress> postalAddresses = [];

// Contact avatar/thumbnail
Uint8List avatar;

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.

[0.0.1] - March 26th, 2019

  • Get all contact List from selected AccountType
  • Delete selected contact
  • Create contact for one accountType

example/README.md

raw_contacts_example #

Demonstrates how to use the raw_contacts plugin.

Getting Started #

For help getting started with Flutter, view our online documentation.

Use this package as a library

1. Depend on it

Add this to your package's pubspec.yaml file:


dependencies:
  raw_contacts: ^0.0.3

2. Install it

You can install packages from the command line:

with Flutter:


$ flutter packages get

Alternatively, your editor might support flutter packages get. Check the docs for your editor to learn more.

3. Import it

Now in your Dart code, you can use:


import 'package:raw_contacts/raw_contacts.dart';
  
Version Uploaded Documentation Archive
0.0.3 Apr 8, 2019 Go to the documentation of raw_contacts 0.0.3 Download raw_contacts 0.0.3 archive
0.0.2 Apr 4, 2019 Go to the documentation of raw_contacts 0.0.2 Download raw_contacts 0.0.2 archive
0.0.1 Mar 26, 2019 Go to the documentation of raw_contacts 0.0.1 Download raw_contacts 0.0.1 archive
Popularity:
Describes how popular the package is relative to other packages. [more]
36
Health:
Code health derived from static analysis. [more]
100
Maintenance:
Reflects how tidy and up-to-date the package is. [more]
70
Overall:
Weighted score of the above. [more]
62
Learn more about scoring.

We analyzed this package on Apr 16, 2019, and provided a score, details, and suggestions below. Analysis was completed with status completed using:

  • Dart: 2.2.0
  • pana: 0.12.14
  • Flutter: 1.4.7

Platforms

Detected platforms: Flutter

References Flutter, and has no conflicting libraries.

Maintenance suggestions

The package description is too short. (-20 points)

Add more detail to the description field of pubspec.yaml. Use 60 to 180 characters to describe the package, what it does, and its target use case.

Package is pre-v0.1 release. (-10 points)

While nothing is inherently wrong with versions of 0.0.*, it might mean that the author is still experimenting with the general direction of the API.

Dependencies

Package Constraint Resolved Available
Direct dependencies
Dart SDK >=2.0.0-dev.68.0 <3.0.0
flutter 0.0.0
Transitive dependencies
collection 1.14.11
meta 1.1.6 1.1.7
sky_engine 0.0.99
typed_data 1.1.6
vector_math 2.0.8