【问题标题】:Open Settings iOS 8 URL打开设置 iOS 8 URL
【发布时间】:2016-01-25 05:05:31
【问题描述】:

我们如何使用 UIApplication.sharedApplication() 打开设置

我应该传入什么网址?

我使用了UIApplicationOpenSettingsURLString,但它直接打开到应用程序特定设置页面。但我想让它打开设置应用程序的第一级

或者更好的是,我希望它直接打开到用户可以在手机上启用定位服务的页面。

下面的代码直接打开应用程序特定的设置页面。

UIApplication.sharedApplication().openURL(NSURL(string: UIApplicationOpenSettingsURLString)!);

【问题讨论】:

标签: ios objective-c swift swift2 uiapplication


【解决方案1】:

对于 Xamarin.iOS 开发人员:

UIApplication.SharedApplication.OpenUrl(new NSUrl(UIApplication.OpenSettingsUrlString));

【讨论】:

    【解决方案2】:

    您可以在您的Info.plist 文件中使用UIRequiresPersistentWiFiYES 并创建像facebook 一样的警报视图,用户在没有网络连接的情况下启动您的应用程序。

    在这里总结讨论:

    第 1 步:没有可用于访问“设置”应用的根级别的 URL。

    第 2 步:您可以在 iOS 8 中使用 UIApplicationOpenSettingsURLString 将用户发送到您的应用程序的设置应用程序部分。

    通过将UIRequiresPersistentWiFi 设置为YES,您的应用可以显示与 Facebook 相同的警报,后者确实会打开“设置”应用的根级别。

    【讨论】:

      【解决方案3】:

      这个问题的答案是NO,我们不能直接打开Location页面,但是我们可以打开UIApplicationOpenSettingsURLString(设置页面)

      试试这个

      if let appSettings = NSURL(string: UIApplicationOpenSettingsURLString) {
      UIApplication.sharedApplication().openURL(appSettings)
      }
      else
      {
       // your URL is invalid
      }
      

      更多information

      【讨论】:

        【解决方案4】:

        您可以通过编程方式打开设置应用程序试试这个(仅适用于 iOS8 及更高版本)。

        如果您使用的是Swift

        UIApplication.sharedApplication().openURL(NSURL(string: UIApplicationOpenSettingsURLString))
        

        如果您使用的是Objective-C

           [[UIApplication sharedApplication] openURL:[NSURL URLWithString:UIApplicationOpenSettingsURLString]];
        

        对于其他较低版本(低于 iOS8),无法以编程方式打开设置应用程序。

        对象 C:

        - (void)openSettings
        {
            BOOL canOpenSettings = (&UIApplicationOpenSettingsURLString != NULL);
        
            if (canOpenSettings) {
                NSURL *url = [NSURL URLWithString:UIApplicationOpenSettingsURLString];
                [[UIApplication sharedApplication] openURL:url];
            }
        }
        

        斯威夫特:

        func openSettings() {
            UIApplication.sharedApplication().openURL(NSURL(string: UIApplicationOpenSettingsURLString)!)
        }
        

        【讨论】:

          猜你喜欢
          • 2014-11-17
          • 2016-09-07
          • 2015-08-03
          • 1970-01-01
          • 2017-02-09
          • 2012-04-20
          • 2019-05-01
          • 1970-01-01
          • 1970-01-01
          相关资源
          最近更新 更多