[swift] CoreTelephony를 활용한 연결 가능한 이동 통신 데이터 네트워크 확인 방법

iOS 앱을 개발하다 보면 이동 통신 데이터 네트워크에 연결되어 있는지 확인해야 하는 경우가 있습니다. CoreTelephony 프레임워크를 사용하여 현재 연결된 데이터 네트워크를 확인할 수 있습니다.

CoreTelephony 프레임워크란?

CoreTelephony 프레임워크는 iOS 기기의 통신 상태 및 통신 서비스에 대한 정보에 접근할 수 있는 기능을 제공합니다.

CoreTelephony를 사용하여 연결 가능한 데이터 네트워크 확인하기

아래는 CoreTelephony 프레임워크를 사용하여 현재 연결된 이동 통신 데이터 네트워크를 확인하는 방법입니다.

import CoreTelephony

let networkInfo = CTTelephonyNetworkInfo()
if let currentRadioAccessTechnology = networkInfo.currentRadioAccessTechnology {
    if #available(iOS 14.1, *) {
        if let serviceCurrentRadioAccessTechnology = networkInfo.serviceCurrentRadioAccessTechnology {
            // iOS 14.1 이상에서는 serviceCurrentRadioAccessTechnology를 사용하여 현재 서비스의 무선 액세스 기술을 확인할 수 있습니다.
        }
    } else {
        // iOS 14.1 미만에서는 currentRadioAccessTechnology를 사용하여 현재 무선 액세스 기술을 확인할 수 있습니다.
    }
    
    // currentRadioAccessTechnology 또는 serviceCurrentRadioAccessTechnology를 통해 현재 연결된 데이터 네트워크를 확인하고 처리합니다.
}

위의 예시 코드에서 CTTelephonyNetworkInfo를 사용하여 현재의 이동 통신 데이터 네트워크에 접속되어 있는지 확인할 수 있습니다. 또한, iOS 버전에 따라 currentRadioAccessTechnology 또는 serviceCurrentRadioAccessTechnology를 사용하여 현재의 이동 통신 데이터 네트워크 정보를 확인할 수 있습니다.

CoreTelephony 프레임워크를 사용하여 이동 통신 데이터 네트워크에 접속되어 있는지 확인하고 이에 따른 작업을 수행할 수 있습니다.

참고 문헌:

원본 링크: