如何解决崩溃:Dns.java okhttp3.Dns$1.lookup?

yoz*_*hik 6 android crash-reports crashlytics-android retrofit2

最近我开始收到这样的崩溃。没有更新任何东西来添加吊带。有谁知道什么会导致这个问题?谢谢。

com.squareup.retrofit2:改造:

改造版本 = "2.6.1"; 改造转换器GsonVersion = "2.6.1"; 改造适配器RxJava2版本=“2.6.1”

    Dns.java line 39
okhttp3.Dns$1.lookup

Fatal Exception: io.reactivex.exceptions.UndeliverableException
com.companyname.data.service.retrofit.exception.RetrofitException: Unable to resolve host "api.companyserver.com": No address associated with hostname
io.reactivex.plugins.RxJavaPlugins.onError (RxJavaPlugins.java:349)
io.reactivex.internal.operators.observable.ObservablePublish$PublishObserver.onError (ObservablePublish.java:187)
io.reactivex.internal.operators.observable.ObservableObserveOn$ObserveOnObserver.checkTerminated (ObservableObserveOn.java:276)
io.reactivex.internal.operators.observable.ObservableObserveOn$ObserveOnObserver.drainNormal (ObservableObserveOn.java:172)
io.reactivex.internal.operators.observable.ObservableObserveOn$ObserveOnObserver.run (ObservableObserveOn.java:252)
io.reactivex.android.schedulers.HandlerScheduler$ScheduledRunnable.run (HandlerScheduler.java:109)


Caused by com.companyname.data.service.retrofit.exception.RetrofitException
Unable to resolve host "api.companyserver.com": No address associated with hostname
com.lampa.letyshops.data.service.retrofit.adapter.RxErrorHandlingCallAdapterFactory$Rx2CallAdapterWrapper.asRetrofitException (RxErrorHandlingCallAdapterFactory.java:75)
com.lampa.letyshops.data.service.retrofit.adapter.RxErrorHandlingCallAdapterFactory$Rx2CallAdapterWrapper.access$000 (RxErrorHandlingCallAdapterFactory.java:41)
com.lampa.letyshops.data.service.retrofit.adapter.RxErrorHandlingCallAdapterFactory$Rx2CallAdapterWrapper$1.apply (RxErrorHandlingCallAdapterFactory.java:62)
com.lampa.letyshops.data.service.retrofit.adapter.RxErrorHandlingCallAdapterFactory$Rx2CallAdapterWrapper$1.apply (RxErrorHandlingCallAdapterFactory.java:59)
io.reactivex.internal.operators.observable.ObservableOnErrorNext$OnErrorNextObserver.onError (ObservableOnErrorNext.java:91)
retrofit2.adapter.rxjava2.BodyObservable$BodyObserver.onError (BodyObservable.java:72)
retrofit2.adapter.rxjava2.CallExecuteObservable.subscribeActual (CallExecuteObservable.java:55)
io.reactivex.Observable.subscribe (Observable.java:10955)
retrofit2.adapter.rxjava2.BodyObservable.subscribeActual (BodyObservable.java:34)
io.reactivex.Observable.subscribe (Observable.java:10955)
io.reactivex.internal.operators.observable.ObservableOnErrorNext.subscribeActual (ObservableOnErrorNext.java:38)
io.reactivex.Observable.subscribe (Observable.java:10955)
io.reactivex.internal.operators.observable.ObservableMap.subscribeActual (ObservableMap.java:33)
io.reactivex.Observable.subscribe (Observable.java:10955)
io.reactivex.internal.operators.observable.ObservableObserveOn.subscribeActual (ObservableObserveOn.java:45)
io.reactivex.Observable.subscribe (Observable.java:10955)
io.reactivex.internal.operators.observable.ObservableDoOnEach.subscribeActual (ObservableDoOnEach.java:42)
io.reactivex.Observable.subscribe (Observable.java:10955)
io.reactivex.internal.operators.observable.ObservableMap.subscribeActual (ObservableMap.java:33)
io.reactivex.Observable.subscribe (Observable.java:10955)
io.reactivex.internal.operators.observable.ObservableRetryWhen$RepeatWhenObserver.subscribeNext (ObservableRetryWhen.java:150)
io.reactivex.internal.operators.observable.ObservableRetryWhen$RepeatWhenObserver.innerNext (ObservableRetryWhen.java:127)
io.reactivex.internal.operators.observable.ObservableRetryWhen$RepeatWhenObserver$InnerRepeatObserver.onNext (ObservableRetryWhen.java:167)
io.reactivex.internal.operators.observable.ObservableFlatMap$MergeObserver.tryEmit (ObservableFlatMap.java:262)
io.reactivex.internal.operators.observable.ObservableFlatMap$InnerObserver.onNext (ObservableFlatMap.java:559)
io.reactivex.internal.operators.observable.ObservableCreate$CreateEmitter.onNext (ObservableCreate.java:67)
com.lampa.letyshops.data.manager.UnauthorizedManager.lambda$new$0 (UnauthorizedManager.java:61)
com.lampa.letyshops.data.manager.-$$Lambda$UnauthorizedManager$b3aT2iQy6aaX0AixSwB-wvEbg4w.subscribe
io.reactivex.internal.operators.observable.ObservableCreate.subscribeActual (ObservableCreate.java:40)
io.reactivex.Observable.subscribe (Observable.java:10955)
io.reactivex.internal.operators.observable.ObservableFlatMap$MergeObserver.subscribeInner (ObservableFlatMap.java:162)
io.reactivex.internal.operators.observable.ObservableFlatMap$MergeObserver.onNext (ObservableFlatMap.java:139)
io.reactivex.internal.operators.observable.ObservableObserveOn$ObserveOnObserver.drainNormal (ObservableObserveOn.java:200)
io.reactivex.internal.operators.observable.ObservableObserveOn$ObserveOnObserver.run (ObservableObserveOn.java:252)
io.reactivex.internal.schedulers.ExecutorScheduler$ExecutorWorker$BooleanRunnable.run (ExecutorScheduler.java:260)
io.reactivex.internal.schedulers.ExecutorScheduler$ExecutorWorker.run (ExecutorScheduler.java:225)
java.util.concurrent.ThreadPoolExecutor.runWorker (ThreadPoolExecutor.java:1167)
Run Code Online (Sandbox Code Playgroud)

Gio*_*gen 1

崩溃日志为您解释了该问题。如果我们看一下以下行:

RetrofitException:无法解析主机“api.companyserver.com”:没有与主机名关联的地址

这意味着您指定的 url:api.companyserver.com不存在(由 DNS 查找确定)。

请参阅以下内容:

$ ping api.companyserver.com
ping: cannot resolve api.companyserver.com: Unknown host
Run Code Online (Sandbox Code Playgroud)

您应该尝试调用另一个网址,例如stackoverflow.com,它应该可以再次工作。

要解决崩溃问题,您可能需要检查一下onError()进行网络调用的身体,否则您将需要捕获UndeliverableExceptionRetrofitException