Я занимаюсь разработкой приложения для Android с шаблоном kotlin MVVM, проблема в том, что я получаю данные из сети, и даже я делаю исключение для случаев, когда нет подключения к Интернету, даже если приложение всегда вылетает с LOGCAT: недопустимое исключение: не можетподключиться к ..... Любая помощь с этим, пожалуйста?Я попытался добавить перехватчик и после этого поймать это:
class NoConnectivityException () : IOException()
class ApiException() : IOException()
//and inside reopistory
//
try {
val fetchData =
retrofitInterface
.getAll()
.await()
_downloadedResponse.postValue(fetchData)
} catch (e: NoConnectivityException) {
} catch (a: ApiException) {
}
//my interceptor interface :
interface ConnectivityInteceptor : Interceptor
//my interceptor implementation :
class ConnectivityInteceptorImpl(
context: Context
) : ConnectivityInteceptor {
private val appContext = context.applicationContext
override fun intercept(chain: Interceptor.Chain): Response {
if (!isOnLine())
throw NoConnectivityException()
return chain.proceed(chain.request())
}
private fun isOnLine(): Boolean {
val connectivityManager = appContext.getSystemService(Context.CONNECTIVITY_SERVICE)
as ConnectivityManager
val networkInfo = connectivityManager.activeNetworkInfo
return networkInfo != null && networkInfo.isConnected
}
}