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

2020-09-18 15:41 更新

場景介紹

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

接口說明

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

類名 接口名 功能描述
NetManager getInstance(Context context) 獲取網(wǎng)絡(luò)管理的實例對象。
hasDefaultNet() 查詢當前是否有默認可用的數(shù)據(jù)網(wǎng)絡(luò)。
getDefaultNet() 獲取當前默認的數(shù)據(jù)網(wǎng)絡(luò)句柄。
addDefaultNetStatusCallback(NetStatusCallback callback) 獲取當前默認的數(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ò)打開一個 URL 鏈接。

開發(fā)步驟

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

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

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

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

  1. NetManager netManager = NetManager.getInstance(null);
  2. if (!netManager.hasDefaultNet()) {
  3. return;
  4. }
  5. NetHandle netHandle = netManager.getDefaultNet();
  6. // 可以獲取網(wǎng)絡(luò)狀態(tài)的變化
  7. NetStatusCallback callback = new NetStatusCallback() {
  8. // 重寫需要獲取的網(wǎng)絡(luò)狀態(tài)變化的override函數(shù)
  9. }
  10. netManager.addDefaultNetStatusCallback(callback);
  11. // 通過openConnection來獲取URLConnection
  12. try {
  13. HttpURLConnection connection = null;
  14. String urlString = "https://www.huawei.com/";
  15. URL url = new URL(urlString);
  16. URLConnection urlConnection = netHandle.openConnection(url,
  17. java.net.Proxy.NO_PROXY);
  18. if (urlConnection instanceof HttpURLConnection) {
  19. connection = (HttpURLConnection) urlConnection;
  20. }
  21. connection.setRequestMethod("GET");
  22. connection.connect();
  23. // 之后可進行url的其他操作
  24. } finally {
  25. connection.disconnect();
  26. }
以上內(nèi)容是否對您有幫助:
在線筆記
App下載
App下載

掃描二維碼

下載編程獅App

公眾號
微信公眾號

編程獅公眾號