How to use react-native-contacts - 10 common examples

To help you get started, we’ve selected a few react-native-contacts examples, based on popular ways it is used in public projects.

Secure your code as it's written. Use Snyk Code to scan source code in minutes - no build needed - and fix issues immediately.

github MiEcosystem / miot-plugin-sdk / projects / com.xiaomi.demo / Main / AddressBookDemo.js View on Github external
Contacts.checkPermission((err, permission) => {
      // AddressBook.PERMISSION_AUTHORIZED || AddressBook.PERMISSION_UNDEFINED || AddressBook.PERMISSION_DENIED
      if (permission === 'undefined') {
        Contacts.requestPermission((err, permission) => {
          // ...
        });
      }
      if (permission === 'authorized') {
        // yay!
        Contacts.getAll((err, contacts) => {
          console.log(err, contacts);
          //update the first record
          // let someRecord = contacts[0]
          // someRecord.emailAddresses.push({
          //   label: "junk",
          //   email: "mrniet+junkmail@test.com",
          // })
          // Contacts.updateContact(someRecord, (err) => { /*...*/ })
    
          //delete the second record
github Skjutsgruppen / skjutsgruppen-reactnative / app / screens / auth / onboarding / Onboarding.js View on Github external
Contacts.checkPermission(async (err, permission) => {
          const iosPermission = await AuthService.getContactPermission();

          if (permission === 'authorized' && (iosPermission === null)) {
            await syncContacts();
            await AuthService.setContactPermission('synced');
          }

          if (err || permission !== 'authorized') {
            Contacts.requestPermission((contactErr, res) => {
              if (contactErr) {
                if (Platform === 'ios' || Platform.OS === 'ios') {
                  // Crashlytics.recordError(contactErr);
                }
              }
              if (res === 'authorized') {
                syncContacts();
              }
              // console.warn(err, res);
              this.setState({ contactPermission: false, contactPermissionResponse: permission });
            });
            if (permission === 'denied') {
              AlertIOS.alert(
                'Contacts Permission',
                trans('onboarding.contact_permission'),
                [
github MiEcosystem / miot-plugin-sdk / projects / com.xiaomi.demo / Main / ThirdPartDemo / AddressBookDemo.js View on Github external
Contacts.checkPermission((err, permission) => {
      // AddressBook.PERMISSION_AUTHORIZED || AddressBook.PERMISSION_UNDEFINED || AddressBook.PERMISSION_DENIED
      if (permission === 'undefined') {
        Contacts.requestPermission((err, permission) => {
          // ...
        });
      }
      if (permission === 'authorized') {
        // yay!
        Contacts.getAll((err, contacts) => {
          console.log(err, contacts);
          this.setState({ dataSource: this.state.dataSource.cloneWithRows(contacts) });
        });
      }
      if (permission === 'denied') {
        alert("通讯录未授权")
      }
      console.log(permission);
    });
  }
github Skjutsgruppen / skjutsgruppen-reactnative / app / screens / tab / feed.js View on Github external
Contacts.checkPermission(async (err, permission) => {
          const iosPermission = await AuthService.getContactPermission();

          if (permission === 'authorized' && (iosPermission === null)) {
            await syncContacts();
            await AuthService.setContactPermission('synced');
          }

          if (err || permission !== 'authorized') {
            Contacts.requestPermission((contactErr, res) => {
              if (contactErr) {
                if (Platform === 'ios' || Platform.OS === 'ios') {
                  // Crashlytics.recordError(contactErr);
                }
              }
              if (res === 'authorized') {
                syncContacts();
              }
              // console.warn(err, res);
              this.setState({ contactPermission: false, contactPermissionResponse: permission });
            });

            if (permission === 'denied' && (!iosPermission)) {
              AlertIOS.alert(
                'Contacts Permission',
                trans('onboarding.contact_permission'),
github MiEcosystem / miot-plugin-sdk / projects / com.xiaomi.demo / Main / AddressBookDemo.js View on Github external
componentDidMount() {
      var Contacts = require('react-native-contacts');
    // var newPerson = {
    //     lastName: "Nietzsche",
    //     firstName: "Friedrich",
    //     emailAddresses: [{
    //       label: "work",
    //       email: "mrniet@example.com",
    //     }],
    //   }

    // AddressBook.addContact(newPerson, (err) => { /*...*/ })
    
    Contacts.checkPermission((err, permission) => {
      // AddressBook.PERMISSION_AUTHORIZED || AddressBook.PERMISSION_UNDEFINED || AddressBook.PERMISSION_DENIED
      if (permission === 'undefined') {
        Contacts.requestPermission((err, permission) => {
          // ...
        });
      }
      if (permission === 'authorized') {
        // yay!
        Contacts.getAll((err, contacts) => {
          console.log(err, contacts);
          //update the first record
          // let someRecord = contacts[0]
          // someRecord.emailAddresses.push({
          //   label: "junk",
          //   email: "mrniet+junkmail@test.com",
          // })
github MiEcosystem / miot-plugin-sdk / projects / com.xiaomi.demo / Main / ThirdPartDemo / AddressBookDemo.js View on Github external
componentDidMount() {
    var Contacts = require('react-native-contacts');

    Contacts.checkPermission((err, permission) => {
      // AddressBook.PERMISSION_AUTHORIZED || AddressBook.PERMISSION_UNDEFINED || AddressBook.PERMISSION_DENIED
      if (permission === 'undefined') {
        Contacts.requestPermission((err, permission) => {
          // ...
        });
      }
      if (permission === 'authorized') {
        // yay!
        Contacts.getAll((err, contacts) => {
          console.log(err, contacts);
          this.setState({ dataSource: this.state.dataSource.cloneWithRows(contacts) });
        });
      }
      if (permission === 'denied') {
        alert("通讯录未授权")
      }
github EdgeApp / edge-react-gui / src / modules / UI / components / ContactsLoader / actions.js View on Github external
return new Promise((resolve, reject) => {
    return Contacts.getAll((error, result) => {
      // The native code sometimes sends strings instead of errors:
      if (error) return reject(typeof error === 'string' ? new Error(error) : error)
      return resolve(result)
    })
  })
}
github radiegtya / BukanMessenger / app / screens / tabs / Contacts.js View on Github external
const ContactsContainer = createContainer((props) => {
  //get all phone contacts, then generate to contacts collection
  RNContacts.getAll((err, contacts) => {
    if(err === 'denied'){
      // x.x
    } else {
      let phoneNumbers = [];
      contacts.forEach((contact)=>{
        contact.phoneNumbers.forEach((phone)=>{
          if(phone.number){
            const formatedPhoneNumber = "+" + phone.number.replace(new RegExp(/[-\/\\^$*+?.()|[\]{}]/g, 'g'), '').replace(/\s/g,'');
            phoneNumbers.push(formatedPhoneNumber);
          }
        });
      });
      phoneNumbers = [...new Set(phoneNumbers)];
      Meteor.call('contacts.generate', phoneNumbers);
    }
  });
github Skjutsgruppen / skjutsgruppen-reactnative / app / services / apollo / contact.js View on Github external
Contacts.checkPermission(async (err, permission) => {
            if (err || permission !== 'authorized') {
              Contacts.requestPermission(async (contactErr, res) => {
                if (contactErr) {
                  if (Platform === 'ios' || Platform.OS === 'ios') {
                    // Crashlytics.recordError(contactErr);
                  }
                }

                if (res === 'authorized') {
                  contactList = await getMappedContacts();
                }

                mutate({ variables: { contactList } });
              });

              return;
            }
github keybase / client / shared / teams / invite-by-email / permissions.tsx View on Github external
Contacts.checkPermission((err, permission) => {
      // Check the existing system settings, see if we need to ask
      if (err) {
        reject(err)
      }
      if (permission === 'undefined' || permission === 'denied') {
        // Now we need to show the request dialog
        Contacts.requestPermission((err, _) => {
          // second param is supposed to be granted, but is buggy, so we checkPermission again
          if (err) {
            reject(err)
          }
          Contacts.checkPermission((err, permission) => {
            // Check to see what the user said
            if (err) {
              reject(err)
            }
            if (permission === 'authorized') {
              Contacts.getAll((err, contacts) => {
                if (err) {
                  reject(err)
                } else {
                  resolve({contacts, hasPermission: true})
                }