M8Test Help

设置文本

使用无障碍服务

  • 权限: 无障碍服务

  • 组件: YumiMiyamotoAccessibility

  • 说明: 通过无障碍服务查找无障碍节点并执行设置文本的操作,返回值为true或false,分别表示操作成功与失败

import com.m8test.script.GlobalVariables.* // 获取可编辑元素,一般为输入框 val editableNode = _accessibility!!.createSelector().editable { it }.findOne(0, -1) // 为可编辑元素设置文本, 在实际开发中还需要判断 editableNode 是否为空 editableNode?.setText("M8Test")
// 获取可编辑元素,一般为输入框 def editableNode = $accessibility.createSelector().editable { it }.findOne(0, -1) // 为可编辑元素设置文本, 在实际开发中还需要判断 editableNode 是否为空 editableNode.setText("M8Test")
import com.m8test.accessibility.api.AccessibilityNode; import kotlin.jvm.functions.Function1; import static com.m8test.script.GlobalVariables.$accessibility; // 获取可编辑元素,一般为输入框 AccessibilityNode editableNode = $accessibility.createSelector().editable(new Function1() { @Override public Object invoke(Object o) { return o; } }).findOne(0, -1); // 为可编辑元素设置文本, 在实际开发中还需要判断 editableNode 是否为空 editableNode.setText("M8Test");
// 获取可编辑元素,一般为输入框 let editableNode = $accessibility.createSelector().editable(function (isEditable) { return isEditable; }).findOne(0, -1) // 为可编辑元素设置文本, 在实际开发中还需要判断 editableNode 是否为空 editableNode.setText("M8Test")
-- 获取可编辑元素,一般为输入框 local editableNode = _accessibility:createSelector():editable(function(editable) return editable end):findOne(0, -1) -- 为可编辑元素设置文本, 在实际开发中还需要判断 editableNode 是否为空 editableNode:setText("M8Test")
<?php /** @var m8test_java\com\m8test\accessibility\api\Accessibility $accessibility */ global $accessibility; // 获取可编辑元素,一般为输入框 $editableNode = $accessibility->createSelector()->editable(function ($editable){return $editable;})->findOne(0, -1); // 为可编辑元素设置文本, 在实际开发中还需要判断 editableNode 是否为空 $editableNode->setText("M8Test");
from m8test_java.com.m8test.script.GlobalVariables import _accessibility # 获取可编辑元素,一般为输入框 editableNode = _accessibility.createSelector().editable(lambda editable: editable).findOne(0, -1) # 为可编辑元素设置文本, 在实际开发中还需要判断 editableNode 是否为空 editableNode.setText("M8Test")
# encoding: utf-8 # 获取可编辑元素,一般为输入框 editableNode = $accessibility.createSelector.editable { |editable| editable }.findOne(0, -1) # 为可编辑元素设置文本, 在实际开发中还需要判断 editableNode 是否为空 editableNode.setText("M8Test")

使用物理屏幕镜像屏幕

  • 权限: Adb

  • 组件:

  • 说明: 通过adb shell广播实现中文输入,先切换到m8test输入法,输入框必须获得焦点后再发送广播,输入完成后恢复原输入法;如无法输入,请手动将系统输入法设为m8test。

import com.m8test.script.GlobalVariables._displays // 创建或者获取物理屏幕的镜像屏幕 val display = _displays.getMain() // 获取虚拟屏幕的控制器, 可以对虚拟屏幕实现自动化操作 val controller = display.getController() // 在输入框内输入文本,前提是输入框已经获取焦点 controller.inputText("M8Test Kotlin中文输入测试")
// 创建或者获取物理屏幕的镜像屏幕 def display = $displays.getMain() // 获取虚拟屏幕的控制器, 可以对虚拟屏幕实现自动化操作 def controller = display.getController() // 在输入框内输入文本,前提是输入框已经获取焦点 controller.inputText("M8Test Groovy中文输入测试")
import com.m8test.script.core.api.display.Display; import com.m8test.script.core.api.display.control.Controller; import static com.m8test.script.GlobalVariables.$displays; // 创建或者获取物理屏幕的镜像屏幕 Display display = $displays.getMain(); // 获取虚拟屏幕的控制器, 可以对虚拟屏幕实现自动化操作 Controller controller = display.getController(); // 在输入框内输入文本,前提是输入框已经获取焦点 controller.inputText("M8Test Java中文输入测试");
// 创建或者获取物理屏幕的镜像屏幕 let display = $displays.getMain() // 获取虚拟屏幕的控制器, 可以对虚拟屏幕实现自动化操作 let controller = display.getController() // 在输入框内输入文本,前提是输入框已经获取焦点 controller.inputText("M8Test Javascript中文输入测试")
-- 创建或者获取物理屏幕的镜像屏幕 local display = _displays:getMain() -- 获取虚拟屏幕的控制器, 可以对虚拟屏幕实现自动化操作 local controller = display:getController() -- 在输入框内输入文本,前提是输入框已经获取焦点 controller:inputText("M8Test Lua中文输入测试")
<?php /** @var m8test_java\com\m8test\script\core\api\display\Displays $displays */ global $displays; // 创建或者获取物理屏幕的镜像屏幕 $display = $displays->getMain(); // 获取虚拟屏幕的控制器, 可以对虚拟屏幕实现自动化操作 $controller = $display->getController(); // 在输入框内输入文本,前提是输入框已经获取焦点 $controller->inputText(javaString("M8Test Php中文输入测试"));
from m8test_java.com.m8test.script.GlobalVariables import _displays # 创建或者获取物理屏幕的镜像屏幕 display = _displays.getMain() # 获取虚拟屏幕的控制器, 可以对虚拟屏幕实现自动化操作 controller = display.getController() # 在输入框内输入文本,前提是输入框已经获取焦点 controller.inputText("M8Test Python中文输入测试")
# encoding: utf-8 # 创建或者获取物理屏幕的镜像屏幕 display = $displays.getMain() # 获取虚拟屏幕的控制器, 可以对虚拟屏幕实现自动化操作 controller = display.getController() # 在输入框内输入文本,前提是输入框已经获取焦点 controller.inputText("M8Test Ruby中文输入测试")
Last modified: 08 August 2025