一、获取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. bzoj 1040 [ZJOI2008]骑士(基环外向树,树形DP)

    [题目链接] http://www.lydsy.com/JudgeOnline/problem.php?id=1040 [题意] 给一个基环森林,每个点有一个权值,求一个点集使得点集中的点无边相连且权 ...

  2. 2016"百度之星" - 复赛(Astar Round3) 1003 拍照

    拍照 思路:先静态,离线树状数组,分别统计每个点向左向右能看到的船的数量.再枚举整个区间求最大值. 应为人和船都是动态的,假设船往左走,处理每个点看到向左最大船的数量,满足动态条件.就是向左的船一开始 ...

  3. 命令rm

    mv -r 递归删除文件夹内所有东西mv -i 交互式删除mv -f 强制删除,没有警告提示

  4. acm-字符串整理

    一.后缀数组 #define maxn 200015 int wa[maxn],wb[maxn],wv[maxn],WS[maxn]; int len, sa[maxn] ; inline void ...

  5. hdoj 1234 开门人和关门人

    开门人和关门人 Time Limit: 2000/1000 MS (Java/Others)    Memory Limit: 65536/32768 K (Java/Others) #include ...

  6. UIDynamic(一)

    UIDynamic(一) 前言 最近看了一下UIDynamic,UIDynamic是13年WWDC出的技术.其实本人一直热衷于比较有趣的动画,特别是带物理力学的动画,感觉物理力学就是动画的灵魂,一直想 ...

  7. st_MES_InsertIntoSalaryManage

    USE [ChiefmesNew]GO/****** Object: StoredProcedure [dbo].[st_MES_InsertIntoSalaryManage] Script Date ...

  8. 搭建maven+spring+mybatis工程

    一.maven 命令搭建web项目 可以参考我之前的一篇博文maven快速入门 1.搭建web工程 mvn archetype:generate -DgroupId=com.yuanmeng.spri ...

  9. Css基础-派生选择器

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

  10. cocos2d-x sprite触摸处理

    转自:http://www.cnblogs.com/lancidie/archive/2013/04/01/2993890.html 我们常常需要判断用户的点击操作是否落于某个sprite之上,进而让 ...