From 2e2d9c3e2fac80c3f43f55de404247ad2f0d4954 Mon Sep 17 00:00:00 2001 From: BlueMatthew Date: Thu, 11 Jan 2024 19:54:10 +0800 Subject: [PATCH] =?UTF-8?q?=E5=A2=9E=E5=8A=A0=E5=A4=9C=E6=99=9A=E6=A8=A1?= =?UTF-8?q?=E5=BC=8F=E7=9A=84=E8=AE=BE=E7=BD=AE?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- app/src/main/cpp/GPIOControl.h | 5 ++++ .../com/xypower/mpapp/ChannelActivity.java | 23 +++++++++++++++++-- .../java/com/xypower/mpapp/MainActivity.java | 7 ++++++ app/src/main/res/layout/activity_channel.xml | 10 ++++++++ .../java/com/xypower/common/CameraUtils.java | 12 ++++++---- 5 files changed, 50 insertions(+), 7 deletions(-) diff --git a/app/src/main/cpp/GPIOControl.h b/app/src/main/cpp/GPIOControl.h index 0d1f3fb2..34311d41 100644 --- a/app/src/main/cpp/GPIOControl.h +++ b/app/src/main/cpp/GPIOControl.h @@ -52,6 +52,11 @@ public: setInt(CMD_SET_OTG_STATE, on ? 1 : 0); } + static bool getOtgState() + { + return getInt(CMD_SET_OTG_STATE) != 0; + } + static void setCam3V3Enable(bool enabled) { setInt(CMD_SET_CAM_3V3_EN_STATE, enabled ? 1 : 0); diff --git a/app/src/main/java/com/xypower/mpapp/ChannelActivity.java b/app/src/main/java/com/xypower/mpapp/ChannelActivity.java index 3b0defc3..517a9f01 100644 --- a/app/src/main/java/com/xypower/mpapp/ChannelActivity.java +++ b/app/src/main/java/com/xypower/mpapp/ChannelActivity.java @@ -69,8 +69,25 @@ public class ChannelActivity extends AppCompatActivity { saveChannelParams(channel); } }); - } + binding.btnNightMode.setOnClickListener(new View.OnClickListener() { + @Override + public void onClick(View v) { + if (binding.btnNightMode.isChecked() && binding.btnHdrMode.isChecked()) { + binding.btnHdrMode.setChecked(false); + } + } + }); + + binding.btnHdrMode.setOnClickListener(new View.OnClickListener() { + @Override + public void onClick(View v) { + if (binding.btnHdrMode.isChecked() && binding.btnNightMode.isChecked()) { + binding.btnNightMode.setChecked(false); + } + } + }); + } private View.OnFocusChangeListener onFocusChangeListener = new View.OnFocusChangeListener() { @Override @@ -129,7 +146,8 @@ public class ChannelActivity extends AppCompatActivity { binding.btnUsbCamera.setChecked(jsonObject.optInt("usbCamera", 0) == 1); binding.btnAutoExplosure.setChecked(jsonObject.optInt("autoExposure", 1) == 1); binding.btnAutoFocus.setChecked(jsonObject.optInt("autoFocus", 1) == 1); - binding.btnHdrMode.setChecked(jsonObject.optInt("hdr", 1) == 1); + binding.btnHdrMode.setChecked(jsonObject.optInt("hdr", 0) == 1); + binding.btnNightMode.setChecked(jsonObject.optInt("nightMode", 0) == 1); binding.exposuretime.setText(Integer.toString(jsonObject.optInt("exposureTime", 0))); binding.sensitivity.setText(Integer.toString(jsonObject.optInt("sensibility", 0))); binding.orientations.setSelection(jsonObject.optInt("orientation", 0)); @@ -191,6 +209,7 @@ public class ChannelActivity extends AppCompatActivity { jsonObject.put("autoExposure", binding.btnAutoExplosure.isChecked() ? 1 : 0); jsonObject.put("autoFocus", binding.btnAutoFocus.isChecked() ? 1 : 0); jsonObject.put("hdrMode", binding.btnHdrMode.isChecked() ? 1 : 0); + jsonObject.put("nightMode", binding.btnNightMode.isChecked() ? 1 : 0); jsonObject.put("exposureTime", Integer.parseInt(binding.exposuretime.getText().toString())); jsonObject.put("sensibility", Integer.parseInt(binding.sensitivity.getText().toString())); jsonObject.put("orientation", binding.orientations.getSelectedItemPosition()); diff --git a/app/src/main/java/com/xypower/mpapp/MainActivity.java b/app/src/main/java/com/xypower/mpapp/MainActivity.java index 5a926f9d..63dfd0e3 100644 --- a/app/src/main/java/com/xypower/mpapp/MainActivity.java +++ b/app/src/main/java/com/xypower/mpapp/MainActivity.java @@ -509,6 +509,13 @@ public class MainActivity extends AppCompatActivity { @Override public void onClick(View view) { SysApi.setOtgState(true); + + try { + Thread.sleep(100); + } catch (Exception e) { + + } + SysApi.setOtgState(true); SysApi.setCam3V3Enable(true); String cameraInfo = CameraUtils.getAllCameraInfo(view.getContext()); diff --git a/app/src/main/res/layout/activity_channel.xml b/app/src/main/res/layout/activity_channel.xml index b4e8882e..b0c606f2 100644 --- a/app/src/main/res/layout/activity_channel.xml +++ b/app/src/main/res/layout/activity_channel.xml @@ -116,6 +116,16 @@ app:layout_constraintStart_toEndOf="@+id/btnAutoFocus" app:layout_constraintTop_toBottomOf="@+id/resolutionCX" /> + +