解决iOS13 无法获取WiFi名称(SSID)问题
升级到iOS13以后,发现之前获取WiFi名称的接口失效了,返回的都是固定值"WLAN"。这里可能是因为苹果对用户隐私保护问题,因为通过wifi信息可以定位到用户地理位置。所以iOS13以后如果想要继续获取WiFi名称,需要在调用接口前判断用户是否同意app使用地理位置信息。
我这里只在第一次使用时提示:
NSString* phoneVersion = [[UIDevice currentDevice] systemVersion]; CGFloat version = [phoneVersion floatValue]; // 如果是iOS13 未开启地理位置权限 需要提示一下 if ([CLLocationManager authorizationStatus] == kCLAuthorizationStatusNotDetermined && version >= 13) { self.locationManager = [[CLLocationManager alloc] init]; [self.locationManager requestWhenInUseAuthorization]; }
知识点扩展:
iOS 获取当前的Wifi名称
1.工程头文件导入
#import <SystemConfiguration/CaptiveNetwork.h>
2.实现如下代码,即可返回当前连接的网络名称
- (NSString *)currentWifiSSID { NSString *ssid = nil; NSArray *ifs = (__bridge id)CNCopySupportedInterfaces(); for (NSString *ifname in ifs) { NSDictionary *info = (__bridge id)CNCopyCurrentNetworkInfo((__bridge CFStringRef)ifname); if (info[@"SSIDD"]) { ssid = info[@"SSID"]; } } return ssid; }
总结
以上所述是小编给大家介绍的解决iOS13 无法获取WiFi名称(SSID)问题,希望对大家有所帮助,如果大家有任何疑问请给我留言,小编会及时回复大家的。在此也非常感谢大家对我们网站的支持!
如果你觉得本文对你有帮助,欢迎转载,烦请注明出处,谢谢!
相关推荐
-
iOS获取当前设备WiFi信息的方法
前言 最近项目有个需求,获取当前连接的wifi的信息,通过努力终于实现了,现在分享给大家,有需要的可以一起来看. 注意:本文是以Swift代码为例 1.添加模块引用 首先我们在需要获取 WiFi 信息的地方引用需要的模块: import SystemConfiguration.CaptiveNetwork 2.添加获取代码 接下来编写获取 WiFi 信息的代码,如下: //获取 WiFi 信息 func getWifiInfo() -> (ssid: String, mac: String) {
-
快速解决iOS10不能跳转系统WiFi列表的问题
第一种方式: 在iOS10更新后,系统设置跳转被禁用,只能跳转App设置,但是最近发现苹果又更新了URLscheme,亲测可用,建议iOS10已下,还用原来的scheme #define iOS10 ([[UIDevice currentDevice].systemVersion doubleValue] >= 10.0) NSString * urlString = @"App-Prefs:root=WIFI"; if ([[UIApplication sharedApplic
-
iOS获取当前连接的WiFi以及IP地址
导入头文件 #import <ifaddrs.h> #import <arpa/inet.h> #import <SystemConfiguration/CaptiveNetwork.h> 核心代码: + (nullable NSString*)getCurrentLocalIP { NSString *address = nil; struct ifaddrs *interfaces = NULL; struct ifaddrs *temp_addr = NULL;
-
iOS 12中无法获取WiFi的SSID了?别慌看这里!
前言 SSID全称Service Set IDentifier, 即Wifi网络的公开名称.在IOS 4.1以上版本提供了公开的方法来获取该信息. 但是最近,Apple于北京时间9月17日晚在官网发布了Xcode 10正式版,QiShare团队成员于9月18日中午统一升级以对现有项目做适配.期间,作者发现某项目使用Xcode 10编译出的App在iOS 12中无法获取WiFi的SSID. 敲黑板:获取WiFi的SSID是智能硬件App中配网模块的常用功能,各大厂商要针对iOS 12适配一波了(@
-
iOS获取当前连接的wifi信息
本文实例为大家分享了iOS获取当前连接wifi信息的具体代码,供大家参考,具体内容如下 导入框架CaptiveNetwork #import <SystemConfiguration/CaptiveNetwork.h> 获取当前连接的wifi信息 // 只能获取当前的SSID - (id)fetchSSIDInfo { NSString *currentSSID = @""; CFArrayRef myArray = CNCopySupportedInterfaces();
-
IOS 获取已连接的wifi信息的实现代码
IOS 获取已连接的wifi信息的实现代码 首先需要 #import <SystemConfiguration/CaptiveNetwork.h> + (id)fetchSSIDInfo { NSArray *ifs = (id)CNCopySupportedInterfaces(); NSLog(@"%s: Supported interfaces: %@", __func__, ifs); id info = nil; for (NSString *ifnam in
-
解决iOS13 无法获取WiFi名称(SSID)问题
升级到iOS13以后,发现之前获取WiFi名称的接口失效了,返回的都是固定值"WLAN".这里可能是因为苹果对用户隐私保护问题,因为通过wifi信息可以定位到用户地理位置.所以iOS13以后如果想要继续获取WiFi名称,需要在调用接口前判断用户是否同意app使用地理位置信息. 我这里只在第一次使用时提示: NSString* phoneVersion = [[UIDevice currentDevice] systemVersion]; CGFloat version = [phone
-
Android编程获取Wifi名称(SSID)的方法
本文实例讲述了Android编程获取Wifi名称(SSID)的方法.分享给大家供大家参考,具体如下: 可以使用WifiManager和WifiInfo来获取当前Wifi连接信息 WifiManager wifiManager = (WifiManager) getSystemService(WIFI_SERVICE); WifiInfo wifiInfo = wifiManager.getConnectionInfo(); Log.d("wifiInfo", wifiInfo.toSt
-
解决Android 6.0获取wifi Mac地址为02:00:00:00:00:00问题
前言: 之前项目比较旧,手机版本还比较低,还使用eclipse开发.用到了需要获取手机wifi Mac地址.使用了如下代码: // Android 6.0之前的版本可以用的方法(模拟器可以使用) private String getMacAddrOld() { String macString = ""; WifiManager wifimsg = (WifiManager)getSystemService(Context.WIFI_SERVICE); if (wifimsg != n
-
如何利用python和DOS获取wifi密码
CMD命令获取电脑里配置过的wifi信息 设定一个场景,假如我忘记了自家的wifi密码,这时候小伙伴来家里跟我开黑,问我wifi密码是多少?我就抓住了这个小秀一波的机会. 上才艺: 按下win+R键,输入CMD打开DOS窗口,然后输入以下命令查看电脑里配置过的wifi. netsh wlan show profiles 这是电脑连过的wifi,假设我家里的wifi是CMCC-CMCC,接下来我需要查看CMCC-CMCC的信息,上代码: netsh wlan show profiles CMCC-
-
javascript获取函数名称、函数参数、对象属性名称的代码实例
一.获取函数名称的3种实现方法实例1: 在js权威指南中看到的一个方法: Function.prototype.getName = function(){ return this.name || this.toString().match(/function\s*([^(]*)\(/)[1]} 实例2: 如果当前函数是有名函数,则返回其名字,如果是匿名函数则返回被赋值的函数变量名,如果是闭包中匿名函数则返回"anonymous". 复制代码 代码如下: var getFnName
-
在前女友婚礼上用python把婚礼现场的WIFI名称改成了
上次的故事是这样的 前女友发来加密的"520快乐.pdf",我用python破解开之后,却发现... 事情是这样的 小哥哥还是来到了婚礼现场 在一个背靠角落的桌子前坐下 耳朵里塞满了 幸福到听不清的嘈杂声 闪烁的灯光刺痛着 昨夜失眠到 有点发红的双眼 一股莫名的感觉直往上冲 默默,掏出了笔记本 python开发工具 现场的WiFi名称叫:"婚礼第一大厅" python破解WiFi密码 1.安装pywifi和comtypes 两个模块 pip install pywi
-
Android获取wifi列表的方法
本文实例为大家分享了Android获取wifi列表的具体代码,供大家参考,具体内容如下 接着上篇的获取蓝牙列表,这次我们来获取android设备的wifi列表,话不多少直接上代码! 1.首先我们先获取wifi权限 <!-- 以下是使用wifi访问网络所需的权限 --> <uses-permission android:name="android.permission.CHANGE_NETWORK_STATE" /> <uses-permission and
-
批处理获取网卡名称的代码(附修改IP、网关、DNS脚本)
复制代码 代码如下: ::用ipconfig /all命令获取网卡名称. FOR /F "tokens=2*" %%i IN ('ipconfig/all^|find /i "Ethernet adapter "') DO set name=%%j ::用for命令删除网卡名称后面的冒号. FOR /F "tokens=1* delims=:" %%i in ("%name%") do set 网卡名称=%%i 套用上面的脚本
-
php获取文件名称和扩展名的方法
php获取文件名称和扩展名 1.basename()-返回路径的文件名 请看下面php代码: <?php $path = "/usr/www/html/index.php"; echo basename($path)."<br>"; //如果选择suffix则忽略扩展名 echo basename($path,".php"); ?> 运行结果: index.php index 2.dirname()-返回当前脚本的文件路径
随机推荐
- 结合Python的SimpleHTTPServer源码来解析socket通信
- 如何实现在下拉菜单里输入文字?
- js实现网页抽奖实例
- Java xml出现错误 javax.xml.transform.TransformerException: java.lang.NullPointerException
- java中的枚举类型详细介绍
- CorFlags.exe检查.NET程序平台目标(Platform Target)的工具
- php实现简单文件下载的方法
- python文件与目录操作实例详解
- easyui-edatagrid.js实现回车键结束编辑功能的实例
- Spring boot怎么整合Mybatis
- javascript 关闭IE6、IE7
- SQL Server 2016 CTP2.2安装配置方法图文教程
- jquery delay()介绍及使用指南
- 使用jQuery设置disabled属性与移除disabled属性
- JS排序之冒泡排序详解
- SSH框架网上商城项目第5战之商品类别级联查询和分页功能
- JavaScript遍历table表格中的某行某列并打印其值
- LRUCache的实现原理及利用python实现的方法
- Android 程序执行Linux命令的解决方法及注意事项
- jQuery pjax 应用简单示例