检查您的应用是否使用正确的权利文件进行签名。您可以使用以下命令执行此操作:
codesign -d --entitlements :- /Users/User/Library/Developer/Xcode/DerivedData/appname-atpabrbgvqunorhiggpf/Build/Products/Debug-iphoneos/AppName.app
在输出中,您应该看到以下两个权利:
<key>com.apple.developer.networking.HotspotHelper</key>
<true/>
<key>com.apple.developer.networking.networkextension</key>
<array>
如果你不这样做,你可以按照这里的线程来调试你的代码设计过程:
https://forums.developer.apple.com/message/75928#75928
请记住,热点帮助程序代码只会在设备上运行。
作为参考,此代码适用于我(Swift)
var options = [String: NSObject]()
options[kNEHotspotHelperOptionDisplayName] = "Try Here" as NSObject?
NSLog("Lets register", "")
let returnType = NEHotspotHelper.register(options: options, queue: DispatchQueue.main, handler: {(_ cmd: NEHotspotHelperCommand) -> Void in
NSLog("Returned", "")
print(cmd)
if cmd.commandType == NEHotspotHelperCommandType.evaluate || cmd.commandType == NEHotspotHelperCommandType.filterScanList {
if cmd.networkList != nil {
for network: NEHotspotNetwork in cmd.networkList! {
NSLog("Found network \(network.bssid) with \(network.ssid)", "")
if (network.ssid == "Hub") {
print("Confidence set to high for ssid:\(network.ssid)")
}
}
}
}
})