获取Android运行apk的packagename 和activityname
自动化测试中经常遇到这个问题,关于这个题目,方法众多,咱的目的是找个比较简单靠谱的:
方法一:
先进入cmd窗口,adb shell 后:
cd /data/data
ls
可以看到包名了吧,缺点很明显,必须root手机先
方法二:
先进入cmd窗口:
adb shell ps|findstr /i "keyword"
要搜哪个不就都行了,这个不用root手机了吧,嗯,这个还凑活
方法三:
在手机上启动了程序,usb连接电脑,然后启动android-sdk/tools/monitor.bat,device里面也就可以看到包名了吧。
上面三种方法查看包名都还凑活,可能稍微需要猜猜,不过都能达到目的,但是启动的任务窗口(activity)是啥呢,这几个方法都看不到。
得,不卖关子了,直接推出我的建议方法:
方法四:
首先在手机上运行一下程序,进入第一个界面就行了,别去多多操作了,usb连接电脑,进入cmd窗口运行:
adb shell "dumpsysusagestats"|findstr /i "keyword"
这个也不用root手机的,原本这个dumpsys usagestats 是用来记录打开了程序的哪些activity次数和时间一类信息的,这里可以用来直接看看你的这个程序开启了哪些activity。
你可以试试在cmd下执行下面的命令:
微信 |
adb shell "am start -n com.tencent.mm/com.tencent.mm.ui.LauncherUI" |
手机QQ |
adb shell "am start -n com.tencent.mobileqq/com.tencent.mobileqq.activity.SplashActivity" |
微博 |
adb shell "am start -n com.sina.weibo/com.sina.weibo.SplashActivity" |
QQ空间 |
adb shell "am start -n com.qzone/com.tencent.sc.activity.SplashActivity" |
不过如果你可以直接看到程序项目中的AndroidManifest.xml或者可以直接问开发,那这篇文章你就压根不用看了。
获取Android运行apk的packagename 和activityname的更多相关文章
- Python 通过脚本获取Android的apk的部分属性,再通过加密算法生成秘钥。
Python 通过脚本获取Android的apk的部分属性,再通过加密算法生成秘钥. #!/usr/bin/env python # -*- coding: utf- -*- import os im ...
- Android 获取android安装apk框的安装状态(如点击取消、返回)
最近鼓捣android,碰到个问题,因为没有root权限,需要调用Intent安装apk,但需要获取用户是否安装了(如,用户点击了返回或取消),查了很多文章,最后可以解决,但有瑕疵,解决方法如下: p ...
- 如何获取Android应用的packageName和ActivityName,识别应用中的控件
1.获取Android应用的packageName和ActivityName A:adb logcat >log.txt 在log中搜索package B:adb shell logcat | ...
- 获取Android自己写好了的apk以及反编译
今天,我们先说一下,获取Android自带的apk以及反编译它们来学习Android工程师是怎样写的,今天我们就以拿到Android自带的短信管理器的apk为例子 你可能有疑问,为什么要那么麻烦,从系 ...
- (转)获取android手机内部存储空间和外部存储空间的参数 && 如何决定一个apk的安装位置
转:http://blog.csdn.net/zhandoushi1982/article/details/8560233 获取android文件系统的信息,需要Environment类和StatFs ...
- 转:android中APK开机自动运行
背景知识:当Android启动时,会发出一个系统广播,内容为ACTION_BOOT_COMPLETED,它的字符串常量表示为android.intent.action.BOOT_COMPLETED.只 ...
- Android 5.0以上获取系统运行进程信息
在Android 5.0以上系统,调用getRunningAppProcesses 方法返回的列表为空,这是因为谷歌考虑到安全原因,已经把这个方法移除掉了, 那以后要获取系统运行的后台进程这个方法用不 ...
- 获取Android APK JNI库
/************************************************************************** * 获取Android APK JNI库 * 说 ...
- Android中apk动态载入技术研究(2)android插件化及实现
了解了android中类载入的前期知识点后,来看看android中DexClassLoader详细的实现 详细载入流程例如以下: 宿主程序会到文件系统比方SD卡中去载入APK[1],然 ...
随机推荐
- WordPress 后台评论如何自定义搜索条件
大家都知道WordPress 作为一个非常成熟的博客系统,功能可以说是非常强大,几乎整个网站都可以进行定制开发,已经不算是一个博客系统了而应该是一个成熟的开发框架 最近就用WP给客户开发了一个网站,但 ...
- javascript获取数组种最大值?
Array.prototype.max = function () { return Math.max.apply({}, this) } Array.prototype.min = function ...
- Android 四大组件之 Service(一)
Service是Android中四大组件之一,在Android开发中起到非常重要的作用,它运行在后台,不与用户进行交互. 1.Service的继承关系: java.lang.Object → andr ...
- ubuntu环境下android开发环境安装
http://blog.csdn.net/shulianghan/article/details/38023959 Android程序开发的环境配置 Ubuntu下自带openjdk的卸载 你无需管它 ...
- GLSL语言内置的变量详解
GLSL语言内置的变量,包括内置的顶点属性(attribute).一致变量(uniform).易变变量(varying)以及常量(const),一方面加深印象,另一方面今天的文章可以为以后的编程做查询 ...
- php之快速入门学习-8(if-else)
PHP If...Else 语句 条件语句用于根据不同条件执行不同动作. PHP 条件语句 当您编写代码时,您常常需要为不同的判断执行不同的动作.您可以在代码中使用条件语句来完成此任务. 在 PHP ...
- yum安装MangoDB
1:操作系统信息 2:yum命令查看MongoDB的包信息 3:配置yum源 #vi /etc/yum.repos.d/10gen.repo 4:查看mongoDB的服务器包的信息 5:安装Mongo ...
- windows下编辑的shell复制到linux无法执行
是因为格式不对 可用vim编辑器转换格式 在vim中执行命令: set ff=unix 设置打开方式为unix
- MassiGra045 简体中文化|打开图片很快
MassiGra045 简体中文化,是一款对图片的打开预览很高效的工具,据传是日本开发的. 本人之前一直使用,唯一有点缺点就是不能旋转图片. 图片预览 峰回路转: http://pan.baidu.c ...
- VC线程同步方法
VC MFC中线程同步对象的区别 临界区 CCriticalSection,在用户模式工作,适用于保护线程间共享资源,一个线程可以多次Lock不会出错.不支持在多进程之间工作.互斥量 CM ...