自定义默认当前位置警报消息(iOS)

时间:2012-12-03 12:00:35

标签: ios cocoa-touch location

当iPhone想要使用用户当前位置时,是否可以自定义默认警报消息。我不仅要更改文本,还要更改默认的蓝屏警报视图。有可能吗?

enter image description here

感谢。

2 个答案:

答案 0 :(得分:6)

不可能。来自documentation

  

重要提示:除了硬件不可用外,用户还有   拒绝应用程序访问位置服务的选项   数据。在应用程序的初始使用期间,核心位置   框架提示用户确认使用位置服务   是可以接受的如果用户拒绝请求,则为CLLocationManager   对象在将来向其委托报告适当的错误   要求。您还可以检查应用程序的显式授权   使用authorizationStatus方法的状态。

Core位置框架提示警报。我们对它没有任何控制权。

编辑:从this Apple开发者论坛帖子(需要登录)

加起来
  

该警报以标准方式显示给所有应用程序   隐私原因。用户的当前位置是敏感的   信息,我们希望确保他们提供信息   同意在设备上使用它。我们这样做的方式是   为用户提供清晰,一致的机制   同意。如果允许应用程序覆盖或禁用   警告,那么一致性就会丢失。

并且回答者是Apple员工..

答案 1 :(得分:2)

多年以后,Apple确实实施了一些自定义选项!

查看文档 documentation

如果您在info.plist中放入以下某个密钥(取决于您对位置服务的使用情况),您可以指定一个自定义字符串,该字符串另外显示在默认警报中。

  • NSLocationUsageDescription(自iOS6起可用)
  • NSLocationWhenInUseUsageDescription(自iOS8起)
  • NSLocationAlwaysUsageDescription(自iOS8起)