《实现获取appPackage和appActivity的方法》

怀抱观古今,寝食展戏谑。这篇文章主要讲述《实现获取appPackage和appActivity的方法》相关的知识,希望能为你提供帮助。
 
实现获取appPackage和appActivity的方法 基本介绍:appPackage:简单来说是App开发者提供的名称。
appActivity:简单来说是App提供的各种不同的功能。每个程序都有个MainActivity,就是打开程序时显示在屏幕的活动。
appPackage和appActivity  是desired capabilities中非常重要的两个参数,在使用appium进行自动化测试时我们常常会用到这两个参数,那么如何获取这两个参数呢?
准备工作:在我们获取appPackage和appActivity之前,有一些准备工作。

  1. 下载并安装androd sdk
  2. 设置 andorid Envirment Variables
一、使用adb shell(真机)首先要通过USB将手机与电脑连接,注意将手机的调试模式打开,打开Android SDK的platform-tools的文件夹,在上方地址栏输入cmd,进入cmd后首先输入adb shell,出现$后输入  dumpsys activity | grep mFocusedActivity(如图)
《实现获取appPackage和appActivity的方法》

文章图片

其中红框的即为appPackage,蓝框的即为appActivity
《实现获取appPackage和appActivity的方法》

文章图片

二、使用aact(没有手机的情况下,虚拟机)首先要通过USB将手机与电脑连接,注意将手机的调试模式打开,打开Android SDK的build-tools的文件夹,在上方地址栏输入cmd,进入cmd后输入aact dump badging +存放apk的地址(如图)
《实现获取appPackage和appActivity的方法》

文章图片

三、使用adb logcat> D:/log.log:(真机)1、需要配置好android的开发环境后,打开cmd命令窗口;
2.在命令窗口中输入,adb logcat> D:/log.log,输入D盘下
《实现获取appPackage和appActivity的方法》

文章图片

3、运行手机上app应用程序,需要获取到app应用程序
4、然后停止运行获取手机上logcat的文件,停止是直接按Ctrl+c
《实现获取appPackage和appActivity的方法》

文章图片

5、打开输入的日志文件:直接搜寻Displayed 
《实现获取appPackage和appActivity的方法》

文章图片

6、通过抓取到log的日志,找到相应activity的应用程序
《实现获取appPackage和appActivity的方法》

文章图片

四、运行“ dumpsys window windows | grep -E ‘ mCurrentFocus’ ” 命令获取(真机)1、手机解锁,用usb连接手机,或者打开android emulator。
2、启动命令行,运行    ‘ adb devices’ ,这一步确保你的手机正常连接。
《实现获取appPackage和appActivity的方法》

文章图片

3、运行‘ adb shell’ 命令,展示如下
《实现获取appPackage和appActivity的方法》

文章图片

4、打开你想要获取appPackage和appActivity的app
5、运行“ dumpsys window windows | grep -E ‘ mCurrentFocus’ ” 命令,会展示当前焦点程序的详细信息
《实现获取appPackage和appActivity的方法》

文章图片

五、通过apk解析程序进行解压(模拟机)1、首先,你要有一个APP的安装包  xxx.apk,
2、然后,通过这个解压工具将.apk解压。如下:
《实现获取appPackage和appActivity的方法》

文章图片

  3、通过notepad++  打开AndroidManifest.xml  文件,在里面搜索:manifest对应的就是appPackage。
《实现获取appPackage和appActivity的方法》

文章图片

【《实现获取appPackage和appActivity的方法》】4、搜索:activity对应的就是appActivity。(activity关键字很多,你要注意辨别。)
《实现获取appPackage和appActivity的方法》

文章图片

六、通过如下命令查看:
adb shell
logcat | grep cmp=
或者:
adb logcat|find "Displayed" > d:/logs.txt
package:name  就是appPackage
launchable-activity: name  就是appActivity

    推荐阅读