• 老李推荐: 第3章2节《MonkeyRunner源码剖析》脚本编写示例: MonkeyDevice API使用示例 3


    第四步:启动应用。

    代码3-2-4 增加日记-启动应用

     #Step 4: Start the NotePad apk and direct to activity com.example.android.notepad.NotesList

      device.startActivity(component="com.example.android.notepad/com.example.android.notepad.NotesList")

      

      MonkeyRunner.sleep(3)

    在确定目标应用已经在目标设备安装好后,下一步需要做的事情就是去把目标应用打开,并且定位到目标应用的NotesList这个入口Activity里面。就像每个代码都有一个入口main函数,安卓里面的每个应用也都会有一个入口Activity。至于一个Activity是否是入口是通过项目的AndroidManifest.xml指定的,具体示例请看下图来自NotePad项目的AndroidManifest.xml的描述:

    图3-2-3 AndroidManifest.xml指定入口Actvity 

    第五步:进入NoteEditor Activity

    代码3-2-5 增加日记-打开NoteEditor Activity

    #Step 5: Direct to the NoteEditor activity to add a note

    device.press('KEYCODE_MENU', MonkeyDevice.DOWN_AND_UP);

     

    MonkeyRunner.sleep(3)  #Wait a bit for the new page to get ready

     

    #Touch on the "Add note" menu entry by coordinate 

    device.touch(250,750,MonkeyDevice.DOWN_AND_UP)

     

    MonkeyRunner.sleep(3)  #Wait a bit for the new page to get ready

    当进入到入口Activity NotesList后,下一步需要做的事情就是去打开NoteEditor这个Activity,以便往后添加一个新的日记了。进入到该Activity的方式是先去点击系统菜单按键调出选项菜单,然后触控菜单项”Add note”就会进入到目标Activity了。这里23行的按键方法press的第一个参数代表按键键值,它的写法有多个选择,比如这里的系统菜单键可以写成”KEYCODE_MENU”,也可以写成“MENU”,甚至可以写成真正的键值”82”。今后我们在原理分析的时候都会看到为什么会是这样,这里就先卖个关子。然后我们看到press的第二个参数就是本小节前面描述的案件动作,这里是DOWN_AND_UP,代表一个普通的按下按键然后释放按键动作。打开菜单选项后,就需要模拟触控事件来对其中的”Add note”这个菜单项进行点击了,这里调用的是MonkeyDevice的touch触控方法,前面两个参数代表需要触碰的屏幕的绝对坐标。我们可以通过uiautomator viewer这个工具来找到该坐标值,在上一章中我们已经有过这方面的描述,这里我们就不累述了,大家不清楚怎么做的请返回上一章进行查看。当触碰该菜单项后应用就会打开NoteEditor这个Activity了。

    第六步:输入新建日记内容

    代码3-2-6 增加日记-输入日记内容

    #Step 6: Type in the text for the note

     device.type("MyFirstNote")

    通过上一章的学习,我们知道进入NoteEditor这个Activity之后,安卓的软键盘就会自动弹出来方便用户输入日记的内容。所以这一步要做的事情就是调用MonkeyDevice.type方法来把参数指定的日记内容,同时也是标题,写入到NoteEditor的日记控件里面,最终效果如下图所示。

    图3-2-4 增加日记内容 

  • 相关阅读:
    线程执行器(一)
    修改锁的公平性
    Spark学习视频整合
    使用读写锁实现同步数据访问
    使用锁实现同步
    使用工厂类创建线程
    线程的分组
    android手机状态解释,比方android.os.Build.VERSION.SDK
    Android-Dalvik指令集
    selenium使用Xpath定位之完整篇
  • 原文地址:https://www.cnblogs.com/poptest/p/5070402.html
Copyright © 2020-2023  润新知