pit_contact_count 0.1.2

  • Readme
  • Changelog
  • Example
  • Installing
  • 70

PIT Contact Count #

Use this Plugin for count a contact

Note: This plugin is still under development, and some Components might not be available yet or still has so many bugs.

Installation #

First, add pit_contact_count as a dependency in your pubspec.yaml file.

pit_contact_count: ^0.1.2

Important #

Note: ^0.1.1+1 doesn't support for IOS

this plugin depends on other plugins, you must have a permission to use this plugin, you can use pit_permission plugin or other permission plugin.

You must add this permission in AndroidManifest.xml for Android

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

Note : ^0.1.2 added enum

Enum #

   enum ContactInfo { contactOnly, allData, contactEmailAndAddress }

Example for Get Contact Count #

   int contactCount = await PitContactCount.getContactCount();

Example for Get ContactList #

    List<ContactModel> result = await PitContactCount.getContactList(ContactInfo.contactOnly);

Example for Get getContactStringJson #

Note: support on ^0.1.2

   String result = await PitContactCount.getContactStringJson(ContactInfo.contactOnly);

0.1.2 #

  • added getContactStringJson method that return in String
  • add enum param on getContactStringJson and getContactList

0.1.1+2 #

  • Contact Model renewed

0.1.1+1 #

  • add changelog revision

0.1.1 #

  • getContactList now return ContactModel

0.1.0 #

  • add get ContactList

0.0.1 #

  • Initial Release

example/README.md

example/README.md #

import 'package:flutter/material.dart';
import 'dart:async';

import 'package:flutter/services.dart';
import 'package:pit_contact_count/pit_contact_count.dart';
import 'package:pit_contact_count/model.dart';

void main() => runApp(MyApp());

class MyApp extends StatefulWidget {
  @override
  _MyAppState createState() => _MyAppState();
}

class _MyAppState extends State<MyApp> {
  int _contactCount = 0;
  List<ContactModel> result = [];
  String contactJson;

  @override
  void initState() {
    super.initState();
    getContactCount();
  }

  Future<void> getContactCount() async {
    int contactCount;
    List<ContactModel> _list = [];
    String _contactJson;

    try {
      contactCount = await PitContactCount.getContactCount();
      _contactJson = await PitContactCount.getContactStringJson(ContactInfo.allData);
      _list = await PitContactCount.getContactList(ContactInfo.allData);
    } on PlatformException {
      contactCount = -1;
    }

    if (!mounted) return;

    setState(() {
      _contactCount = contactCount;
      result = _list;
      contactJson = _contactJson;
    });
  }

  @override
  Widget build(BuildContext context) {
    return MaterialApp(
      home: Scaffold(
          appBar: AppBar(
            title: const Text('PitContactCount Plugin example app'),
          ),
          body: SingleChildScrollView(
            child: Center(
              child: Text('Total Contact in Your Phone: ${contactJson}\n $_contactCount\n $result'),
            ),
          )),
    );
  }
}

Use this package as a library

1. Depend on it

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


dependencies:
  pit_contact_count: ^0.1.2

2. Install it

You can install packages from the command line:

with Flutter:


$ flutter pub get

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

3. Import it

Now in your Dart code, you can use:


import 'package:pit_contact_count/pit_contact_count.dart';
  
Popularity:
Describes how popular the package is relative to other packages. [more]
42
Health:
Code health derived from static analysis. [more]
96
Maintenance:
Reflects how tidy and up-to-date the package is. [more]
100
Overall:
Weighted score of the above. [more]
70
Learn more about scoring.

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

  • Dart: 2.5.1
  • pana: 0.12.21
  • Flutter: 1.9.1+hotfix.4

Platforms

Detected platforms: Flutter

References Flutter, and has no conflicting libraries.

Health issues and suggestions

Document public APIs. (-1 points)

85 out of 85 API elements have no dartdoc comment.Providing good documentation for libraries, classes, functions, and other API elements improves code readability and helps developers find and use your API.

Fix lib/model.dart. (-3.45 points)

Analysis of lib/model.dart reported 7 hints, including:

line 209 col 27: Avoid using braces in interpolation when not needed.

line 209 col 45: Avoid using braces in interpolation when not needed.

line 209 col 60: Avoid using braces in interpolation when not needed.

line 213 col 20: Name non-constant identifiers using lowerCamelCase.

line 214 col 17: Name non-constant identifiers using lowerCamelCase.

Format lib/pit_contact_count.dart.

Run flutter format to format lib/pit_contact_count.dart.

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 1.14.12
meta 1.1.7
sky_engine 0.0.99
typed_data 1.1.6
vector_math 2.0.8