zoukankan      html  css  js  c++  java
  • iOS

    iOS 12 适配WiFi

    增加隐私权限

    https://www.cnblogs.com/baitongtong/p/10179519.html

    ios13又新增定位权限

    别的不说,理解请看上篇文章

    iOS - 适配 iOS 13 之工兵连扫雷

    直接上代码// 当定位授权状态改变时

    - (void)locationManager:(CLLocationManager *)manager didChangeAuthorizationStatus:(CLAuthorizationStatus)status
    {
        switch (status)
        {
            case kCLAuthorizationStatusDenied:                  // 拒绝授权
                NSLog(@"授权失败:用户拒绝授权或未开启定位服务");
                break;
            case kCLAuthorizationStatusAuthorizedWhenInUse:     // 在使用期间使用定位
                NSLog(@"授权成功:用户允许应用“使用期间”使用定位服务");
                 if (geteventID >= 0) {
                    NSDictionary *ret = @{@"returnVal":[self currentWifiSSID]};
                    [self sendResultEventWithCallbackId:geteventID dataDict:ret errDict:nil doDelete:YES];
                }
                break;
        }
    }
    //获取wifi名称 - ( NSString*)currentWifiSSID { NSArray *interfaceNames = CFBridgingRelease(CNCopySupportedInterfaces()); NSDictionary *SSIDInfo; for (NSString *interfaceName in interfaceNames) { SSIDInfo = CFBridgingRelease(CNCopyCurrentNetworkInfo((__bridge CFStringRef)interfaceName)); BOOL isNotEmpty = (SSIDInfo.count > 0); if (isNotEmpty) { break; } } NSString * ssid = @""; if (![[SSIDInfo objectForKey:@"SSID"] isEqual:@""]&&[SSIDInfo objectForKey:@"SSID"]!=nil) { ssid = [SSIDInfo objectForKey:@"SSID"]; //包含信息SSIDInfo
       }
        return ssid;
     
    }
    
    - (void)get:(NSDictionary *)paramsDict_
    
    {
        [setHostComputer launch];
        if (_locationManager == nil) {
            _locationManager = [CLLocationManager new];
        }
        geteventID = [paramsDict_ integerValueForKey:@"cbId" defaultValue:-1];
        if (_locationManager != nil) {
            // 请求“使用期间”使用定位服务
                if (@available(iOS 13, *)) {
                    if (CLLocationManager.authorizationStatus == kCLAuthorizationStatusAuthorizedWhenInUse) {//开启了权限,直接搜索
                            if (geteventID >= 0) {
                               NSDictionary *ret = @{@"returnVal":[self currentWifiSSID]};
                               [self sendResultEventWithCallbackId:geteventID dataDict:ret errDict:nil doDelete:YES];
                           }
    
                    } else if (CLLocationManager.authorizationStatus == kCLAuthorizationStatusDenied) {//如果用户没给权限,则提示
                        [UIAlertController alertControllerWithTitle:@"定位权限关闭提示" message:@"你关闭了定位权限,导致无法使用WIFI功能" preferredStyle:UIAlertControllerStyleAlert];
                    } else {//请求权限
                        _locationManager.delegate = self;
                        [_locationManager requestWhenInUseAuthorization];
                    }
                } else {
                        if (geteventID >= 0) {
                           NSDictionary *ret = @{@"returnVal":[self currentWifiSSID]};
                           [self sendResultEventWithCallbackId:geteventID dataDict:ret errDict:nil doDelete:YES];
                       }
    
                }
    
        }
    
    }
    
  • 相关阅读:
    插入数据失败提示: Setting autocommit to false on JDBC Connection 自动提交失败
    MyBatis XML配置properties
    mybatis 测试输出SQL语句到控制台配置
    原创:mysql5 还原至mysql 8.0.11数据库链接配置提示错误(修改内容有三处
    idea 快捷键汇总
    maven依赖配置和依赖范围
    pom.xml 配置 收藏
    单词的提取
    UVA10815 安迪的第一个字典 Andy's First Dictionary
    UVA11054 Gergovia的酒交易 Wine trading in Gergovia
  • 原文地址:https://www.cnblogs.com/baitongtong/p/11989642.html
Copyright © 2011-2022 走看看