根据此link,我使用react-native-contact在android设备中打开联系人列表,因此用户可以选择一个并将其添加到列表中。但是,当我单击一个按钮以打开联系人列表时,react-native-contacts getAll返回null。 这是我使用的代码:
openContactlist() {
Contacts.getAll((err, contacts) => {
if (err) {
// throw err;
alert("NO");
}
// contacts returned
alert("yes");
})
}
在渲染本机代码中,有一个按钮,通过单击它可以调用上面的函数:
<Button
title="From contact list"
onPress={this.openContactlist}
/>
错误:
null is not an object (evaluating '_react-native-contacts.getall')
答案 0 :(得分:1)
按照“ react-native-contacts”文档中提到的步骤进行操作,并在最后添加一个catch块,对我有用。
PermissionsAndroid.request(
PermissionsAndroid.PERMISSIONS.READ_CONTACTS,
{
'title': 'Contacts',
'message': 'This app would like to view your contacts.'
}
).then(() => {
con.getAll((err, contacts) => {
if (err === 'denied'){
// error
} else {
// contacts returned in Array
console.log(contacts);
}
})
})
.catch((err)=> {
console.log(err);
})
答案 1 :(得分:0)
一个原因可能是您未正确链接“ react-native-contact”
您还必须按照以下步骤链接-
对于Android: https://github.com/rt2zz/react-native-contacts#android