我试过了
纱线添加反应原生接触
插件并按照此链接中提到的所有步骤进行操作
但是给出错误
undefined不是对象(评估Contacts.getAll)。
有没有其他方法可以从电话簿中取出联系人?请告诉我。
谢谢
答案 0 :(得分:3)
STEP-1。纱线添加react-native-contacts --save
STEP-2。 react-native link react-native-contacts
STEP_3。在上述文件中手动添加以下代码:
<强>的AndroidManifest.xml 强>
添加以下权限: -
<uses-permission android:name="android.permission.READ_PROFILE" />
<uses-permission android:name="android.permission.READ_CONTACTS" />
<uses-permission android:name="android.permission.WRITE_CONTACTS" />
<强> MainApplication.java 强>
import com.rt2zz.reactnativecontacts.ReactNativeContacts; //import this package
protected List<ReactPackage> getPackages() {
mCallbackManager = new CallbackManager.Factory().create();
return Arrays.<ReactPackage>asList(
new ReactNativeContacts() // Add this
);
}
<强>机器人/ settings.gradle 强>
include ':react-native-contacts'
project(':react-native-contacts').projectDir = new File(rootProject.projectDir, '../node_modules/react-native-contacts/android')
<强>机器人/应用/的build.gradle 强> 在依赖项块中添加: -
compile project(':react-native-contacts')
注意: - 如果您不使用纱线,也可以使用 npm 进行安装 例如: -
答案 1 :(得分:0)
有一个名为“ react-native-contacts-wrapper”的npm软件包,可以很好地完成这项工作。
您可以像这样将其添加到您的应用程序中
import ContactsWrapper from 'react-native-contacts-wrapper';
onContactSelect(){
ContactsWrapper.getContact()
.then((contact) => {
this.setState({
importingContactInfo:true,
guest:contact.name,
email:contact.email,
phone:contact.phone
});
})
.catch((error) => {
console.log("ERROR CODE: ", error.code);
console.log("ERROR MESSAGE: ", error.message);
});
}