鴻蒙OS 使用當(dāng)前網(wǎng)絡(luò)打開一個(gè)URL鏈接

2020-09-18 15:41 更新

場(chǎng)景介紹

應(yīng)用使用當(dāng)前的數(shù)據(jù)網(wǎng)絡(luò)打開一個(gè) URL 鏈接。

接口說明

應(yīng)用使用當(dāng)前網(wǎng)絡(luò)打開一個(gè) URL 鏈接,所使用的接口說明如下。

類名 接口名 功能描述
NetManager getInstance(Context context) 獲取網(wǎng)絡(luò)管理的實(shí)例對(duì)象。
hasDefaultNet() 查詢當(dāng)前是否有默認(rèn)可用的數(shù)據(jù)網(wǎng)絡(luò)。
getDefaultNet() 獲取當(dāng)前默認(rèn)的數(shù)據(jù)網(wǎng)絡(luò)句柄。
addDefaultNetStatusCallback(NetStatusCallback callback) 獲取當(dāng)前默認(rèn)的數(shù)據(jù)網(wǎng)絡(luò)狀態(tài)變化。
setAppNet(NetHandle netHandle) 應(yīng)用綁定該數(shù)據(jù)網(wǎng)絡(luò)。
NetHandle openConnection(URL url, Proxy proxy) throws IOException 使用該網(wǎng)絡(luò)打開一個(gè) URL 鏈接。

開發(fā)步驟

  1. 調(diào)用 NetManager.getInstance(Context)獲取網(wǎng)絡(luò)管理的實(shí)例對(duì)象。

  1. 調(diào)用 NetManager.getDefaultNet()獲取默認(rèn)的數(shù)據(jù)網(wǎng)絡(luò)。

  1. 調(diào)用 NetHandle.openConnection()打開一個(gè) URL。

  1. 通過 URL 鏈接實(shí)例訪問網(wǎng)站。

   NetManager netManager = NetManager.getInstance(null);

    
   if (!netManager.hasDefaultNet()) {
       return;
   }
   NetHandle netHandle = netManager.getDefaultNet();

    
   // 可以獲取網(wǎng)絡(luò)狀態(tài)的變化
   NetStatusCallback callback = new NetStatusCallback() {
       // 重寫需要獲取的網(wǎng)絡(luò)狀態(tài)變化的override函數(shù)
   }
   netManager.addDefaultNetStatusCallback(callback);

    
   // 通過openConnection來(lái)獲取URLConnection
   try {
       HttpURLConnection connection = null;
       String urlString = "https://www.huawei.com/";
       URL url = new URL(urlString);

       
       URLConnection urlConnection = netHandle.openConnection(url,
                   java.net.Proxy.NO_PROXY);
       if (urlConnection instanceof HttpURLConnection) {
           connection = (HttpURLConnection) urlConnection;
       }
       connection.setRequestMethod("GET");
       connection.connect();
       // 之后可進(jìn)行url的其他操作
   } finally {
       connection.disconnect();
   }
以上內(nèi)容是否對(duì)您有幫助:
在線筆記
App下載
App下載

掃描二維碼

下載編程獅App

公眾號(hào)
微信公眾號(hào)

編程獅公眾號(hào)