Appium 解决中文输入问题

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了Appium 解决中文输入问题相关的知识,希望对你有一定的参考价值。

文章出处http://blog.csdn.net/meyoung01/article/details/43286265

 

Appium不支持中文,废了好大的劲都没搞定。 最后用了个土办法勉强解决,直接见下封装好的代码:

[java] view plain copy
/** 
 * 输入中文,并返回 
 * 
 * @param driver driver 
 * @param text   例如想输入”中国“则传值为"zhongguo" 
 * @param by     定位你想获取文本的控件 
 * @return 
 */  
public static String sendText(androidDriver driver, String text, By by) {  
    String returnText = null;  
    try {  
        Thread.sleep(2000);  
        Process pro = Runtime.getRuntime().exec("cmd /c adb shell input text " + text);  
        Thread.sleep(1500);  
        Runtime.getRuntime().exec("cmd /c adb shell input keyevent KEYCODE_SPACE");  
        Thread.sleep(2000);  
        returnText = driver.findElement(by).getText();  
    } catch (IOException e) {  
    } catch (InterruptedException e) {  
        e.printStackTrace();  
    }  
    return returnText;  
}  

注意调用这个方法时,键盘必须设置成默认系统键盘,并可以中文输入的键盘。
偶然发现其实已经支持了中文等字符的输入,
只要在capabilities中增加下列两项设置就可以:
capabilities.setCapability("unicodeKeyboard", "True");
capabilities.setCapability("resetKeyboard", "True");

 


注意调用这个方法时,键盘必须设置成默认系统键盘,并可以中文输入的键盘。

 

偶然发现其实已经支持了中文等字符的输入,

只要在capabilities中增加下列两项设置就可以:

capabilities.setCapability("unicodeKeyboard", "True");
capabilities.setCapability("resetKeyboard", "True");

 



以上是关于Appium 解决中文输入问题的主要内容,如果未能解决你的问题,请参考以下文章

appium自动化基础总结

appium--解决中文输入不了的问题

Appium 输入中文

APPium连接真机输入框中输入的内容与代码中不一致

python+Appium自动化:输入中文问题

iOS真机运行Appium遇到的问题