更新的答案
由于您没有构建本机 Web 应用程序,因此您无法请求访问用户的 iCloud 联系人。如果允许网站访问用户数据,这将是一场安全噩梦。有像ShuttleCloud这样的工具提供用于迁移用户联系人的 API。这就是 Google 用于他们自己的 Gmail 服务的内容。
所以不,您不能通过浏览器请求直接访问联系人,但是有一些工具可以让导入变得更容易。
旧答案
您需要向 iOS 请求许可。您可以通过查看 Apple 的文档来做到这一点。
例子
#import <AddressBookUI/AddressBookUI.h>
// Request authorization to Address Book
ABAddressBookRef addressBookRef = ABAddressBookCreateWithOptions(NULL, NULL);
if (ABAddressBookGetAuthorizationStatus() == kABAuthorizationStatusNotDetermined) {
ABAddressBookRequestAccessWithCompletion(addressBookRef, ^(bool granted, CFErrorRef error) {
if (granted) {
// First time access has been granted, add the contact
[self _addContactToAddressBook];
} else {
// User denied access
// Display an alert telling user the contact could not be added
}
});
}
else if (ABAddressBookGetAuthorizationStatus() == kABAuthorizationStatusAuthorized) {
// The user has previously given access, add the contact
[self _addContactToAddressBook];
}
else {
// The user has previously denied access
// Send an alert telling user to change privacy setting in settings app
}