Objective-C

181. (Objective-C/objc) [간단 소스] NEHotspotConfigurationManager getConfiguredSSIDs 와이파이 SSID 목록 확인

투케이2K 2025. 2. 1. 10:27

[개발 환경 설정]

개발 툴 : XCODE

개발 언어 : OBJECTIVE-C

 

[소스 코드]

// --------------------------------------------------------------------------------------
[개발 및 테스트 환경]
// --------------------------------------------------------------------------------------

- 언어 : Objective-c

- 개발 툴 : Xcode

- 기술 구분 : 간단 소스 / NEHotspotConfigurationManager / WIFI / AP / SSID / PW

- 사전 권한 설정 : info.plist

  <key>NSLocationWhenInUseUsageDescription</key>
  <string>앱에서 Wi-Fi 연결을 설정하려면 위치 권한이 필요합니다.</string>

- 사전 Xcode 프로젝트에서 유료 결제 개발자 계정 사용 Capabillity Hotspot Configuration 사용 설정

  >> https://blog.naver.com/kkh0977/223669166907

- 사전 Xcode 프로젝트에서 Capabillity 개발 권한 추가 entitlements 속성 key , value 값 확인 방법

  >> https://blog.naver.com/kkh0977/223669259799

// --------------------------------------------------------------------------------------






// --------------------------------------------------------------------------------------
[호출 방법 소스 코드]
// --------------------------------------------------------------------------------------

// [WiFiManager 클래스 객체 생성]
WiFiManager *wifiManager = [[WiFiManager alloc] init];

// [WIFI SSID 목록 확인 수행]
[wifiManager getConfiguredSSIDs];

// --------------------------------------------------------------------------------------






// --------------------------------------------------------------------------------------
[클래스 소스 코드]
// --------------------------------------------------------------------------------------

#import <Foundation/Foundation.h>
#import <NetworkExtension/NetworkExtension.h>

@interface WiFiManager : NSObject

- (void)getConfiguredSSIDs;

@end

@implementation WiFiManager

- (void)getConfiguredSSIDs {

    // [IOS 13 이상 분기 처리 수행]
    if (@available(iOS 13.0, *)) {

        [[NEHotspotConfigurationManager sharedManager] getConfiguredSSIDsWithCompletionHandler:^(NSArray<NSString *> * _Nonnull ssidArray) {
            if (ssidArray.count > 0) { // [구성 된 리스트 목록 확인]
                NSLog(@"NEHotspotConfigurationManager :: getConfiguredSSIDsWithCompletionHandler :: 구성된 Wi-Fi SSID 목록: %@", ssidArray);
            } else {
                NSLog(@"NEHotspotConfigurationManager :: getConfiguredSSIDsWithCompletionHandler :: 구성된 Wi-Fi 네트워크가 없습니다");
            }
        }];

    } else {
        NSLog(@"NEHotspotConfigurationManager :: getConfiguredSSIDsWithCompletionHandler :: 기능은 iOS 13 이상에서만 지원됩니다");
    }
}

@end

// --------------------------------------------------------------------------------------






// --------------------------------------------------------------------------------------
[참고 사이트]
// --------------------------------------------------------------------------------------

[Ios] 기기 QR 스캔 및 스키마 scheme 정보 활용 다이렉트 AP 연결 로직

https://blog.naver.com/kkh0977/223646728115?trackingCode=blog_bloghome_searchlist


[NEHotspotConfigurationManager 간단 설명 및 사용 옵션 정리]

https://blog.naver.com/kkh0977/223679071590?trackingCode=blog_bloghome_searchlist


[NEHotspotConfigurationManager 사용해 특정 WIFI 와이파이 다이렉트 연결 및 에러 발생 체크 분기 처리 수행]

https://blog.naver.com/kkh0977/223669296624?trackingCode=blog_bloghome_searchlist

// --------------------------------------------------------------------------------------
 
반응형