appium+python自动化61-中文输入乱码问题解决

时间:2022-09-25 20:41:52

前言

在夜神模拟器上输入中文,发现是乱码,将unicodeKeyboard和resetKeyboard参数设置为True了,发现还是没法解决。

打开手机设置语言和输入法,发现找不到Appium Android Input Manager for Unicode输入法导致的

相关环境:

  • appium1.8.1
  • python3.6
  • 手机使用夜神模拟器

遇到问题

加上unicodeKeyboard和resetKeyboard参数后,运行如下代码

# coding=utf-8
from appium import webdriver
import time
desired_caps = {
"platformName": "Android",
"deviceName": "127.0.0.1:62001",
"platformVersion": "4.4.2",
"appPackage": "com.taobao.taobao",
"noReset": True,
"appActivity": "com.taobao.tao.welcome.Welcome",
'unicodeKeyboard': True, # 使用Unicode编码方式发送字符串
'resetKeyboard': True # 隐藏键盘
}
driver = webdriver.Remote('http://127.0.0.1:4723/wd/hub', desired_caps)
driver.find_element_by_id("com.taobao.taobao:id/home_searchedit").click() time.sleep(5) driver.find_element_by_id("com.taobao.taobao:id/searchEdit").click()
driver.find_element_by_id("com.taobao.taobao:id/searchEdit").send_keys("上海-悠悠")

运行后发现中文输入还是乱码:

appium+python自动化61-中文输入乱码问题解决

解决办法

首先打开手机设置-语言与输入框,看是不是默认Appium Android Input Manager for Unicode

appium+python自动化61-中文输入乱码问题解决

要是找不到这个输入法先从node_modules\appium\node_modules\appium-android-ime\bin路径下找到UnicodeIME-debug.apk文件,复制到桌面上,然后adb安装到手机上

(找不到安装包的去QQ群:330467341,群文件下载)

adb install C:\Users\dell\Desktop\UnicodeIME-debug.apk

安装好之后,去手机设置-语言与输入框把Appium Android Input Manager for Unicode输入法设置为默认就可以了

卸载

如果安装的时候报错,可能之前已经装过,但是安装的有问题,可以先卸载掉之前的UnicodeIME-debug.apk,这个包的包名是io.appium.android.ime

adb uninstall io.appium.android.ime

appium+python自动化61-中文输入乱码问题解决

总结

输入法设置好后,运行上面的代码就可以正常的输入中文了,主要保证以下2点

appium+python自动化61-中文输入乱码问题解决

1.将unicodeKeyboard和resetKeyboard参数设置为True

2.手机设置设置-语言与输入框,Appium Android Input Manager for Unicode设置默认

要是以上方法还是没法解决,估计个别手机冥顽不灵,基本上可以砸核桃了,要是舍不得砸,可以参考这篇【appium+python自动化39-adb shell输入中文(ADBKeyBoard)】

上海-悠悠 QQ交流群:330467341