这种方法通常用于不知道控件的情况下的输入。具体原理如下:
· 一、切换输入法
· 二、发送adb广播命令
d.set_fastinput_ime(True) # 切换为FastInputIME输入法
d.send_keys("你好123abcEFG") # adb广播输入
d.clear_text() # 清除输入框所有内容
d.set_fanstinput_ime(False) # 切换成正常的输入法
d.send_action("search") # 模拟输入法搜索
-
send_action()
说明 -
一、可以使用的参数:
go search send next done previous
-
二、什么时候使用?
有时候在EditText中输入完内容后,调用press("search")
或者press("enter")
发现并没有什么反应。这个时候就需要send_action()
函数了。 -
三、原理
这里用到了只有输入法采用的IME_ACTION_CODE
send_action()
先广播命令发送给输入法操作IME_ACTION_CODE
,由输入法完成后续跟EditText
的通信