captivenet: CNSetSupportedSSIDs使用情况



我试图使用CaptiveNetwork,以便用网络替换用于用户身份验证的web表。方法是CNSetSupportedSSIDs。

我已经尝试在我的应用程序的AppDelegate中添加这个方法,但是当我想使用我已经用上面的方法注册的SSID的热点时,什么也没有发生。网页页没有出现,但我的应用程序没有打开。

这是我的代码:

CFStringRef ssids[2] = { CFSTR("Wifi 1"), CFSTR("Wifi 2") };
CFArrayRef arr_ssids = CFArrayCreate(NULL, (const void **)ssids, 2, &kCFTypeArrayCallBacks);
if( CNSetSupportedSSIDs((CFArrayRef)array))
{
    NSLog(@"Successfully registered supported network SSIDs");
}
else
{
    NSLog(@"Error: Failed to register supported network SSIDs");
}
CFRelease(arr_ssids);

PS:我还添加了一个URL方案到我的应用程序。

谢谢你的回答

我已经向苹果提交了一个bug,他们回答说它不会弹出我们的应用程序。

看来这不是苹果的完整实现。您需要有有效的"授权"才能使用他们的系统库。请看这篇方便的文章来解释更多:

http://kalapun.com/blog/2013/02/11/reverse-engineering-ios-app/

无论如何,这段代码包含了一个类型0。在这里的代码片段中,CNSetSupportedSsids应该与arr_ssids匹配。我不知道"数组"是什么类型的变量,但它可能不包含你想要的数据。

相关内容

  • 没有找到相关文章

最新更新