如何在用户点按“下一次”时显示用户位置?

时间:2013-05-16 06:25:21

标签: ios mkmapview cllocationmanager showuserlocation

在我的应用中,我想在我的UIViewController之一中使用MKMapKit显示用户位置。因此,当用户选择此视图控制器时,系统会询问他们是允许还是不允许。如果用户选择允许,则一切正常。如果他们选择不允许,则永远不会再次要求用户允许。

实际上我想要的是,当用户选择在他们使用我的应用时第一次不允许时,应该要求他们再次选择允许或不允许下次他们使用该应用。那我该怎么做呢?当用户选择允许选择时间时(第一次点击不允许),我的应用程序显示用户位置。

即使在一些S.O问题中,许多人也建议用户在打开应用程序时会被提升为允许或不允许提醒。但对我来说,它要求首次使用应用程序。

请分享您的想法。谢谢。

1 个答案:

答案 0 :(得分:1)

如果用户第一次关闭了您应用的位置服务,则每次尝试获取其位置时,您都会知道应用。您可以检查用户是否已授予您阅读其位置的权限。如果他们没有,则会再次提示他们为您的应用启用位置服务。

引用Apple的文档(found here

  

建议您始终调用locationServicesEnabled   在尝试启动之前CLLocationManager的类方法   标准或重大变化的位置服务。 (在iOS 3.x和   之前,检查locationServicesEnabled属性的值   相反。)如果此类方法返回YES,则可以开始定位   按计划提供服务。如果它返回NO并且您尝试启动   无论如何,系统会提示用户确认   是否应重新启用位置服务。鉴于该位置   服务很可能是故意禁用的,用户可能没有   欢迎这个提示。