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

 配置

复制代码
from appium import webdriver
desired_caps={}
desired_caps['platformName']='Android'
#模拟器
desired_caps['deviceName']='127.0.0.1:62001'
desired_caps['platforVersion']='5.1.1'

desired_caps['app']=r'F:\App\3.1.0.apk'
desired_caps['appPackage']='com.tal'
desired_caps['appActivity']='com.activity.SplashActivity'
复制代码
#不写为False(不保留用户的session,每次都有更新和跳过的提示)
#相当于每次都是重新安装
desired_caps['noReset']='True'
send_keys()  # 传入中文时需要在capability中配置如下内容
desired_caps['unicodeKeyboard']='True'
desired_caps['resetKeyboard']='True'

如果不加这两行,有中文的时候就输入不了

有时候加了这两行,输入中文时会出现乱码,是因为输入法的原因

使用appium做了输入操作之后,如果出现输入法无法唤起,可以在系统设置---语言和输入法---将当前的输入法替换为系统输入法或者其他输入法

 

Appium1.6.3开始支持识别Toast内容,主要是基于uiAutomator2,因此需要在Capability配置如下参数,要先安装,安装步骤查看appium2里的toast的内容

desired_caps['automationName']='uiautomator2'

driver=webdriver.Remote('http://localhost:4723/wd/hub',desired_caps)

启动appium服务

可以在cmd下输入appium来启动,就不用启动appium-desktop了

实战

复制代码
from appium import webdriver
desired_caps={}
desired_caps['platformName']='Android'
#模拟器
desired_caps['deviceName']='127.0.0.1:62001'
desired_caps['platforVersion']='5.1.1'
#真机
# desired_caps['deviceName']='ry'
# desired_caps['platforVersion']='7.0'
# desired_caps['udid']='KVXBB18224502326'

desired_caps['app']=r'F:\App\1.0.apk'
desired_caps['appPackage']='xxx'
desired_caps['appActivity']='xxx'
driver=webdriver.Remote('http://localhost:4723/wd/hub',desired_caps)
复制代码

/wd/hub规定这样写,因为源码中就这样写的,可以看Remote的源码,4723为appium-desktop的端口

报错解决

urllib.error.URLError: <urlopen error [WinError 10061] 由于目标计算机积极拒绝,无法连接。>
解决方案:服务未开启,开启appium

 

posted @   邹邹很busy。  阅读(961)  评论(0编辑  收藏  举报
编辑推荐:
· 记一次.NET内存居高不下排查解决与启示
· 探究高空视频全景AR技术的实现原理
· 理解Rust引用及其生命周期标识(上)
· 浏览器原生「磁吸」效果!Anchor Positioning 锚点定位神器解析
· 没有源码,如何修改代码逻辑?
阅读排行:
· 分享4款.NET开源、免费、实用的商城系统
· 全程不用写代码,我用AI程序员写了一个飞机大战
· MongoDB 8.0这个新功能碉堡了,比商业数据库还牛
· 白话解读 Dapr 1.15:你的「微服务管家」又秀新绝活了
· 上周热点回顾(2.24-3.2)
点击右上角即可分享
微信分享提示

目录导航