在iOS中以编程方式打开设置



我正在从应用程序打开设备设置页面。当我通过iPhone X(iOS11(和iPhone 8打开时,它会进入应用程序设置。但当我通过iPhone 8 Plus和iPhone SE打开时,它会进入主页设置页面。我需要像iPhone 8 Plus一样打开iPhone的主页设置页面(打开主页设置页面(。我正在运行以下代码。

UIApplication *application = [UIApplication sharedApplication];
NSURL *settingsURL = [NSURL URLWithString:UIApplicationOpenSettingsURLString];
[application openURL:settingsURL options:@{} completionHandler:^(BOOL success) {
if (success) {
NSLog(@"Opened url");
}
}];

我的问题是,我创建了一个新项目,并运行了上面的代码。它运行良好。我可以在同一部iPhone X中导航到设备主页设置页面。但当我在iPhone X的项目中运行这段代码时,它会进入应用程序设置屏幕。我不知道我错过了哪里。如果可能的话,请帮帮我。提前谢谢。

全局变量

UIApplicationOpenSettingsURLString

用于创建一个可以传递给openURL:方法的URL。当您打开从此字符串构建的URL时,系统会启动"设置"应用程序,并显示该应用程序的自定义设置(如果有的话(。

https://developer.apple.com/documentation/uikit/uiapplicationopensettingsurlstring?language=objc

这是苹果公司的官方文件。我猜你的应用程序有自己的设置页面,这就是为什么openURL函数会把你带到应用程序的设置页面而不是设置主页。

最新更新