Android的monkeyrunner 提供了一组API可以用来控制Android设备或模拟器,使用monkeyrunner,你可以编写Python 程序来安装Android应用或是测试包,运行应用或测试,发送按键消息,并可以截屏,然后保存在计算机中。monkeyrunner 主要目的是用来在应用程序或框架层次来测试应用程序或运行单元测试包,但你也可以用作其它目的。
monkeyrunner API 主要通过下面三个包:
- MonkeyRunner: 主要提供了monkeyrunner 应用的辅助方法以及,用来链接设备或是模拟器的方法,并提供UI支持等。
- MonkeyDevice: 代表一个设备或是模拟器,提供安装,卸载应用的方法,启动一个Activity,发送按键或是Touch 事件等。
- MonkeyImage: 代表一个截屏图像,可以截取不同格式的图像,比较两个MonkeyImage图像,保存图像等
from com.android.monkeyrunner import MonkeyRunner, MonkeyDevice, MonkeyImage
device = MonkeyRunner.waitForConnection()
device.installPackage('./apps/SdkController/bin/SdkControllerApp.apk')
device.startActivity(component='com.android.SdkControllerApp/com.android.SdkControllerApp')
MonkeyRunner.sleep(3.0)
device.type('asd')
device.press('KEYCODE_ENTER')
MonkeyRunner.sleep(3.0)
result = device.takeSnapshot()
result.writeToFile('d:\\result1.png','png')