feat: [java]-[mvn]-代码注释补充

This commit is contained in:
chandler
2025-03-12 18:12:39 +08:00
parent 295b83729e
commit 91a4126e88
3 changed files with 33 additions and 31 deletions
+1
View File
@@ -88,6 +88,7 @@
<artifactId>protobuf-java</artifactId>
<version>3.22.2</version>
</dependency>
<!-- JNA主要用于在 Java 程序中方便地调用本地(Native)代码,如 C/C++ 的动态链接库(DLL)或共享库(SO) -->
<dependency>
<groupId>net.java.dev.jna</groupId>
<artifactId>jna</artifactId>
@@ -75,6 +75,7 @@ public class WeChatSocketClient {
private BlockingQueue<WxMsg> msgQ;
private final String host;
private final Integer port;
public WeChatSocketClient(Integer port, String dllPath) {
@@ -120,7 +121,7 @@ public class WeChatSocketClient {
public Response sendCmd(Request req) {
try {
// 设置超时时间 20s
// 设置发送 20 秒超时
cmdSocket.setSendTimeout(20000);
ByteBuffer bb = ByteBuffer.wrap(req.toByteArray());
cmdSocket.send(bb);
@@ -138,6 +139,33 @@ public class WeChatSocketClient {
}
}
private void listenMsg(String url) {
try {
msgSocket = new Pair1Socket();
msgSocket.dial(url);
// 设置接收 5 秒超时
msgSocket.setReceiveTimeout(5000);
} catch (Exception e) {
log.error("创建消息 RPC 失败", e);
return;
}
ByteBuffer bb = ByteBuffer.allocate(BUFFER_SIZE);
while (isReceivingMsg) {
try {
long size = msgSocket.receive(bb, true);
WxMsg wxMsg = Response.parseFrom(Arrays.copyOfRange(bb.array(), 0, (int)size)).getWxmsg();
msgQ.put(wxMsg);
} catch (Exception e) {
// 多半是超时,忽略吧
}
}
try {
msgSocket.close();
} catch (Exception e) {
log.error("关闭连接失败", e);
}
}
/**
* 当前微信客户端是否登录微信号
*
@@ -217,33 +245,6 @@ public class WeChatSocketClient {
return false;
}
private void listenMsg(String url) {
try {
msgSocket = new Pair1Socket();
msgSocket.dial(url);
// 设置 2 秒超时
msgSocket.setReceiveTimeout(2000);
} catch (Exception e) {
log.error("创建消息 RPC 失败", e);
return;
}
ByteBuffer bb = ByteBuffer.allocate(BUFFER_SIZE);
while (isReceivingMsg) {
try {
long size = msgSocket.receive(bb, true);
WxMsg wxMsg = Response.parseFrom(Arrays.copyOfRange(bb.array(), 0, (int)size)).getWxmsg();
msgQ.put(wxMsg);
} catch (Exception e) {
// 多半是超时,忽略吧
}
}
try {
msgSocket.close();
} catch (Exception e) {
log.error("关闭连接失败", e);
}
}
public void enableRecvMsg(int qSize) {
if (isReceivingMsg) {
return;
@@ -94,9 +94,9 @@ message WxMsg
string content = 7; // 消息内容
string sender = 8; // 消息发送者
string sign = 9; // Sign
string thumb = 10; // 缩略图
string extra = 11; // 附加内容
string xml = 12; // 消息 xml
string thumb = 10; // 视频或图片消息的缩略图路径
string extra = 11; // 附加内容,视频或图片消息的路径
string xml = 12; // 消息 xml 部分
}
message TextMsg