我有一个商业应用程序有一个完全正当的理由看到它所连接的网络的SSID:如果它连接到第三方硬件设备的Adhoc网络,它需要以不同于它的方式运行连接到互联网.
我所看到的有关获取SSID的所有内容都告诉我必须使用Apple80211,我理解这是一个私有库.我还读到,如果我使用私人图书馆Apple将不会批准该应用程序.
我被困在苹果和硬地之间,还是我在这里缺少什么?
CocoaTouch/iOS中是否有用于检测无线网络的API?我想写一个应用程序来保存手机在给定时刻可以看到的网络列表.
我想知道是否可以通过swift从iPhone获取列表扫描的WIFI SSID(使用像MobileWiFi.framework或其他类似的API),并查看有关该代码的示例(没有Objective-C源代码)
这不是几十个类似问题的重复(太多无法列出),因为我有证据表明可以发布显示wifi网络列表的应用程序.
因此,它已被广泛接受和理解,如果不使用私有api,您将无法获得所有wifi网络的列表.使用私有API会导致应用程序被应用商店审核拒绝.
然而,谷歌在已发布的2016年10月26日他们的谷歌主页的应用程序最近做了它,所以它必须能够现在.怎么样?!?
注意 - 他们的App Store列表显示该应用支持iOS 8.0或更高版本.我需要进一步测试此功能是否仅存在于iOS 10版本的应用程序中,或者实际上是否也存在于iOS 8和9上.
(我在图像中显示了我的wifi名称和mac地址)
我正在使用Objective-C,所以如果您在Swift中提交解决方案,请提交一个ObjC!
在我的iOS应用程序中,我想检测所有可用的wifi网络,然后从列表中选择一个网络并连接到它.目标是不打开内置应用程序中的设置以连接到wifi,而是在我的应用程序中完成所有操作.
首先,这可能吗?如果可能,请指出我使用的框架和方法.
我查看了Reachability示例,但这对我不起作用,因为我认为它所做的只是监视设备的网络状态.
我还查看了Captive Network Support框架,并使用了以下CNCopySupportedInterfaces功能:
CFArrayRef allWifiNetworks = CNCopySupportedInterfaces();
NSLog(@"%@", allWifiNetworks);
Run Code Online (Sandbox Code Playgroud)
但我所看到的只是设备所连接的当前wifi网络.
谢谢
这就是问题所在,但这里有一个长版本:我正在研究一个需要模仿 Belkin Wemo 连接工作流程的项目。WeMo 是一个物理开关,可以通过 iOS 应用程序进行控制。

这是设置的工作原理:
这让我想到:WeMo 应用程序如何检查可用网络——也就是,是否有用于扫描可用网络、显示它们并使用它们的 iOS API?
我有一个简单的问题,但我不知道如何实现。我需要创建一个应用程序,当用户单击某个网络iphone必须连接到该网络时,它可以获取可用wifi网络名称和信息的所有列表。我可以这样做吗?如何 ?
我正在使用 NEHotspotHelper 并尝试注册但未收到回电。首先,
然后添加了以下代码,
let options: [String: NSObject] = [kNEHotspotHelperOptionDisplayName : "ABC" as NSObject]
let queue: DispatchQueue = DispatchQueue(label: "com.ABC", attributes: DispatchQueue.Attributes.concurrent)
NSLog("Started wifi scanning.")
NEHotspotHelper.register(options: options, queue: queue) { (cmd: NEHotspotHelperCommand) in
NSLog("Received command: \(cmd.commandType.rawValue)")
if cmd.commandType == NEHotspotHelperCommandType.filterScanList {
//Get all available hotspots
let list: [NEHotspotNetwork] = cmd.networkList!
//Figure out the hotspot you wish to connect to
print(list)
} else if cmd.commandType == NEHotspotHelperCommandType.evaluate {
if let network = cmd.network {
//Set high confidence for the network …Run Code Online (Sandbox Code Playgroud) 如果附近有特殊的Wi-Fi网络,我必须构建一个响应的应用程序.
是否有可能获得附近的Wi-Fi网络列表.如果是这样,请告诉我们,以便我知道如何解决这个问题.
最诚挚的问候,珍妮弗