From 3a8c72b3d390b20cc537081d1f960491be84aea3 Mon Sep 17 00:00:00 2001 From: MTing Date: Fri, 12 Sep 2025 14:26:41 +0800 Subject: [PATCH] add gpio debug --- .../main/java/com/ouxuan/oxface/DebugActivity.java | 93 ++++++++++++++++++++++ app/src/main/res/layout/activity_debug.xml | 37 +++++++++ 2 files changed, 130 insertions(+) diff --git a/app/src/main/java/com/ouxuan/oxface/DebugActivity.java b/app/src/main/java/com/ouxuan/oxface/DebugActivity.java index 2d44e00..41d99f4 100644 --- a/app/src/main/java/com/ouxuan/oxface/DebugActivity.java +++ b/app/src/main/java/com/ouxuan/oxface/DebugActivity.java @@ -23,6 +23,7 @@ import com.baidu.idl.face.main.finance.listener.SdkInitListener; import com.baidu.idl.face.main.finance.manager.FaceSDKManager; import com.ouxuan.oxface.device.DeviceUtils; import com.ouxuan.oxface.device.HuaWeiScanManager; +import com.ouxuan.oxface.device.RelayController; import com.ouxuan.oxface.network.utils.NetworkUtils; import com.ouxuan.oxface.utils.AutoStartManager; import com.ouxuan.oxface.utils.BootSimulationHelper; @@ -39,6 +40,7 @@ public class DebugActivity extends Activity { private TextView tvLogOutput; private ScrollView logScrollView; private AutoStartManager autoStartManager; + private RelayController relayController; @Override protected void onCreate(Bundle savedInstanceState) { @@ -60,6 +62,7 @@ public class DebugActivity extends Activity { private void initManagers() { autoStartManager = AutoStartManager.getInstance(this); + relayController = RelayController.getInstance(); } private void setupClickListeners() { @@ -208,6 +211,96 @@ public class DebugActivity extends Activity { testHuaWeiScan(); } }); + + // 继电器开启测试按钮 + Button btnTestRelayOpen = findViewById(R.id.btnTestRelayOpen); + btnTestRelayOpen.setOnClickListener(new View.OnClickListener() { + @Override + public void onClick(View v) { + testRelayOpen(); + } + }); + + // 继电器关闭测试按钮 + Button btnTestRelayClose = findViewById(R.id.btnTestRelayClose); + btnTestRelayClose.setOnClickListener(new View.OnClickListener() { + @Override + public void onClick(View v) { + testRelayClose(); + } + }); + + // 继电器自动关闭测试按钮 + Button btnTestRelayAutoClose = findViewById(R.id.btnTestRelayAutoClose); + btnTestRelayAutoClose.setOnClickListener(new View.OnClickListener() { + @Override + public void onClick(View v) { + testRelayAutoClose(); + } + }); + } + + /** + * 测试继电器开启 + */ + private void testRelayOpen() { + logMessage("触发继电器开启测试..."); + try { + boolean success = relayController.openRelay(); + if (success) { + logMessage("继电器开启成功"); + showToast("继电器开启成功"); + } else { + logMessage("继电器开启失败"); + showToast("继电器开启失败"); + } + } catch (Exception e) { + Log.e(TAG, "继电器开启测试失败", e); + logMessage("继电器开启测试失败: " + e.getMessage()); + showToast("继电器开启测试失败"); + } + } + + /** + * 测试继电器关闭 + */ + private void testRelayClose() { + logMessage("触发继电器关闭测试..."); + try { + boolean success = relayController.closeRelay(); + if (success) { + logMessage("继电器关闭成功"); + showToast("继电器关闭成功"); + } else { + logMessage("继电器关闭失败"); + showToast("继电器关闭失败"); + } + } catch (Exception e) { + Log.e(TAG, "继电器关闭测试失败", e); + logMessage("继电器关闭测试失败: " + e.getMessage()); + showToast("继电器关闭测试失败"); + } + } + + /** + * 测试继电器自动关闭功能 + */ + private void testRelayAutoClose() { + logMessage("触发继电器自动关闭测试..."); + try { + boolean success = relayController.openRelayWithAutoClose(); + if (success) { + logMessage("继电器已开启,将在3秒后自动关闭"); + showToast("继电器已开启,将在3秒后自动关闭"); + } else { + logMessage("继电器自动关闭测试失败"); + showToast("继电器自动关闭测试失败"); + } + } catch (Exception e) { + Log.e(TAG, "继电器自动关闭测试失败", e); + logMessage("继电器自动关闭测试失败: " + e.getMessage()); + showToast("继电器自动关闭测试失败"); + } } /** diff --git a/app/src/main/res/layout/activity_debug.xml b/app/src/main/res/layout/activity_debug.xml index 47198a8..21cc26f 100644 --- a/app/src/main/res/layout/activity_debug.xml +++ b/app/src/main/res/layout/activity_debug.xml @@ -248,6 +248,43 @@ + + + +