Android通過HttpURLConnection與HttpClient連網代理網關設定

來源:互聯網
上載者:User

  Android連網主要使用HttpURLConneciton和HttpClient進行連網,在手機連網的時候,我們優先選擇wifi網路,其次在選擇移動網路,這裡所述移動網路主要指cmwap。

大家都知道cmwap串連需要設定Proxy 位址和連接埠,那麼,android程式中如何設定代理呢?

1、HttpURLConnection設定代理

//當我們使用的是中國移動的行動電話通訊時,下面方法可以直接擷取得到10.0.0.172,80連接埠String host=android.net.Proxy.getDefaultHost();//通過andorid.net.Proxy可以擷取預設的Proxy 位址int port =android.net.Proxy.getDefaultPort();//通過andorid.net.Proxy可以擷取預設的代理連接埠SocketAddress sa=new InetSocketAddress(host,port);//定義代理,此處的Proxy是源自java.netProxy proxy=new Proxy(java.net.Proxy.Type.HTTP,sa);URL getUrl = new URL(“www.baidu.com”); HttpURLConnection con = (HttpURLConnection) getUrl.openConnection(proxy);//設定代理

2、HttpClient設定代理

DefaultHttpClient httpClient=new DefaultHttpClient();String host=Proxy.getDefaultHost();//此處Proxy源自android.netint port = Proxy.getPort(context);//同上HttpHost httpHost = new HttpHost(host, port); //設定代理httpClient.getParams().setParameter(ConnRouteParams.DEFAULT_PROXY,httpHost);HttpGet httpGet=new HttpPost("<a href="http://www.baidu.com">www.baidu.com</a>");HttpResponse response=httpClient.execute(httpGet);

3、判斷手機是否連網,是否是wifi

boolean isConnect(){ConnectivityManager cm = (ConnectivityManager)         this.getSystemService(Context.CONNECTIVITY_SERVICE);if(cm!=null){return true;}return false;}boolean isWifi(){ConnectivityManager cm = (ConnectivityManager)        context.getSystemService(Context.CONNECTIVITY_SERVICE);if(cm!=null){NetworkInfo  ni = cm.getActiveNetworkInfo();if(!ni.getTypeName().equals("WIFI")){/* * ni.getTypeNmae()可能取值如下 * WIFI,表示WIFI連網 * MOBILE,表示GPRS、EGPRS * 3G網路沒有測試過 * WIFI和(E)GPRS不能共存,如果兩個都開啟,系統僅支援WIFI */return true;}}return false;}
相關文章

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.