欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页  >  移动技术

快速解决iOS10不能跳转系统WiFi列表的问题

程序员文章站 2024-02-13 08:55:46
第一种方式: 在ios10更新后,系统设置跳转被禁用,只能跳转app设置,但是最近发现苹果又更新了urlscheme,亲测可用,建议ios10已下,还用原来的scheme...

第一种方式:

在ios10更新后,系统设置跳转被禁用,只能跳转app设置,但是最近发现苹果又更新了urlscheme,亲测可用,建议ios10已下,还用原来的scheme

#define ios10 ([[uidevice currentdevice].systemversion doublevalue] >= 10.0)
nsstring * urlstring = @"app-prefs:root=wifi";
if ([[uiapplication sharedapplication] canopenurl:[nsurl urlwithstring:urlstring]]) {
  if (ios10) {
    [[uiapplication sharedapplication] openurl:[nsurl urlwithstring:urlstring] options:@{} completionhandler:nil];
  } else {
    [[uiapplication sharedapplication] openurl:[nsurl urlwithstring:@"prefs:root=wifi"]];
  }
}

第二种方式:

用到了私有api,慎用,若想使用并通过审核,可以对私有方法名等加密

nsurl*url=[nsurl urlwithstring:@"prefs:root=wifi"];
  class lsapplicationworkspace = nsclassfromstring(@"lsapplicationworkspace");
  [[lsapplicationworkspace performselector:@selector(defaultworkspace)] performselector:@selector(opensensitiveurl:withoptions:) withobject:url withobject:nil];

附录:ios10之后,其它界面的跳转

当前ios10支持的所有跳转,亲测可用(测试系统:10.2.1)

跳转 写法

无线局域网 app-prefs:root=wifi
蓝牙 app-prefs:root=bluetooth
蜂窝移动网络 app-prefs:root=mobile_data_settings_id
个人热点 app-prefs:root=internet_tethering
运营商 app-prefs:root=carrier
通知 app-prefs:root=notifications_id
通用 app-prefs:root=general
通用-关于本机 app-prefs:root=general&path=about
通用-键盘 app-prefs:root=general&path=keyboard
通用-辅助功能 app-prefs:root=general&path=accessibility
通用-语言与地区 app-prefs:root=general&path=international
通用-还原 app-prefs:root=reset
墙纸 app-prefs:root=wallpaper
siri app-prefs:root=siri
隐私 app-prefs:root=privacy
safari app-prefs:root=safari
音乐 app-prefs:root=music
音乐-均衡器 app-prefs:root=music&path=com.apple.music:eq
照片与相机 app-prefs:root=photos
facetime app-prefs:root=facetime

以上这篇快速解决ios10不能跳转系统wifi列表的问题就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持。