一、获取packageName与startActivity
前置条件:已成功安装配置SL4A并连接PC调试(参见:monkeyrunner学习总结一:环境搭建:http://www.amsoft.cn/post-289.html

有源码的话,可以从源文件的AndroidManifest.xml中获得。

没源码的话,按以下操作执行:

1、在cmd中输入命令:"python" 回车,继续输入以下命令:

2、获取packageName:

1 import android

2 import pprint

3 droid=android.Android()

4 pacs=droid.getRunningPackages()

5 pprint.pprint(pacs.result)

获取packageName列表,找出与Apk对应的packageName即可。

3、获取startActivity:

1 import android

2 import pprint

3 droid=android.Android()

4 apps=droid.getLaunchableApplications()

5 pprint.pprint(apps.result)

获取到startActivity列表,找出与之对应的即可。

补:另一获取packageName与startActivity的方法
使用aapt   //aapt是sdk自带的一个工具,在sdk\builds-tools\目录下
1.以ES文件浏览器为例,命令行中切换到aapt.exe目录执行:aapt dump badging E:\apk\es3.apk
2.运行后的结果中以下两行分别是应用包名package和入口activity名称
package: name=’com.estrongs.android.pop’
launchable-activity: name=’com.estrongs.android.pop.view.FileExplorerActivity’
注:在android sdk目录搜索可以找到aapt.exe,如果没有可以下载apktool。

二、monkeyrunner与模拟器的连接

1、用Elipse打开andorid的模拟器或者在cmd中定位到android SDK的路径下的tools目录,用andorid命令打开模拟器,如下:

D:\Software\Android SDK2.3\android-sdk-windows\tools>emulator -avd AVD2.3.3

“AVD2.3.3”是实际模拟器的名字

2、再打开一个cmd窗口(前一个不要关闭),定位到android SDK的路径下的tools目录,输入命令"monkeyrunner",回车,进入shell命令交互模式

3、引入monkeyrunner所要使用的模块:

from com.android.monkeyrunner import MonkeyRunner, MonkeyDevice  回车

4、monkeyrunner与模拟器连接:

device = MonkeyRunner.waitForConnection()

三、monkeyrunner与测试机的连接

1、获取连接设备的名称

在cmd中运行adb devices获取连接设备的名称:

C:\Documents and Settings\Administrator>adb devices

* daemon not running. starting it now on port 5037 *

* daemon started successfully *

List of devices attached

emulator-5554 device

HT23LV804061 device

2、启动Monkeyrunner

在cmd中定位到android SDK的路径下的tools目录,输入命令:"monkeyrunner" 回车

3、引入monkeyrunner需要的两个模块

from com.android.monkeyrunner import MonkeyRunner, MonkeyDevice 回车

4、把设备和monkeyrunner绑定,绑定后在monkeyrunner的操作等同于在设备的操作

device=MonkeyRunner.waitForConnection(5,'手机名') #手机名为‘HT23LV804061’

四、安装apk
1、启动monkeyrunner
在cmd中定位到android SDK的路径下的tools目录,输入命令:"monkeyrunner" 回车
2、安装apk
device.installPackage(“xxx.apk”)
 
五、启动apk
1、启动monkeyrunner
在cmd中定位到android SDK的路径下的tools目录,输入命令:"monkeyrunner" 回车
2、启动apk
device.startActivity(packageName/startActivity)
 
六、其它
cmd下python的退出:exit();monkeyrunner的退出:ctrl+d

【转】monkeyrunner学习总结二:连接、安装、启动的更多相关文章

  1. Docker学习总结(二)--Docker安装与启动

    注:笔者使用的环境为 CentOS 7.6,如果版本不一致可能会出现一些错误. 安装 Docker 1)将 yum 包更新到最新版本 sudo yum update 2) 安装需要的软件包 sudo ...

  2. J2EE SSH学习(二)安装Eclipse插件和第一个Eclipse项目

    (一)安装Eclipse插件 Eclipse有很多功能很强大的插件,我现在作为一个菜鸟只知道插件的功能通常都很牛叉实用或者很有趣,那么该怎么安装Eclipse插件呢? 我使用的是Eclipse 4.3 ...

  3. Kafka学习之二 Kafka安装和使用

    部署环境Linux(Centos 6.5),JDK 1.8.0,zookeeper-3.4.12,kafka_2.11-2.0.0. 1. 单机环境     官方建议使用JDK 1.8版本,因此本文使 ...

  4. Snmp学习总结(二)——WinXP安装和配置SNMP

    一.安装SNMP 今天讲解一下在XP下安装SNMP协议,安装步骤如下:

  5. whistle学习(二)之启动、停止、重启、更新whistle等命令

    新版本的whistle支持三种等价命令whistle,w2,wproxy 启动whistle w2 start 启动时指定端口 w2 start -p (// 不设置端口默认使用8899) 默认端口为 ...

  6. qt学习(二):启动画面

    打开一个软件,都会有启动画面. 现在去体验如何实现启动画面:输入图,装载,延时,下一张主部件图 在main.Cpp中实现启动时桌面图片. #include <QtGui/QApplication ...

  7. 搭建Linux-java web运行环境之二:安装mysql

    环境 OS:Red Hat Enterprise Linux Server release 7.3 (Maipo) JDK:jdk-7u80-linux-x64.tar.gz Tomcat:apach ...

  8. 学习ActiveMQ(一):安装与启动

    一:简单介绍 AvtiveMQ是Apaceh所研发的一个开源消息中间件,用来在服务与服务之间进行异步通信,是基于JMS规范的.activemq包含发送者(sender).消息(message).队列( ...

  9. MongoDB之二基础入门(安装启动)

    mongodb中有三元素:数据库,集合,文档,其中“集合” 就是对应关系数据库中的“表”,“文档”对应“行”. 一. 下载 上MongoDB官网 ,我们发现有32bit和64bit,这个就要看你系统了 ...

随机推荐

  1. ruby 资料整理

    http://blog.csdn.net/maingalaxy/article/details/46013393 http://blog.csdn.net/dzl84394/article/detai ...

  2. NOIP2006 作业调度方案

    1.             作业调度方案 (jsp.pas/c/cpp) [问题描述] 我们现在要利用m台机器加工n个工件,每个工件都有m道工序,每道工序都在不同的指定的机器上完成.每个工件的每道工 ...

  3. 安装ADT

    ubuntu下安装android开发环境. 打开eclipse,help---install new software,安装adt,一直提示无法连接到dl-ssl.google.com 由https改 ...

  4. SQL2008-字符转数字CAST和CONVERT

    语法 使用CAST: CAST(expression AS data_type) 使用CONVERT: CONVERT(data_type[(length)],expression,[style])例 ...

  5. Keil C51汉字显示的bug问题

    一.缘起 这两天改进MCU的液晶显示方法,采用“即编即显”的思路,编写了一个可以直接显示字符串的程序.如程序调用disstr("我是你老爸");液晶屏上就会显示“我是你老爸”. 二 ...

  6. NGUI学习笔记(一):官方视频学习记录

    学习NGUI一直断断续续的,目前打算做一个总结的笔记. 我使用的是比较老的3.6.0版本. 1.使用NGUI,需要开启“Edit”->“Project Settings”->“Physic ...

  7. JavaScript要点 (三) 保留关键字

    在 JavaScript 中,一些标识符是保留关键字,不能用作变量名或函数名. JavaScript 标准 所有的现代浏览器完全支持 ECMAScript 3(ES3,JavaScript 的第三版, ...

  8. java异步任务处理

    1.场景 最近做项目的时候遇到了一个小问题:从前台提交到服务端A,A调用服务端B处理超时,原因是前端一次请求往db插1万数据,插完之后会去清理缓存.发送消息. 服务端的有三个操作 a.插DB b.清理 ...

  9. maven依赖传递关系

    一.maven 依赖传递规则 举个例子,比如A依赖B,B依赖C,那么A也是依赖C的.A是对B的直接依赖,A对C是传递依赖 ①.最短路劲原则 如,路劲一:A依赖B,B依赖C,C依赖D(1.0.0): 路 ...

  10. Css基础-派生选择器

    如果要修改li strong 里面文字的颜色可以这样写样式 派生选择器: li strong { color:red; } 效果: