ktu*_*ner 86 iphone settings url-scheme uiapplication ios
我最近发现了很棒的iOS5自定义设置URL方案,可以在这个很棒的网站上详细解释.
我发现这个工作,将用户从我的应用程序引导到Settings应用程序:
[[UIApplication sharedApplication] openURL:
[NSURL URLWithString:@"prefs:root=General"]];
Run Code Online (Sandbox Code Playgroud)
但似乎无法通过参数直接路由到Restrictions路径path:
[[UIApplication sharedApplication] openURL:
[NSURL URLWithString:@"prefs:root=General&path=Restrictions"]];
Run Code Online (Sandbox Code Playgroud)
有没有人找到这方面的文件或能够使这项工作?
任何见解将不胜感激.我正在尝试让用户启用应用内购买,而不是让用户手动点击限制(不是很明显).
Hen*_*mak 140
警告:此方法不适用于运行iOS 5.1及更高版本的设备 - 请参阅下面的Hlung评论.
path组件可能具有与实际部分不同的名称,但您也可能无法直接从URL访问该部分.我找到了一个可能的URL列表,并且没有限制,可能它还没有找到.
"设置"应用中当前已知网址的列表:
Jas*_*ore 47
从iOS8开始,您可以使用以下命令打开内置的"设置"应用:
NSURL *url = [NSURL URLWithString:UIApplicationOpenSettingsURLString];
if ([[UIApplication sharedApplication] canOpenURL:url]) {
[[UIApplication sharedApplication] openURL:url];
}
Run Code Online (Sandbox Code Playgroud)
实际的URL字符串是@"app-settings:".我尝试将不同的部分附加到字符串("蓝牙","通用"等),但似乎只链接到主设置屏幕工作.如果您发现其他情况,请发布回复.
小智 42
如果你将prefs URL方案添加到你的iOS应用程序,它将允许你使用我们在iOS 5中可以使用的所有方案.我已经在iOS 9上测试了它,但我认为它也适用于旧版本.

Nix*_*ang 32
更新:
prefs: 从iOS 10开始不起作用.
Dan*_*Dan 22
是的,看到了这个(以及更多),甚至在测试应用程序中实现了它.真的需要从苹果公司得到明确的一句话,但社区的共识意见是苹果公司在公开"发现/发布"后不允许使用它,因此包含它的应用程序将不被接受.
08/01/12更新:通过我的开发者帐户询问Apple是否有办法以编程方式启动WiFi设置对话框.以下是回复:
"我们的工程师已经审查了您的请求,并得出结论认为,目前出货的系统配置没有支持的方法来实现所需的功能."
Mik*_*nov 18
在iOS 9中它再次运行!
打开设置>常规>键盘,我使用:
prefs:root=General&path=Keyboard
Run Code Online (Sandbox Code Playgroud)
此外,它可以更远的键盘:
prefs:root=General&path=Keyboard/KEYBOARDS
Run Code Online (Sandbox Code Playgroud)
小智 7
我想在设置应用程序中打开蓝牙菜单,上面的路径(prefs:root = General&path = Bluetooth)对我来说不起作用.最终为我工作的是
UIApplication.sharedApplication().openURL(NSURL(string:"prefs:root=Bluetooth")!)
Run Code Online (Sandbox Code Playgroud)
确保首先prefs定义了URL Scheme.
小智 5
iOS10的解决方案.工作良好.
NSURL *URL = [NSURL URLWithString:@"App-prefs:root=TWITTER"];
[[UIApplication sharedApplication] openURL:URL options:@{} completionHandler:nil];
Run Code Online (Sandbox Code Playgroud)