在使用按键精灵手机助手的InputText函数的时候,经常是我们在调试的时候万无一失,可一到了用户那里,就各种奇葩的问题出现。
比如输入不了,或者和用户设备里面原有的输入法打架, 总之各种异常。
今天教大家一个方法,就是用下面的这个函数,利用KeyPress模拟按下键盘来完成输入
-------------------------------
--通过按键输入
--s: 要输入的文本,不能有中文
--t: [可选]每输入一个字符停顿的时间(毫秒)
function KeyPress_Input(s,t)
if s==nil then
print("【警告】KeyPress_Input:没有输入内容")
else
local str = s..""
local i = 0
local x = 0
--根据数据的长度截取key的前几个字符
for i = 0, #str, 1 do
if (string.sub(str, x, x))==" " then --如果有空格
LuaAuxLib.KeyPress("Space")--按下空格
else
LuaAuxLib.KeyPress((string.sub(str, x, x)))
end
delay(t)
x=x+1
end
end
end
QMPlugin.KeyPress_Input=KeyPress_Input
将上面的函数加到自己的LUA文件里面就可以调用啦。
调用方法如下
//输入密码
InputText ""//关闭第三方输入法
Delay 100 //等待第三方输入法消失
InputText ""//确保关闭第三方输入法
[LUAname].KeyPress_Input "CSDN is the best website in China"
InputText ""//短时间内不让第三方输入法重启,防止影响上面的输入
Delay 100
InputText ""//短时间内不让第三方输入法重启
Delay 1000
上面的[LUAname]要换成你存放函数的Lua文件的名称。
有点可惜的是这个函数并不能输入中文,不过用来自动输入账号和密码之类没有在中文的字符串绰绰有余。
root环境下,建议启用按键精灵输入法。