core: prefer getHostString() to getHostName() in ProxyDetectorImpl #4165
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
Addresses #4154 by using
getHostString()
instead ofgetHostName()
when its available, to avoid a potential reverse lookup that can execute on the user's calling thread.For non-Android users, this will avoid the network I/O for anyone using Java 7+. But for Android,
getHostString()
is only available for Android API levels >= 19 and the fallback togetHostName()
can still trigger aNetworkOnMainException
.@ejona86 From a preliminary look, #4137 will address the root cause of #4154, and will apply to all supported Android API levels. If #4137 makes it in the next release, we probably won't need this PR - unless we want to backport a light-weight fix for #4145 to existing releases.