ios - 打开 iOS 设置应用程序(顶级 - 不是应用程序设置页面的深层链接) - iOS 12/13
问题描述
我正在开发一个与不同硬件交互的 iOS 应用程序。我们使用“软 AP”工作流程(即热点)访问和配置这些设备
我们的偏好是NEHotspotConfigurationManager
用于为用户自动执行该过程,并且在大多数情况下这可以正常工作。
但是,在那些不支持的边缘情况下(即 iOS 13+ 和定位服务),我们希望让用户的工作流程尽可能简单。
目前我们有一个很好的用户需要采取的步骤列表:
- 按下/滑动主页
- 打开设置
- 导航到 WiFi 设置
- 查找并点击指定的 WiFi SSID
- 返回应用程序
这真的一点都不愉快。
我知道没有官方方法可以打开 WiFi 设置,我可以接受,但最近我在使用 Wyze 应用程序并配对他们的一个灯泡,并注意到他们有手动工作流程,可以打开顶部级别设置页面 - 不是应用程序的设置。 (注:Wyze 应用程序也有“应用程序设置”)
所以,在阅读了更多之后,我发现UIApplication.openSettingsURLString
会打开应用程序的特定设置页面,这很酷,而且一切都很好,但这不是我需要的。如果“正式”可以启动 iOS 设置应用程序而不是让它打开应用程序的设置,而只是登陆顶级页面,我会非常棒。
我知道如果应用程序没有设置,这是我会得到的行为,但我们的应用程序有(而且我无法更改)
我不想/不能使用 URL 方案,prefs:root
除非它可以保证不会被 Apple 拒绝!
而且,是的,我查看了很多关于该主题的不同博客和问题,包括iOS 和 iPadOS 13.1 支持的所有 120 多个设置 URL 的综合指南- 但我不想让应用程序被拒绝
解决方案
推荐阅读
- javascript - 无法访问 handleEvent 函数中的更新状态 | 反应钩子
- r - 基于(变化的)虚拟变量对 ggplot 的部分进行着色
- maven -
在 Maven 设置 xml 中 - python - 如何并行运行多个 DataFrame.to_csv()?(多线程)
- python - Python如何更改数据框格式
- memory - 将字符串放在闪存上的固定内存地址中
- javascript - JavaScript 不会保存所有的 cookie 数据
- constraints - Papyrus - 验证属性的 OCL 约束
- mysql - 在 Talend 中将所有 MYSQL 组件转换为 Greenplum 组件
- android - Zebra Datawedge 6.2.24 启用/禁用在 Zebra TC75 上不起作用