入门monkeyrunner6-个人整理的monkeyrunner API

 1 #这是我在周末空暇时间整理的monkeyrunner API,想到哪里写到哪里的,如有不足请留言补充
 2 #主要给个demo,来列举api的,2014/12/27
 3 #作者:Mads Spiral QQ:79523822 如有疑问留言或者加qq,验证wyx
 4 #导入三个模块MonkeyRunner,MonkeyDevice,MonkeyImage
 5 from com.android.monkeyrunner import MonkeyRunner as mr
 6 from com.android.monkeyrunner import MonkeyDevice as md
 7 from com.android.monkeyrunner import MonkeyDevice as mi
 8 #获取接入的设备,前面的为等待时间(s),后面正则或者设备的全名,返回一个device对象
 9 #device=mr.WaitForConnection(1,'ss1z1')
10 device=mr.WaitForConnection()
11 #如果获取到了
12 if device:
13     #安装apk
14     device.installPackage('myproject/bin/MyApplication.apk')
15     #卸载,这应该是应用的包名
16     device.removePackage ('com.example.android.notepad')
17     #启动一个Acitvity,注意是启动一个活动,而不是一个应用,因为活动都是可以单独活动的
18     '''device.startActivity (component='com.android.htccontacts/
19     com.android.htccontacts.ContactsTabActivity')'''
20     #等待时间,秒
21     mr.sleep(3)
22     #唤醒屏幕
23     mr.wake()
24     #触摸屏幕,x,y坐标,触摸类型三种,UP,DOWN,DOWN_AND_UP
25     device.touch(10,20,DOWN_AND_UP)
26     #执行adb shell指令
27     device.shell("xxx")
28     #按键指令,前面为按键名称,如HOME键
29     '''
30     home键:KEYCODE_HOME
31     back键:KEYCODE_BACK
32     send键:KEYCODE_CALL
33     end键:KEYCODE_ENDCALL
34     上导航键:KEYCODE_DPAD_UP
35     下导航键:KEYCODE_DPAD_DOWN
36     左导航:KEYCODE_DPAD_LEFT
37     右导航键:KEYCODE_DPAD_RIGHT
38     ok键:KEYCODE_DPAD_CENTER
39     上音量键:KEYCODE_VOLUME_UP
40     下音量键:KEYCODE_VOLUME_DOWN
41     power键:KEYCODE_POWER
42     camera键:KEYCODE_CAMERA
43     menu键:KEYCODE_MENU
44     '''
45     device.press('KEYCODE_HOME','DOWN_AND_UP')
46     #输入一个字符串
47     device.type("你好")
48     #获取monkeyrunner的帮助
49     device.help()
50     #获取设备系统环境变量的名称
51     device.getProperty()
52     #重启设备
53     device.reboot()
54     #拖动,坐标开始到坐标结束,0.1为所用时间,1
55     device.drag((200,300),(100,300),0.1,1)
56 
57     #以下是一些有关图片操作的api
58     #获取截图
59     result1=device.takeSnapshot()
60     #将结果输出到文件,前面为路径,后面为图片类型,可写可不写
61     result1.writeToFile('D:/demo1.png','png')
62     #两种写法都可以
63     result1.writeToFile('D:\\demo1.png','png')
64     #将当前图像转换为一个特定的格式并将其作为字符串返回,然后你可以访问的iterable二进制字节。
65     result.convertToBytes()
66     '''getRawPixel (integer x, integer y),getRawPixelInt (integer x, integer y)
67     这两个还不知道怎么用,知道怎么用的朋友可以留言'''
68     #图片的对比,先获取第二张截图
69     result2=device.takeSnapshot()
70     result2.writeToFile('D:/demo2.png','png')
71     #判断图片相识度是否是为90%
72     if(result1.sameAs(result2,0.9)):
73         print "图片对比成功……\n"
74     else:
75         print "主页面图片对比失败……\n"
76 else77     print "device not found"

 

posted @ 2014-12-27 11:01  Mr.Dantes  阅读(431)  评论(1编辑  收藏  举报