HarmonyOS-鸿蒙app开发 —基于java网络管理_使用当前网络进行Socket数据传输

HarmonyOS-鸿蒙app开发 —基于java网络管理_使用当前网络进行Socket数据传输

场景介绍

应用使用当前的数据网络进行Socket数据传输。

接口说明

应用使用当前网络进行Socket数据传输,所使用的接口说明如下。

表1 网络管理功能的主要接口

类名

接口名

功能描述

NetHandle

getByName(String host)

解析主机名,获取其IP地址。

bindSocket(Socket socket)

绑定Socket到该数据网络。

bindSocket(DatagramSocket socket)

绑定DatagramSocket到该数据网络。

开发步骤

  1. 调用NetManager.getInstance(Context)获取网络管理的实例对象。
  2. 调用NetManager.getDefaultNet()获取默认的数据网络。
  3. 调用NetHandle.bindSocket()绑定网络。

使用socket发送数据。

NetManager netManager = NetManager.getInstance(context);

 

if (!netManager.hasDefaultNet()) {

return;

}

NetHandle netHandle = netManager.getDefaultNet();

 

// 通过Socket绑定来进行数据传输

DatagramSocket socket = null;

try {

InetAddress address = netHandle.getByName(www.EXAMPLE.com); // 开发者根据实际情况自定义EXAMPLE_URL

socket = new DatagramSocket();

netHandle.bindSocket(socket);

byte[] buffer = new byte[1024];

DatagramPacket request = new DatagramPacket(buffer, buffer.length, address, port); // port为连接UDP Socket时自行指定的端口

// buffer赋值

 

// 发送数据

socket.send(request);

} catch(IOException e) {

HiLog.error(TAG, “exception happened.”);

}finally {

if (socket != null) {

socket.close();

}

}

🚀 如未找到文章请搜索栏搜素 | Ctrl+D收藏本站 | 联系邮箱:15810050733@qq.com