M8Test Help

快捷键

M8Test 实现了快捷键系统, 为了让用户可以更好的脱离桌面端使用, 只需要将手机和键盘连接就可以实现通过键盘快捷键操作M8Test app.

绑定命令

点击悬浮菜单中快捷键按钮

45

点击添加图标

46

点击快捷键输入框让其获取焦点

47

按下外接键盘的快捷键

48

填写快捷键触发时需要运行的命令以及描述信息后点击添加按钮

49

可以看到快捷键已经添加成功

50

按下刚刚添加的快捷键测试结果

自定义快捷键

如果想要自定义快捷键的话需要通过插件实现, 如果您还不会开发插件可以先查看 插件开发

  1. 创建 DefaultHotkey 对象

  1. 创建 DefaultHandler 对象

  1. 需要时通过 HotkeyUtils.register 注册快捷键

  1. 不需要时通过 HotkeyUtils.unregister 取消注册快捷键

package com.m8test.plugins.common.hotkey import android.view.KeyEvent import androidx.compose.foundation.layout.Column import androidx.compose.material3.Text import androidx.compose.material3.TextButton import androidx.compose.runtime.Composable import androidx.compose.runtime.DisposableEffect import androidx.compose.runtime.getValue import androidx.compose.runtime.mutableStateOf import androidx.compose.runtime.remember import androidx.compose.runtime.setValue import com.hjq.toast.Toaster import com.m8test.Result import com.m8test.hotkey.impl.DefaultHandler import com.m8test.hotkey.impl.DefaultHotkey import com.m8test.plugin.api.ApkPluginProvider import com.m8test.plugin.impl.AbstractComposablePluggableApkPlugin import com.m8test.util.HotkeyUtils /** * Description TODO * * @date 2025/01/17 12:29:32 * @author M8Test, [email protected], https://m8test.com */ class HotkeyPlugin(apkPluginProvider: ApkPluginProvider) : AbstractComposablePluggableApkPlugin(apkPluginProvider) { @Composable override fun Content() { Column { Text("press ctrl-c to show or hide button") var show by remember { mutableStateOf(false) } if (show) TextButton(onClick = { Toaster.show("Test Button") }) { Text("Test Button") } DisposableEffect(Unit) { val hotkey = DefaultHotkey( code = KeyEvent.KEYCODE_C, isCtrlPressed = true ) val handler = DefaultHandler( id = "TestHandler", description = "test handler", handler = { origin, environment -> show = !show Result.success() } ) HotkeyUtils.register(this@HotkeyPlugin, hotkey, handler) onDispose { HotkeyUtils.unregister(this@HotkeyPlugin, hotkey, handler) } } } } }
Last modified: 29 April 2025