Warning: file_get_contents(/data/phpspider/zhask/data//catemap/0/iphone/42.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
iPhone:持续请求用户权限的核心位置_Iphone_Objective C_Permissions - Fatal编程技术网

iPhone:持续请求用户权限的核心位置

iPhone:持续请求用户权限的核心位置,iphone,objective-c,permissions,Iphone,Objective C,Permissions,我有一个应用程序,要求用户的位置。然后用户的位置将被发送到服务器。由于第一次在iPhone上运行的应用程序将请求许可,如果用户拒绝,该应用程序将在下次继续请求,直到被允许为止(AFAIK);但如果用户允许应用程序使用该位置两次,应用程序将不再在第三次询问用户的位置。似乎它已存储在首选项上。 我的问题是,如何让我的应用程序在每次运行我的应用程序时都能请求他们的位置许可 谢谢。使用内置API无法做到这一点。您必须建立自己的对话框并进行确认。如果我建立自己的对话框,将有两个对话框。一个是内置的,另一个

我有一个应用程序,要求用户的位置。然后用户的位置将被发送到服务器。由于第一次在iPhone上运行的应用程序将请求许可,如果用户拒绝,该应用程序将在下次继续请求,直到被允许为止(AFAIK);但如果用户允许应用程序使用该位置两次,应用程序将不再在第三次询问用户的位置。似乎它已存储在首选项上。 我的问题是,如何让我的应用程序在每次运行我的应用程序时都能请求他们的位置许可


谢谢。

使用内置API无法做到这一点。您必须建立自己的对话框并进行确认。

如果我建立自己的对话框,将有两个对话框。一个是内置的,另一个是我将创建的。是的,所以你要做的是跟踪成功获取CoreLocation数据的次数。如果您得到它三次,您可以假设内置对话框不再显示,并显示您自己的对话框。这些都是理论上的,当然,你应该进行实验。我如何跟踪成功尝试的次数?应使用NSUserDefaults来跟踪成功次数。显示“应用程序希望使用当前位置”的对话框是否返回值?我想将该值用于跟踪器,或者我需要什么来跟踪它?如果我要在NSUserDefaults中保存获取CoreLocation数据的成功尝试次数。如果我要参考用户默认值,例如(mySuccessfullAttempts>2),那么我可以显示我的AlertView。但是如果用户重置了设置中的位置警告。应用程序将显示默认的AlertView和my AlertView,因为my app将假定已在首选项上保存权限;我的NSUserDefaults值大于2。这绝不是一个完美的解决方案,是的,如果用户重置警报,他们将收到额外的消息。然而,我认为这是你能得到的最接近的。