【问题标题】:How to On/Off Location Services for TestFlight Apps?如何打开/关闭 TestFlight 应用程序的定位服务?
【发布时间】:2026-01-14 20:50:01
【问题描述】:

我开发了一个使用定位服务的 iPhone 应用程序。我把它上传到TestFlight并下载到iPhone设备上检查。

应用程序在登录后要求位置权限。如果授予权限,它将正常工作。如果“拒绝”,它将显示一条消息,要求打开定位服务。

我“拒绝”了权限,关闭了应用程序并重新启动它,但似乎 iPhone 可以记住以前的位置设置。它没有再问我是否需要允许定位服务。这在模拟器中也发生过,所以我认为iOS就是这样。

由于我的应用在 TestFlight 中,我该如何为此打开/关闭位置服务,所以现在我可以检查它如何与位置服务一起工作?

【问题讨论】:

    标签: ios iphone testflight


    【解决方案1】:

    正如您所说的,这就是 iOS 的工作方式。一旦用户拒绝了应用的定位服务,该应用就无法再次调用系统权限对话框。

    如果您的应用想要在启动时或在它需要使用定位服务并发现定位服务已关闭或其状态为denied 时发出自己的警报,那很好。但这完全取决于您的应用程序。基本上,您是在请求用户前往设置并授权您的应用程序;您甚至可以在警报中包含一个按钮,用于切换到用户设置,这是很常见的做法。

    好的,那么测试您的应用呢?好吧,如果您只是想知道在授予位置服务授权时您的应用是否正常工作,只需转到设置并授予它们,就像用户可能做的那样。

    如果您想以 no 授权状态 (notDetermined) 重新开始,以便查看您的应用是否正确调用系统对话框,您需要从您的设备并重新安装。如果这还不够,您将必须完全重置权限(在“设置”中的“常规”>“重置”>“重置位置和隐私”下);这有点痛苦,因为它会重置所有权限,但有时这是让设备清除其缓存的唯一方法。

    【讨论】:

    • 感谢您的回复。问题是,这个应用来自 TeatFlight,我在设置中的任何地方都看不到它,所以我无法启用位置
    • App 是否通过 TestFlight 安装到您的设备上并不重要。它确实出现在“设置”中。一个应用程序就是一个应用程序。转到设置 > 隐私 > 定位服务。确保定位服务已开启。您将在该屏幕的应用滚动列表中看到您的应用。
    • 哦,非常感谢!
    最近更新 更多