728x90
MainActivity
private lateinit var internetManager : ConnectivityManager
//네트워크 콜백 객체를 만듬
private val networkCallBack = object : ConnectivityManager.NetworkCallback() {
override fun onAvailable(network: Network) {
//연결 되었을 때
initLayout()
}
override fun onLost(network: Network) {
//연결이 끊겼을 때
}
}
override fun onViewCreated(view: View, savedInstanceState: Bundle?) {
super.onViewCreated(view, savedInstanceState)
//초기화하여 init 해준다.
internetManagerInit()
}
fun internetManagerInit(){
internetManager = (requireContext().getSystemService(Context.CONNECTIVITY_SERVICE) as ConnectivityManager)
val builder = NetworkRequest.Builder()
internetManager.registerNetworkCallback(builder.build(),networkCallBack)
}
//onDestroy 에서는 다시 unRegister하여서 콜백을 풀어준다.
override fun onDestroy() {
super.onDestroy()
internetManager =(requireContext().getSystemService(Context.CONNECTIVITY_SERVICE) as ConnectivityManager)
internetManager.unregisterNetworkCallback(networkCallBack)
}
'안드로이드' 카테고리의 다른 글
[Android / Kotlin] 네이버 Map API 간단히 사용하기 (0) | 2022.02.28 |
---|---|
android studio 원격 연결 ,디버깅 (feat .adb ) (0) | 2022.02.28 |
라운드 테두리 설정 . (0) | 2022.01.27 |
LayoutParams 설정 시 DP 단위로 바꾸기 (0) | 2022.01.25 |
Kotlin 기본 문법 정리 (0) | 2022.01.21 |