连接时,立马发缓存的最后一张图片到前端
parent
47b6c0d728
commit
76a0e32244
|
@ -23,8 +23,6 @@ public class AndroidScreenResponseThread extends ImageScreenResponse {
|
|||
|
||||
private AdbDevice adbDevice;
|
||||
|
||||
private byte[] lastData;
|
||||
|
||||
private final Logger logger = LoggerFactory.getLogger(AndroidScreenResponseThread.class);
|
||||
|
||||
public AndroidScreenResponseThread(AdbDevice adbDevice) {
|
||||
|
@ -107,7 +105,7 @@ public class AndroidScreenResponseThread extends ImageScreenResponse {
|
|||
}
|
||||
//录屏
|
||||
if (null != screenRecorder) {
|
||||
screenRecorder.addImgToVideo(screenPicContent);
|
||||
screenRecorder.addImgToVideo(this.lastData);
|
||||
}
|
||||
//有后端会话则给后端推送屏幕图片
|
||||
if (!CollectionUtils.isEmpty(webSessions)) {
|
||||
|
@ -120,7 +118,7 @@ public class AndroidScreenResponseThread extends ImageScreenResponse {
|
|||
sendDeviceStatus = false;
|
||||
}
|
||||
logger.info("设备【{}】发送图片到微服务:{}张",adbDevice.getSerial(),send++);
|
||||
SessionUtils.sendBinary(webSession, screenPicContent);
|
||||
SessionUtils.sendBinary(webSession, this.lastData);
|
||||
logger.info("设备【{}】发送图片到微服务完成:{}张",adbDevice.getSerial(),send);
|
||||
} else {
|
||||
logger.warn("推送到web端的session已经断开,sessionId:{}",webSession.getId());
|
||||
|
|
|
@ -32,6 +32,8 @@ public abstract class ImageScreenResponse extends Thread{
|
|||
|
||||
protected CatchParam catchParam;
|
||||
|
||||
protected byte[] lastData;
|
||||
|
||||
public void setCatchParam(CatchParam catchParam) {
|
||||
this.catchParam = catchParam;
|
||||
}
|
||||
|
@ -83,7 +85,17 @@ public abstract class ImageScreenResponse extends Thread{
|
|||
Map<String, Object> messageMap = new HashMap<>();
|
||||
messageMap.put(ResponseCmd.DeviceStatus.STATUS, ResponseCmd.DeviceStatus.CONNECTING);
|
||||
SessionUtils.sendMessageInitiative(session, ResponseCmd.DEVICE_STATUS, deviceId, messageMap, "设备掉线了");
|
||||
this.sendDeviceStatus = true;
|
||||
logger.info("发送设备【{}】最后一张图片到前端..............",deviceId);
|
||||
if (null != this.lastData) {
|
||||
Map<String, Object> result = new HashMap<>();
|
||||
result.put(ResponseCmd.DeviceStatus.STATUS, ResponseCmd.DeviceStatus.CONNECTED);
|
||||
SessionUtils.sendMessageInitiative(session, ResponseCmd.DEVICE_STATUS, deviceId, result, "设备已连接");
|
||||
SessionUtils.sendBinary(session, this.lastData);
|
||||
} else {
|
||||
logger.info("发送设备【{}】最后一张图片是空,获取到了再发..............",deviceId);
|
||||
this.sendDeviceStatus = true;
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
public void setSendDeviceStatus(boolean sendDeviceStatus) {
|
||||
|
|
Loading…
Reference in New Issue