我的应用程序依赖于CLLocationServices。我注意到在Wi-Fi上,准确性很高,但在Cellular上,准确性却不是很好。
使用AshlyMills可达性,我可以区分两者,当它在Cellular上时,会出现一个图标,当按下时,我会显示带有“设置”按钮的警报,该按钮会将用户带到“设置”。
根据this post,Apple不再允许我们直接打开Wi-Fi设置。
因此,我改用this code将用户带到“设置”
let settingsAction = UIAlertAction(title: "Settings", style: .default) { (_) in
let settingsUrl = URL(string: UIApplication.openSettingsURLString)
if let url = settingsUrl {
UIApplication.shared.open(settingsUrl, completionHandler: { (success) in
})
}
}
alertController.addAction(settingsAction)
它可以正常工作,但是问题在于,它将用户带到我应用程序的“设置”菜单,而不是iPhone的“设置”菜单
我来了,但似乎切换Cellular Data开关会将它们带到Wi-Fi:
但是我想去这里,以便他们可以按Wi-Fi按钮:
当我cmnd +在.openSettingsURLString
中单击时,它说:
公共类让openSettingsURLString:字符串
//应用程序密钥:openURL:选项:
// value是一个NSString,包含原始应用程序的捆绑包ID
// value是一个属性列表类型的对象,与UIDocumentInteractionController的注释属性中传递的原始应用程序相对应
//值是布尔值NSNumber。如果此值为NO,或者不存在,请在使用前复制文件。
// value是一个NSString,包含原始应用程序的捆绑包ID
// value是一个属性列表类型的对象,与UIDocumentInteractionController的注释属性中传递的原始应用程序相对应
//值是布尔值NSNumber,如果在使用前需要复制文件,则设置为YES
它在与UIDocumentInteractionController的注释属性value is an NSString containing the bundle ID of the originating application ... value is a property-list typed object ... passed in UIDocumentInteractionController's annotation property
相对应的.pList文件中使用我的捆绑包ID。
有什么方法可以更改它,以便我进入iPhone的“设置”菜单,而不是应用程序的“设置”菜单?