【IWH冬@ReactNative】联系人管理react-native-contacts

因为我主要用了联系人的添加,所以,不演示如何获取。

yarn add react-native-contacts`

和文件系统一样,先写入清单文件权限,进入settings.gradle加入

1
2
include ':react-native-contacts'
project(':react-native-contacts').projectDir = new File(rootProject.projectDir, '../node_modules/react-native-contacts/android')

再进入

build.gradle加入

implementation project(':react-native-contacts')

再进入 android/app/src/,…. 找到 MainApplication.java

导入包【不要在protected List<ReactPackage> getPackages()加入new xxPackage】

import com.rt2zz.reactnativecontacts.ReactNativeContacts;

cd ./android ./gradlew clean 清理项目

联系人添加,注意一定要在清单文件,写好权限,然后再动态申请!

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
let newPerson = {
phoneNumbers: [{
label: 'poi',
number: row.telephone,
}],
givenName: (row.area || '') + '-' + row.name,
};
row.telephone && (Contacts.addContact(newPerson, (err) => {
if (err) {
callback('alert','导入错误:' + err)
// alert('发生错误:' + err);
} else {
console.log('成功添加第:' + idx + '个!');
callback('alert','导入成功:' + row.name + ' ' + row.telephone )
// ToastAndroid.show('成功添加第:' + idx + '个!');
}
}));