diff --git a/src/main/res/drawable/ic_navigation_close.xml b/src/main/res/drawable-anydpi-v21/ic_navigation_close.xml similarity index 100% rename from src/main/res/drawable/ic_navigation_close.xml rename to src/main/res/drawable-anydpi-v21/ic_navigation_close.xml diff --git a/src/main/scala/com/github/shadowsocks/BaseService.scala b/src/main/scala/com/github/shadowsocks/BaseService.scala index 9236897c..ee88792f 100644 --- a/src/main/scala/com/github/shadowsocks/BaseService.scala +++ b/src/main/scala/com/github/shadowsocks/BaseService.scala @@ -21,6 +21,8 @@ package com.github.shadowsocks import java.io.IOException +import java.net.InetAddress +import java.util import java.util.concurrent.TimeUnit import java.util.{Timer, TimerTask} @@ -35,7 +37,7 @@ import com.github.shadowsocks.ShadowsocksApplication.app import com.github.shadowsocks.aidl.{IShadowsocksService, IShadowsocksServiceCallback} import com.github.shadowsocks.database.Profile import com.github.shadowsocks.utils._ -import okhttp3.{FormBody, OkHttpClient, Request} +import okhttp3.{Dns, FormBody, OkHttpClient, Request} import scala.util.Random @@ -137,7 +139,10 @@ trait BaseService extends Service { val sig = Utils.getSignature(this) val client = new OkHttpClient.Builder() - .dns(new CustomDns()) + .dns(hostname => Utils.resolve(hostname, enableIPv6 = false) match { + case Some(ip) => util.Arrays.asList(InetAddress.getByName(ip)) + case _ => Dns.SYSTEM.lookup(hostname) + }) .connectTimeout(10, TimeUnit.SECONDS) .writeTimeout(10, TimeUnit.SECONDS) .readTimeout(30, TimeUnit.SECONDS)