相关疑难解决方法(0)

iPhone获得没有私人图书馆的SSID

我有一个商业应用程序有一个完全正当的理由看到它所连接的网络的SSID:如果它连接到第三方硬件设备的Adhoc网络,它需要以不同于它的方式运行连接到互联网.

我所看到的有关获取SSID的所有内容都告诉我必须使用Apple80211,我理解这是一个私有库.我还读到,如果我使用私人图书馆Apple将不会批准该应用程序.

我被困在苹果和硬地之间,还是我在这里缺少什么?

iphone xcode ssid ios

153
推荐指数
9
解决办法
10万
查看次数

如何在不推荐使用CaptiveNetwork后在iOS9中获取Wifi SSID,并且已经阻止了对Wifi名称的调用

直到今天,我使用CaptiveNetwork接口显示当前连接的Wifi的名称.iOS 9 Prerelease参考已经说过,CaptiveNetwork方法现在被删除了,但它们仍然在开始时工作.

有了最新版本,Apple似乎已经阻止了这个电话(可能是出于隐私问题?).

有没有其他方法来获得当前Wifi的名称?

这就是我今天获得SSID的方式,但你现在只获得nil:

#import <SystemConfiguration/CaptiveNetwork.h>

NSString *wifiName = nil;  
NSArray *interFaceNames = (__bridge_transfer id)CNCopySupportedInterfaces(); 

for (NSString *name in interFaceNames) { 
    NSDictionary *info = (__bridge_transfer id)CNCopyCurrentNetworkInfo((__bridge CFStringRef)name); 

    if (info[@"SSID"]) { 
        wifiName = info[@"SSID"]; 
    } 
} 
Run Code Online (Sandbox Code Playgroud)

cocoa-touch objective-c ios ios9

35
推荐指数
4
解决办法
4万
查看次数

iOS API检测无线网络

CocoaTouch/iOS中是否有用于检测无线网络的API?我想写一个应用程序来保存手机在给定时刻可以看到的网络列表.

iphone cocoa-touch wifi ios

19
推荐指数
1
解决办法
3万
查看次数

找到可用的Wi-Fi网络

如何找到并列出范围内的所有Wi-Fi网络?

iphone objective-c wifi ipad ios

14
推荐指数
1
解决办法
2万
查看次数

在Swift 2中获取SSID

我试图使用此代码获取SSID

import Foundation
import SystemConfiguration.CaptiveNetwork

public class SSID {
    class func getSSID() -> String{
        var currentSSID = ""
        let interfaces = CNCopySupportedInterfaces()
        if interfaces != nil {
            let interfacesArray = interfaces.takeRetainedValue() as [String : AnyObject]
            if interfacesArray.count > 0 {
                let interfaceName = interfacesArray[0] as String
                let unsafeInterfaceData = CNCopyCurrentNetworkInfo(interfaceName)
                if unsafeInterfaceData != nil {
                    let interfaceData = unsafeInterfaceData.takeRetainedValue() as Dictionary!
                    currentSSID = interfaceData[kCNNetworkInfoKeySSID] as! String
                    let ssiddata = NSString(data:interfaceData[kCNNetworkInfoKeySSIDData]! as! NSData, encoding:NSUTF8StringEncoding) as! String
                    // ssid data from hex …
Run Code Online (Sandbox Code Playgroud)

iphone ssid ios swift

14
推荐指数
5
解决办法
1万
查看次数

wifi网络改变时的iPhone通知

这是一个调整,所以目标是越狱设备,而不是应用程序商店.我尝试过挂钩不同的方法,SBWiFiManager但是当wifi强度发生变化(如此连续)或者在网络发生变化后相当延迟之后,它们会被调用.

有没有其他方法来获取通知(或其他方法挂钩)去了wifi网络改变?

我知道你现在可以使用公共API获取当前的SSID,但我需要告知它何时发生变化.

iphone jailbreak wifi ios

8
推荐指数
1
解决办法
7685
查看次数

CNCopyCurrentNetworkInfo()返回错误数据

Apple在OS 4.1中引入了CNCopyCurrentNetworkInfo()函数.

https://developer.apple.com/library/ios/#documentation/SystemConfiguration/Reference/CaptiveNetworkRef/Reference/reference.html#//apple_ref/doc/c_ref/kCNNetworkInfoKeySSIDData

根据文件,它应该:

返回给定网络接口的当前网络信息.

但是,在使用时,它似乎返回正确的SSID(可读网络名称),但返回垃圾BSSID(无线接入点的MAC地址).我试过用两个不同的iPad连接到多个不同的网络,结果是一样的.

在我的家庭网络上,该函数返回:
{BSSID ="0:19:db:8:5c:cc"; SSID ="Das Boot"; SSIDDATA = <44617320 426f6f74>; }

实际上,我的路由器的BSSID是0:4:ed:66:81:xx其中xx绝对不是cc

有没有人有使用这个功能的经验,我错过了一些明显的东西(更有可能)或者这是一个Apple bug(更不可能)?

任何输入都非常感谢,

Nicke.

iphone network-programming ios4

6
推荐指数
0
解决办法
6483
查看次数

使用CNCopyCurrentNetworkInfo的问题

我使用以下代码来检索iPod连接的WiFi网络的SSID.

NSArray *ifs = (id)CNCopySupportedInterfaces();
NSLog(@"%s: Supported interfaces: %@", __func__, ifs);
id info = nil;
for (NSString *ifnam in ifs) {
    info = (id)CNCopyCurrentNetworkInfo((CFStringRef)ifnam);
    NSLog(@"%s: %@ => %@", __func__, ifnam, info);
    if (info && [info count]) {
        break;
    }
    [info release];
}
Run Code Online (Sandbox Code Playgroud)

有时这段代码没有返回我的设备连接的网络的正确SSID.有关为什么没有正确检索SSID的指针?CNCopyCurrentNetworkInfo包是否依赖于iOS版本的设备?

谢谢.

objective-c ios4 ios ios5 ios6

2
推荐指数
1
解决办法
4225
查看次数

CNCopySupportedInterfaces列出了所有已配置的Wifi接口信息或当前只有一个活动的信息?

我想使用CNCopySupportedInterfacesAPI来获取Wifi接口的SSID.但我对API有疑问CNCopySupportedInterfaces.此API是否会提供所有已配置Wifi接口的列表,或仅提供当前处于活动状态的接口或有关当时可访问(但未配置)的所有接入点的信息?

iphone ios5 captivenetwork

2
推荐指数
1
解决办法
5394
查看次数