1

Android の DNS に関して簡単な質問があります。

自分のアプリだけのために DNS サーバーを変更する方法はありますか?

具体的には、loopj の Android AsyncHttp lib ( http://loopj.com/android-async-http/ ) を使用しています。

ソースを見ると、setProxy メソッドに次のコメントがあることに気付きました。

/**
     * Sets the Proxy by it's hostname and port
     *
     * @param hostname the hostname (IP or DNS name)
     * @param port     the port number. -1 indicates the scheme default port.
     */
    public void setProxy(String hostname, int port) {
        final HttpHost proxy = new HttpHost(hostname, port);
        final HttpParams httpParams = this.httpClient.getParams();
        httpParams.setParameter(ConnRoutePNames.DEFAULT_PROXY, proxy);
    }

したがって、たとえば「8.8.8.8」と -1 を setProxy の引数として設定すると、目標を達成できると想定しましたが、明らかに間違っていました。

提案?

4

1 に答える 1

0

setProxy() メソッドを誤解していると思います。これは、HttpClient のプロキシを設定するために使用されます。

ホスト名: IP アドレス、つまり「192.168.1.100」または「proxy.example.com」などの DNS 名を指定できます。ポート: プロキシ サーバーがリッスンしている tcp/udp ポートです。

DNSを変更するというあなたの要求については、私はそれが不可能だと思います.

于 2014-03-27T21:38:19.550 に答える