Python之使⽤adbshell命令启动应⽤的⽅法详解
⼀直有⼀个⼼愿希望可以⽤Python做安卓⾃动化功能测试,在⼀步步摸索中,之前是⽤monkeyrunner,但是发现对于控件ID 的使⽤⾮常具有局限性,尤其是ID的内容不便于区分
具有重复性时,后⾯⼜发现Uiautomator可以对resorceId、text、packageName等元素进⾏定位,也到了xiaochong这位⼤神关于uiautomator的封装包,链接如下:
做为⼀个⼩⽩,这⼀切都需要摸索,在克服了安装uiautormator封装包的问题后,⼜卡在启动应⽤这个问题上,之前使⽤monkeyrunner时启动应⽤使⽤的是如下代码:
from keyrunner import MonkeyRunner,MonkeyDevice,MonkeyImage
package = 'com.android.settings'
activity = '/.Settings'
runcomponent = package + activity
device.startActivity(component = runcomponent)
也是我⽆知,尝试了很久,终于到了adb shell am start 包名/Activity启动,以设置应⽤为例,代码如下
import ospython安装教程非常详细
os.system(“adb shell am start -n com.android.settings/.Settings”)
运⾏结果如下:
Starting: Intent { cmp=com.android.settings/.Settings }
成功进⼊设置应⽤界⾯,接下来可以尝试其它你想做的操作了
当然这只是解决了我在PC上运⾏的问题,在查问题时有留意到uiautomator最终是要编译成jar⽂件是要放到android⾥⾯的虚拟环境去执⾏命令,但是android内部并没有adb
环境,所以adb命令会失败,必须得到能够在android也可以运⾏的⽅法
以此做个备忘,希望⾃⼰可以在这条路上⾛得越来越远。
以上这篇Python之使⽤adb shell命令启动应⽤的⽅法详解就是⼩编分享给⼤家的全部内容了,希望能给
⼤家⼀个参考,也希望⼤家多多⽀持。
版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系QQ:729038198,我们将在24小时内删除。
发表评论