【问题标题】:iOS- How to get the permission to the location and contact informationiOS-如何获取位置和联系信息的权限
【发布时间】:2013-12-12 16:18:02
【问题描述】:

我的应用使用位置和联系人。它们是我的应用程序的基础。如果用户不允许这两种或任何一种访问,则应用程序将出现故障。我最近才知道当应用程序尝试获取位置时弹出的对话框弹出 o

r 联系信息无法避免。

iOS- How to avoid the dialog "Would like to use your current location"

因此,我正在考虑在设置阶段重组应用程序,我希望请求这些访问权限。

如果用户选择“不允许”,我希望终止应用或向用户发布信息,说明要继续下一步,您需要启用应用以获取这些信息。

是否有读取“不允许”或“ÖK”按钮的代码。此外,如何首先启动此对话框。谁能告诉我。谢谢

【问题讨论】:

  • 在任何情况下都不要终止您的应用程序,尤其是这些情况。如果您的应用在没有定位服务的情况下确实无法运行,只需显示一个模式视图,其中包含一些向用户解释原因的文本。

标签: ios contacts cllocationmanager abaddressbook locationmanager


【解决方案1】:

根据苹果指南,无法避免向用户显示的警报,用户可以选择允许或取消,

您可以做的是,如果您没有允许 api 检测位置,您可以向用户显示警告说“请转到设置并打开位置服务以使用此功能/功能”

这样用户就知道如果他想使用该功能,他必须允许服务

// 使用后续代码

嗨,您可以使用下面的代码 sn-p 检查用户是否禁用了位置服务并显示弹出窗口 if([CLLocationManager locationServicesEnabled] && [CLLocationManager 授权状态] != kCLAuthorizationStatusDenied) { // 位置服务已启用 } 别的 {// 位置服务被禁用,所以启用它们 UIAlertView *alert=[[[UIAlertView alloc]initWithTitle:@"Notification" message:@"请在设置中启用使用此功能所需的位置服务" delegate:self cancelButtonTitle:@"OK" otherButtonTitles:, nil]]; [警报显示]; }

【讨论】:

  • 感谢您的信息。您能否提供一个代码 sn-p 以在出现对话框时检测用户选择。谢谢
猜你喜欢
  • 2020-01-11
  • 2012-08-27
  • 2019-03-19
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2015-02-10
相关资源
最近更新 更多