Monkeyrunner 写脚本的技巧(shell 命令,文件操作)
Android 4.0已经发布了,令我失望的一点是monkeyrunner工具本身没有大的提高,SDK看上去没有什么变化,但是之前曾将看到趋势,源码已经引入Ichampview和ease等新的模块,可惜源码还没有发布,不知道具体情况,况且现在的monkeyrunner也无法执行。感觉目前sdk列出的功能太少,在写脚本的时候,限制太多,好在monkeyrunner的脚本是python形式的,丰富的库文件可以弥补这一缺陷
1. adb命令的执行:os.system()
例如 adb root, adb push, adb pull, 可以用 os.system()来实现,例如os.system("adb push e:\\tmp\\email_eception.log /sdcard/")
2.目录操作: os.chdir(),os.getcwd()
os.chdir('e:\\tmp')
os.getcwd()
3. 创建以时间命名的文件夹 (很实用的一个方法)
首先获取时间:time.ctime(), 获得的时间格式如"Mon Oct 31 15:48:30 2011",因为window不支持文件夹名包括“:”,并且带有空格也会带来兼容性的问题,可以用字符串处理函数str.replace来将空格用“_”替换,将“:”删除,st2.replace(" ","_").replace(":","")
4. 判断文件是否存在
os.path.exists(), 返回True 或 False
os.path.exists("D:\\shellwork\\devtool\\setup\\music\\setup.bat")
from com.android.monkeyrunner import MonkeyRunner, MonkeyDevice, MonkeyImage
device = MonkeyRunner.waitForConnection()
#device.removePackage ('ApiDemos.apk')
device.removePackage ('com.example.android.notepad')
print ('卸载成功')
MonkeyRunner.sleep(15)
device.installPackage('ApiDemos.apk')
print ('安装成功')