我的清单文件中有<uses-permission android:name="android.permission.ACCESS_NETWORK_STATE" />
。
我得到的错误是:
Caused by java.lang.RuntimeException: java.net.UnknownHostException: Unable to resolve host "xxx": No address associated with hostname
at io.reactivex.internal.util.ExceptionHelper.wrapOrThrow(ExceptionHelper.java:45)
at io.reactivex.internal.observers.BlockingMultiObserver.blockingGet(BlockingMultiObserver.java:91)
at io.reactivex.Single.blockingGet(Single.java:2492)
这个bug是我第一次开始使用blockingGet
时出现的。
List<Data> dataList = dataRepository.getDataFromApi().blockingGet();
DataRepository:
fun getDataFromApi(): Single<List<Data>> {
return dataService.getData()
.map { jsonApiObject ->
...
return@map data
}
}
如果我的理解是正确的,它会发生在互联网丢失的时候。如何解决这个问题,我的方法有什么问题?
更新
试图像这样捕获这个异常:
try {
val data = repository!!.getData().blockingGet()
...
} catch (e: SocketException) {
showNetworkErrorDialog()
}
仍然会出现错误。
发布于 2018-11-09 06:41:31
请检查此URL的internet连接。看起来你的应用程序无法到达主机
https://stackoverflow.com/questions/53220755
复制相似问题