Android DNS 错误非致命异常:java.net.UnknownHostException

问题描述 投票:0回答:1

我们在 crashlytics 中经常遇到此错误。 Android 应用程序无法连接到后端服务器。 并非所有用户都会发生该错误,某些用户会在不同时间发生该错误。 有时重新安装应用程序有效,有时使用 VPN 对用户有效。 但是,如果我们从邮递员或任何其他方式访问后端服务器,它就可以工作。

后端基本路径是这种格式http://abc.xyz.in:8080 后端服务器通过Elastic Beanstalk 和route53 托管在aws 中。 域名是通过 goDaddy 购买的。

这是堆栈跟踪 <{our domain}> 无法解决:网络错误。

org.xbill.DNS.Address.lookupHostName (Address.java:272)
org.xbill.DNS.Address.getByName (Address.java:311)
stock.ledger.commons.CustomHttpDns.lookup (CustomHttpDns.kt:62)
okhttp3.internal.connection.RouteSelector.resetNextInetSocketAddress (RouteSelector.kt:169)
okhttp3.internal.connection.RouteSelector.nextProxy (RouteSelector.kt:131)
okhttp3.internal.connection.RouteSelector.next (RouteSelector.kt:73)
okhttp3.internal.connection.ExchangeFinder.findConnection (ExchangeFinder.kt:205)
okhttp3.internal.connection.ExchangeFinder.findHealthyConnection (ExchangeFinder.kt:106)
okhttp3.internal.connection.ExchangeFinder.find (ExchangeFinder.kt:74)
okhttp3.internal.connection.RealCall.initExchange$okhttp (RealCall.java:255)
okhttp3.internal.connection.ConnectInterceptor.intercept (ConnectInterceptor.kt:32)
okhttp3.internal.http.RealInterceptorChain.proceed (RealInterceptorChain.kt:109)
okhttp3.internal.cache.CacheInterceptor.intercept (CacheInterceptor.kt:95)
okhttp3.internal.http.RealInterceptorChain.proceed (RealInterceptorChain.kt:109)
okhttp3.internal.http.BridgeInterceptor.intercept (BridgeInterceptor.kt:83)
okhttp3.internal.http.RealInterceptorChain.proceed (RealInterceptorChain.kt:109)
okhttp3.internal.http.RetryAndFollowUpInterceptor.intercept (RetryAndFollowUpInterceptor.kt:76)
okhttp3.internal.http.RealInterceptorChain.proceed (RealInterceptorChain.kt:109)
stock.ledger.core.network.HttpErrorInterceptor.intercept (HttpErrorInterceptor.kt:19)
okhttp3.internal.http.RealInterceptorChain.proceed (RealInterceptorChain.kt:109)
com.mocklets.pluto.PlutoInterceptor.intercept (PlutoInterceptor.kt:12)
okhttp3.internal.http.RealInterceptorChain.proceed (RealInterceptorChain.kt:109)
stock.ledger.data.interceptor.HeaderInterceptor.intercept (HeaderInterceptor.kt:40)
okhttp3.internal.http.RealInterceptorChain.proceed (RealInterceptorChain.kt:109)
okhttp3.internal.connection.RealCall.getResponseWithInterceptorChain$okhttp (RealCall.kt:201)
okhttp3.internal.connection.RealCall$AsyncCall.run (RealCall.kt:517)
java.util.concurrent.ThreadPoolExecutor.runWorker (ThreadPoolExecutor.java:1167)
java.util.concurrent.ThreadPoolExecutor$Worker.run (ThreadPoolExecutor.java:641)
java.lang.Thread.run (Thread.java:923)

我们尝试为此类错误添加拦截器并从不同的域调用后端,但是它有时有效,有时仍然给出错误。

android okhttp aws-route53
1个回答
0
投票

这是当用户没有正确连接或用户使用受限网络(例如仅允许特定 URL 而其他 URL 被阻止)的办公网络时观察到的一般错误。

最新问题
© www.soinside.com 2019 - 2024. All rights reserved.