在我的应用程序中,我想在使用MKMapKit
的UIViewController
中显示用户位置。因此,当用户选择这个视图控制器时,他们将被询问是否允许或不允许。如果用户选择允许,那么一切正常。如果他们选择了不允许,则不会再询问用户是否允许。
实际上我想要的是,当用户第一次使用我的应用程序时选择不允许时,他们应该被要求再次选择允许或不允许下次使用该应用程序。所以我怎么才能实现这一点?当用户选择允许选择时间(他们第一次点击不允许),然后我的应用程序显示用户位置。
甚至在一些S.O问题中,许多人都建议用户在打开应用程序时允许或不允许提醒,但对我来说,这是要求第一次使用应用程序。
请分享你的想法。谢谢你!
如果用户第一次在你的应用程序中关闭了位置服务,你将在你的应用程序中知道每次你试图获得他们的位置。您可以检查用户是否允许您读取其位置。如果他们没有,他们将再次提示为您的应用程序启用位置服务。
引自Apple的文档(在这里找到)
建议您始终调用locationServicesEnabled在尝试启动CLLocationManager的类方法之前标准或重大变化的定位服务。(在iOS 3中。x和之前,检查locationServicesEnabled属性的值相反)。如果这个类方法返回YES,你可以启动location业务按计划进行。如果它返回NO并且您尝试启动定位服务反正,系统提示用户确认是否应该重新启用位置服务。考虑到这个位置服务很可能被故意禁用,而用户可能不会欢迎这个提示