访问 AddressBook 是否需要征求用户的许可?

Is it necessary to ask the user for permission to access AddressBook?

我想在我的应用程序中添加一个 CNContactPickerViewController。

用户必须点击一个按钮,它才会打开,这样他现在就可以 select 一个联系人。

如果用户select编辑了一个联系人,我的程序将使用它的名字。

我的问题:使用 alertView 是否需要征求用户的许可?或者我可以直接打开 ContactPicker 吗?

使用 CNContactPickerViewController 时无需请求权限。

CNContactPickerViewController 不是由您的应用处理的视图控制器。相反,它由 os 本身处理(通过在您的应用程序中打开联系人应用程序),因此您无法通过代码控制内容。因此,您无需请求许可。

如果您尝试通过 AddressBook 框架访问地址簿,您将需要请求权限,因为您将在代码级别拥有对地址簿的完全访问权限。