HarmonyOS 使用socket创建UDP连接,bind指定address时报错 2301099 'Address not available'.

设备连接物联网设备热点后,使用socket创建UDP连接,bind指定address时报错 2301099 'Address not available'。

出错代码:

let udp: socket.UDPSocket = socket.constructUDPSocketInstance();
try {
  await udp.bind({ address: '192.168.xx.xx', port: xxxx }) // 运行代码为真实IP及端口
} catch (e) {
  console.error('bind error:', e);
}

操作步骤:

1、手机连接物联网设备热点

2、代码内创建UDPSocket,bind指定ip及端口

HarmonyOS
2024-12-19 16:57:59
浏览
收藏 0
回答 1
待解决
回答 1
按赞同
/
按时间
Heiang

socket的bind函数入参地址是本机IP:bind(address: NetAddress, callback: AsyncCallback<void>): void绑定IP地址和端口,端口可以指定或由系统随机分配。使用callback方式作为异步方法。

本机获取IP参考:

let localAddress = resolveIP(wifi.getIpInfo().ipAddress);

export function resolveIP(ip: number): string {
  if (ip < 0 || ip > 0xFFFFFFFF) {
    throw ('The number is not normal!');
  }
  return (ip >>> 24) + '.' + (ip >> 16 & 0xFF) + '.' + (ip >> 8 & 0xFF) + '.' + (ip & 0xFF);
}

export function checkIp(ip: string): boolean {
  let ipRegex = /^((2[0-4]\d|25[0-5]|[01]?\d\d?)\.){3}(2[0-4]\d|25[0-5]|[01]?\d\d?)$/;
  return ipRegex.test(ip);
}
分享
微博
QQ
微信
回复
2024-12-19 19:18:45
相关问题
HarmonyOS bind提示Address not available
266浏览 • 1回复 待解决
HarmonyOS UDP socket bind失败
461浏览 • 1回复 待解决
HarmonyOS 使用flutter创建packages时报错
485浏览 • 1回复 待解决
HarmonyOS socket tcp连接报错
513浏览 • 1回复 待解决
Socket连接报错,错误码88
2152浏览 • 1回复 待解决
通过USB连接打印机打印小票时报错
793浏览 • 1回复 待解决
ohos.net.socket (Socket连接)链接不上
6167浏览 • 1回复 待解决
HarmonyOS socket连接失败code: 103
323浏览 • 1回复 待解决
socket连接NetAddress获取问题
683浏览 • 1回复 待解决
使用ohpm发布tgz文件时报错
1360浏览 • 1回复 待解决
使用featureAbility.getContext()时报错如下
1383浏览 • 1回复 待解决
网络地址建立socket连接
1113浏览 • 1回复 待解决
native创建socket会失败
1979浏览 • 1回复 待解决
HarmonyOS 运行HmosWorld时报错
713浏览 • 1回复 待解决
openharmony 基于arkts的socket连接问题
4580浏览 • 1回复 待解决
HarmonyOS 函数使用bind提示警告
683浏览 • 1回复 待解决