在我的expo弹出项目中,我试图使用expo-contacts,但没有成功。
"react-native":"~0.61.5",
"expo":"~37.0.3",
我运行了expo install expo-contacts
import * as Permissions from 'expo-permissions';
import * as Contacts from 'expo-contacts';
getContact = async () => {
try {
let { status } = await Permissions.askAsync(Permissions.CONTACTS);
if (status === 'granted') {
const { data } = await Contacts.getContactsAsync({
fields: [Contacts.Fields.Emails],
});
console.log("getContact / data: ", data);
if (data.length > 0) {
const contact = data[0];
console.log("getContact / contact: ", contact);
}
}
} catch(e){
console.log("getContact / error: ", e)
}
}
<TouchableOpacity style={{ marginTop: 20 }} onPress={() => this.getContact()}>
<Image source={contactsIcon} style={{ width: 30, height: 30 }} />
</TouchableOpacity>

发布于 2020-12-12 01:57:38
您是否已按如下方式在AndroidManifest.xml中设置了权限:
<uses-permission android:name="android.permission.READ_CONTACTS" />
<uses-permission android:name="android.permission.WRITE_CONTACTS" />还要注意:“对于纯React Native项目,在继续之前,您必须确保已经安装并配置了react-native-unimodules 1包。”
https://stackoverflow.com/questions/65243024
复制相似问题