背景:
給智能設備配置網絡,需要直連智能設備發射的Wi-Fi
目前技術:
iOS11后蘋果提供 NEHotspotConfigurationManager 類直連周邊Wi-Fi,iOS11前只能跳轉到系統設置界面手動連接Wi-Fi
步驟
給開發者中心給 Appid 配置連接Wi-Fi的權限
Xcode - Build Phases - 引入NetworkExtension
Xcode - Capabilities - Hostpot Configuration 勾選
代碼實現
引入 #import <NetworkExtension/NEHotspotConfigurationManager.h>
if (@available(iOS 11.0, *)) { NEHotspotConfiguration * hotspotConfig = [[NEHotspotConfiguration alloc] initWithSSID:@"Deli_L1050ADNW_1B0000"]; // 開始連接 (調用此方法后系統會自動彈窗確認) [[NEHotspotConfigurationManager sharedManager] applyConfiguration:hotspotConfig completionHandler:^(NSError * _Nullable error) { NSLog(@"%@",error); if (error && error.code != 13 && error.code != 7) { }else if(error.code ==7){//error code = 7 :用戶點擊了彈框取消按鈕 }else{// error code = 13 :已連接 } }]; } else { // iOS11以下版本邏輯 }
以上說的方法不需要去蘋果申請權限
注意事項
由于NEHotspotConfigurationManager.h在模擬器上不可用,導入方法為:
#if TARGET_IPHONE_SIMULATOR#else#import <NetworkExtension/NEHotspotConfigurationManager.h>#endif
代碼邏輯同于注意事項1
總結
以上就是這篇文章的全部內容了,希望本文的內容對大家的學習或者工作具有一定的參考學習價值,如果有疑問大家可以留言交流,謝謝大家對VEVB武林網的支持。
新聞熱點
疑難解答