Appium

使用Appium在锁屏界面切换输入法

2019-12-24  本文已影响0人  Lemonlzy

问题背景

在使用appium进行自动化测试时,手机突然崩溃重启,然而重启需要使用键盘解锁,在使用appium自动化测试时已经将输入法切换至appium自带的输入法且默认隐藏,那么应该怎么调出输入法解锁手机呢?

笔者appium的caps参数设置如下:

caps = {
    "deviceName": "SM_G9600", 
    "automationName": "Appium", 
    "platformName": "Android",
    "platformVersion": "9.0", 
    "appPackage": "com.meizu.flyme.flymebbs",
    "appActivity": ".ui.LoadingActivity", 
    "noReset": True, 
    "unicodeKeyboard": True,
    "resetKeyboard": True, 
    }

重点在于最后两个参数:"unicodeKeyboard": True, "resetKeyboard": True。


Adb命令

unicodeKeyboard表示会使用Unicode输入法,而resetKeyboard表示输入法隐藏,且在测试通过后重置输入法到原有状态,笔者在测试过程中手机崩溃重启,所以重启手机后锁屏界面无法看到输入法,从而无法解锁,经查阅资料,解决方法如下:

在安装Android Studio时,想必大家都使用过adb命令,adb命令可以在windows cmd环境下检测设备的连接情况,从而使用uiautomatorviewer进行元素定位(同web的F12):

adb devices -l
adbDevices.png

也可以查询手机已安装的输入法从而进行指定输入法切换(无需解锁手机):

adb shell ime list -a
adbInput.png

如图,adb shell ime list -a命令会显示当前手机安装的所有输入法


解决方法

此时,笔者选择切换至图示第一条输入法,百度输入法,windows cmd环境下键入命令即可:

adb shell ime set com.baidu.input/.ImeService
adbInputChange.png

出现如上图所示,点击手机解锁框,可惊奇地发现手机的输入法切换至指定输入法了,笔者在担心了几十分钟后终于成功将手机解锁。

欢迎访问个人博客www.lemonlzy.cn

上一篇 下一篇

猜你喜欢

热点阅读