① 目的
写appium自动化的时候遇到一个问题:手机本来的输入法无法使用了,也就不能点击搜索键了。实际上很多场合需要在输入中文后点击搜索键进行搜索,于是我又搜了使用了自动切换输入法的方法,成功解决了这个问题.
② 环境
Python+appium+真机
③思路
目前网上常见的解决方法是 在desired_caps 参数中添加:
caps["unicodeKeyboard"] = "True" #使用unicodeKeyboard的编码方式来发送字符串
caps["resetKeyboard"] = "True" #将键盘给隐藏起来
这样在使用 el2.send_keys(i)方法时就可以输入中文了
但后果是,手机本来的输入法无法使用了,也就不能点击搜索键了;实际上很多场合需要在输入中文后点击搜索键进行搜索,于是我又搜了使用了自动切换输入法的方法,成功解决了这个问题.
④解决问题
# 切换输入法 获取手机输入法命令:adb -s 10.10.10.252:5555 shell ime list -s
self.driver.activate_ime_engine('com.sohu.inputmethod.sogou.meizu/com.sohu.inputmethod.sogou.SogouIME')
# 点击文本框
Elements.WebDriverWait_android_id_click(self,'com.leke.lekechat:id/et_bank_name')
# 两种搜索方法;84代表模拟按键搜索
# self.driver.press_keycode(84)
# 根据坐标点击'搜索'按钮
sleep(1)
TouchAction(self.driver).press(x=950, y=2004).release().perform()
白嫖不好,创作不易,各位的点赞就是创作的最大动力。 持续更新,未完待续……