URL方案“prefs:root = PASS”iOS10

时间:2016-12-15 10:08:09

标签: ios swift url ios10 url-scheme

我知道有很多关于这个问题的话题但有解决方案吗?我还没有找到官方文件。

我的问题是我需要在存储设置上重定向我的代码,如下所示:(在iOS 9中工作)

convertNBytesLen :: [Word8] -> Int32
convertNBytesLen = foldr accum 0
  where accum bs a = 256 * a + fromIntegral bs


bsToDouble :: S.ByteString -> Int -> Double
bsToDouble bs n = if intV >= 0
                   then fromIntegral intV / 2147483647
                   else - (fromIntegral intV / (-2147483648))
  where intV = convertNBytesLen (S.unpack bs) `shift` (32 - 8 * n)

但是由于ios10这种方法不起作用,所以有替代方案吗?我看到SnapChat,谷歌地图将他们的应用程序重定向到设置的不同部分(不是设置的主屏幕)所以我认为有一个解决方案。

我已经在info.plist中实现了url方案,但它仍然无效 I already implement the url scheme but it's still not work

我尝试了这种方法但同样的问题

 let settingsUrl = NSURL(string: "prefs:root=CASTLE&path=STORAGE_AND_BACKUP")
       if let url = settingsUrl {
           UIApplication.shared.openURL(url as URL)
        }

提前感谢。

1 个答案:

答案 0 :(得分:2)

自iOS 10起,无法从第三方应用中打开Settings应用。允许打开的唯一设置是键盘设置,但仅限于自定义键盘扩展和您自己的应用程序设置。 更多详情:here

注意:即使对于iOS 9,使用问题中提到的网址字符串也会导致应用被拒,因为它违反了iOS App Review Guidelines