From fd14ea7c8469aa59c1ef57ac1eedd790b8769a0d Mon Sep 17 00:00:00 2001 From: MTing Date: Fri, 19 Sep 2025 15:40:29 +0800 Subject: [PATCH] add showPadBarV6 & hidePadBarV6 --- .../java/com/ouxuan/oxface/device/DeviceUtils.java | 62 ++++++++++++++++++++++ 1 file changed, 62 insertions(+) diff --git a/app/src/main/java/com/ouxuan/oxface/device/DeviceUtils.java b/app/src/main/java/com/ouxuan/oxface/device/DeviceUtils.java index c13f177..4306dc7 100644 --- a/app/src/main/java/com/ouxuan/oxface/device/DeviceUtils.java +++ b/app/src/main/java/com/ouxuan/oxface/device/DeviceUtils.java @@ -4,6 +4,8 @@ import android.content.Context; import android.provider.Settings; import android.util.Log; +import com.ouxuan.oxface.utils.ShellCommandManager; + /** * 设备工具类 * 用于获取设备相关信息,包括设备ID、设备类型等 @@ -93,4 +95,64 @@ public class DeviceUtils { Log.i(TAG, "Android Version: " + getAndroidVersion()); Log.i(TAG, "=================="); } + + /** + * 隐藏状态栏和导航栏(适用于V6设备) + * @param context 上下文 + */ + public static void hidePadBarV6(Context context) { + try { + ShellCommandManager shellManager = ShellCommandManager.getInstance(context); + + // 隐藏导航栏 + String hideNavCommand = "settings put global hide_navigation 1"; + shellManager.executeCommand(hideNavCommand, true); + + // 发送隐藏导航栏广播 + String navBroadcast = "am broadcast -a android.intent.action.HIDE_NAVIGATION"; + shellManager.executeCommand(navBroadcast, false); + + // 隐藏状态栏 + String hideStatusCommand = "settings put global hide_statusbar 1"; + shellManager.executeCommand(hideStatusCommand, true); + + // 发送隐藏状态栏广播 + String statusBroadcast = "am broadcast -a android.intent.action.HIDE_STATUSBAR"; + shellManager.executeCommand(statusBroadcast, false); + + Log.i(TAG, "hidePadBarV6: 成功隐藏状态栏和导航栏"); + } catch (Exception e) { + Log.e(TAG, "hidePadBarV6: 隐藏状态栏和导航栏失败", e); + } + } + + /** + * 显示状态栏和导航栏(适用于V6设备) + * @param context 上下文 + */ + public static void showPadBarV6(Context context) { + try { + ShellCommandManager shellManager = ShellCommandManager.getInstance(context); + + // 显示导航栏 + String showNavCommand = "settings put global hide_navigation 0"; + shellManager.executeCommand(showNavCommand, true); + + // 发送隐藏导航栏广播 + String navBroadcast = "am broadcast -a android.intent.action.HIDE_NAVIGATION"; + shellManager.executeCommand(navBroadcast, false); + + // 显示状态栏 + String showStatusCommand = "settings put global hide_statusbar 0"; + shellManager.executeCommand(showStatusCommand, true); + + // 发送隐藏状态栏广播 + String statusBroadcast = "am broadcast -a android.intent.action.HIDE_STATUSBAR"; + shellManager.executeCommand(statusBroadcast, false); + + Log.i(TAG, "showPadBarV6: 成功显示状态栏和导航栏"); + } catch (Exception e) { + Log.e(TAG, "showPadBarV6: 显示状态栏和导航栏失败", e); + } + } } \ No newline at end of file