diff --git a/app/src/main/java/com/ouxuan/oxface/OXFaceOnlineActivity.java b/app/src/main/java/com/ouxuan/oxface/OXFaceOnlineActivity.java index f6433a0..76836f6 100644 --- a/app/src/main/java/com/ouxuan/oxface/OXFaceOnlineActivity.java +++ b/app/src/main/java/com/ouxuan/oxface/OXFaceOnlineActivity.java @@ -730,16 +730,40 @@ public class OXFaceOnlineActivity extends BaseActivity implements View.OnClickLi gateUnavailableDialog.setDialogListener(new GateUnavailableDialog.GateUnavailableDialogListener() { @Override public void onDialogShow() { - LogManager.logInfo(TAG, "门禁不可用弹窗显示,暂停摄像头和中断操作"); + // 增强日志:记录当前场景信息 + boolean isCurrentLeaveScene = false; + try { + isCurrentLeaveScene = com.ouxuan.oxface.utils.VenueSceneUtils.isLeaveScene(OXFaceOnlineActivity.this); + } catch (Exception e) { + LogManager.logError(TAG, "获取场景信息失败", e); + } + + String sceneInfo = isCurrentLeaveScene ? "离场场景" : "进场场景"; + LogManager.logInfo(TAG, "门禁不可用弹窗显示,暂停摄像头和中断操作 - " + sceneInfo); + // 暂停摄像头和中断其他操作 pauseCameraWithTimeout(); + + LogManager.logInfo(TAG, "摄像头暂停完成 - " + sceneInfo); } @Override public void onDialogHide() { - LogManager.logInfo(TAG, "门禁不可用弹窗隐藏,恢复摄像头和操作"); + // 增强日志:记录当前场景信息 + boolean isCurrentLeaveScene = false; + try { + isCurrentLeaveScene = com.ouxuan.oxface.utils.VenueSceneUtils.isLeaveScene(OXFaceOnlineActivity.this); + } catch (Exception e) { + LogManager.logError(TAG, "获取场景信息失败", e); + } + + String sceneInfo = isCurrentLeaveScene ? "离场场景" : "进场场景"; + LogManager.logInfo(TAG, "门禁不可用弹窗隐藏,恢复摄像头和操作 - " + sceneInfo); + // 恢复摄像头和操作 resumeCamera(); + + LogManager.logInfo(TAG, "摄像头恢复完成 - " + sceneInfo); } @Override diff --git a/app/src/main/java/com/ouxuan/oxface/abgate/GateUnavailableDialog.java b/app/src/main/java/com/ouxuan/oxface/abgate/GateUnavailableDialog.java index 81bab12..5fc3e5f 100644 --- a/app/src/main/java/com/ouxuan/oxface/abgate/GateUnavailableDialog.java +++ b/app/src/main/java/com/ouxuan/oxface/abgate/GateUnavailableDialog.java @@ -363,11 +363,19 @@ public class GateUnavailableDialog { if (dialog != null && !isShowing) { dialog.show(); isShowing = true; - LogManager.logInfo(TAG, "门禁不可用弹窗已显示"); + + // 增强日志:记录弹窗类型和场景信息 + String dialogType = isPeopleCountError ? "人数异常" : "门状态异常"; + String sceneType = isPeopleCountError ? (isLeaveScene ? "离场" : "进场") : "未知"; + LogManager.logInfo(TAG, "门禁不可用弹窗已显示 - 类型: " + dialogType + ", 场景: " + sceneType); // 通知监听器弹窗显示,需要暂停摄像头和中断操作 if (dialogListener != null) { + LogManager.logInfo(TAG, "准备通知监听器弹窗显示,触发摄像头暂停 - 场景: " + sceneType); dialogListener.onDialogShow(); + LogManager.logInfo(TAG, "已通知监听器弹窗显示完成 - 场景: " + sceneType); + } else { + LogManager.logWarning(TAG, "dialogListener为空,无法通知摄像头暂停"); } } } catch (Exception e) {