android - 附近网络的 BSSID w/Titanium

标签 android ios titanium mac-address bssid

如何从 Android/iOS 应用程序检索附近 WiFi 网络(不是本地设备)的 BSSID/mac 地址和强度?此应用程序是使用 Titanium 构建的。 Titanium.Platform 为设备提供 macaddress,而不是外部网络。

如果使用当前 API 无法做到这一点,是否有人知道/有可以解决此问题的模块?

最佳答案

您无法通过 TI 平台获取 BSSID。您可以编写一个可以读取它的模块。它将是这样的:

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);
    BSSID=[info valueForKey:@"BSSID"];
    if (info && [info count]) {
        break;
    }
    [info release];
}
[ifs release];
return BSSID;

但是,请注意,如果所有 AP 上的 SSID 都相同,则从 IOS 5 开始有一个错误会阻止您读取 BSSID。它不会正确刷新 BSSID。我仍在等待修复或替代解决方案,所以如果有人有什么东西,我将不胜感激!

关于android - 附近网络的 BSSID w/Titanium,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/7439969/

相关文章:

javascript - 使用钛金属半径网络进行信标检测

android - 错误 : The prefix "tools" for attribute "tools:overrideLibrary" associated with an element type "uses-sdk" is not bound

android - 获取 Kotlin 中当前函数的名称

ios - 为什么 UIView 比 Screen 宽

ios - 如何在 SWIFT 中从 UIView 实例化 ViewController

javascript - 钛合金预填充短信正文

java - 如何修复搜索栏中的 ListView

java - 在 Android 中解析 HTML

ios - UILabel 中字符的坐标

android - Surface 在 Android 应用程序上无效