一、使用aapt(Android Asset Packaging Tool)工具获取:

1.配置Android环境:

a.添加build-tools/android路径到系统环境变量的中Path中,注意需要用分号隔开;

b.添加platform-tools路径到系统环境变量中的Path中,(platform-tools在SKD中);

c. 将SDK文件目录复制配置到环境变量Path中

d.验证配置是否成功:cmd—输入命令:aapt 按回车,提示:Android Asset Packaging Tool 等一系列信息

2.输入获取命令:aapt dumb badging + 被测APK的存放路径和名称(如:aapt dumb badging d:\APK源文件\ContactManager.apk),按回车

如:①查找package: name='com.example.android.contactmanager'

(包名为package: com.example.android.contactmanager')

②查找:launchable-activity: name='com.example.android.contactmanager.ContactManager'

Activity为: com.example.android.contactmanager.ContactManager

3.输入保存命令:aapt dumb badging+被测APK的存放路径和名称+ +>a.txt

如:aapt dumb badging d:\APK源文件\ContactManager.apk >j.txt

(3为保存已获取到的APK信息,方便复制)

二、查看源码AndroidManifest.xml

  1. 下载Apktool,将2个包解压到同一个文件夹下,共有3个文件:aapt.exe,apktool.bat,apktool.jar;
  2. 在命令行下定位到apktool.bat文件夹,输入以下命令:apktool.bat d apk路径解压目录(此步骤为反编译);
  3. 解压目录下查找到AndroidManifest.xml,用Notepad打开该XML文档
  4. 在XML文档中查找:package和<activity>

三、使用Appium获取包名和Activity名称

  1. 启动Appium,点击Android Settings(首页右上角安卓机器人)—勾选APPlication Path –点击choose—选择被测APK路径
  2. 导入被测APK后,再次点击Android Settings即可查看到Package 和LaunchActivity

四、使用adb获取单个apk的包名和Activity名称:

  1. 配置adb环境

a. 我的电脑点击右键-属性-高级-环境变量;

b.  环境变量中新建PATH,变量值输入adb.exe工具所在目录;

c.  检查是否成功,启动命令行,输入adb;

2.  手机连接电脑,开启USB调试,打开app,输入命令:adb devices,查看手机是否连接到电脑;

3.  doc窗口输入命令行:adb shell dumpsys activity | find "mFocusedActivity" ,查看当前apk的包名;

4.  doc窗口输入命令行:adb logcat grep ActivityManager,查看当前正在运行的Activity;

五、使用adb获取全部apk的包名,然后再获取单个apk的包名和Activity名称

1.  手机连接电脑,输入命令:adb devices,查看手机是否连接到电脑;

2.  doc窗口输入命令行:adb shell pm list packages:列出所有的包名,找到所查看包的包名

Android Apk获取包名和Activity名称的更多相关文章

  1. monkeyrunner_获取apk的包名和activity名

    一.使用adb获取单个apk的包名和Activity名称: 1.配置adb环境 a. 我的电脑点击右键-属性-高级-环境变量; b.  环境变量中新建PATH,变量值输入adb.exe工具所在目录; ...

  2. Appium Android 获取包名和 Activity 的几种方法 (转)

    本文档主要记录“获取包名和 Activity 的方法”,用于自动化测试时启动APP.以下方法主要来源于网络和社区同学的贡献,特此感谢! 1. 方法一: pm list package查看包名 adb ...

  3. 如何通过apk获得包名及Activiy 名称

    一.使用重签名工具Robotium

  4. 二.第一个自动化demo,打开APP-如何获取包名和activity。(真机)

    环境配置成功后,我们就可以进行第一个自动化测试了.用真机则不需要安装安卓模拟器.以一个简单的打开APP为例. 一.获取包名和activtity      启动一个app,我们需要知道它的平台.版本号. ...

  5. 如何查看Android apk的包名?

    有以下四种方法可以查看apk的包名,之后有别的方法,会接着更新文档的. 1. 安装APK包名查看器; 2. 源码AndroidManifest.xml中查看package包名; 3. 利用" ...

  6. 获取Android apk的包名

    Read the package name of an Android APK aapt dump badging <path-to-apk> | grep package:\ name

  7. aapt获取包名和activity,启动app

    1.android sdk的环境安装好了之后,在build-tools\** 的目录下找到aapt.exe,将这个路径设置环境变量,添加到path下 2.在cmdl里面输入:aapt,出现以下内容就是 ...

  8. android中获取包名,类名

    LogUtil.i("getPackageName()=" + getPackageName()); //Context类 LogUtil.i("getClass().g ...

  9. android获取APP 包名和activity

    1.连接设备并启动被测试app应用 2.打开cmd窗口 3.windows获取包名和activity    adb shell dumpsys activity |find "mFocuse ...

随机推荐

  1. 寻找单向链表的倒数第k个节点

    题目: 输入一个单向链表,输出这个单向链表的倒数第k个节点 template<class T> class ListNode { public: T Data; ListNode<T ...

  2. 快速构建Windows 8风格应用12-SearchContract概述及原理

    原文:快速构建Windows 8风格应用12-SearchContract概述及原理 本篇博文主要介绍Search Contract概述.Search Contract面板结构剖析.Search Co ...

  3. TestNg的xml配置

    TestNG中,可以通过配置xml来运行某一类.包.方法. 1.通过TestNg运行某一个类 <?xml version="1.0" encoding="UTF-8 ...

  4. Springmvc+Spring+Hibernate搭建方法

    Springmvc+Spring+Hibernate搭建方法及example 前面两篇文章,分别介绍了Springmvc和Spring的搭建方法,本文再搭建hibernate,并建立SSH最基本的代码 ...

  5. iOS文档序列化(对象归档)

    对象归档: 概念: 对象归档是指将对象写入文件保存在硬盘,当再次又一次打开程序时,能够还原这些对象.也称:对象序列化.对象持久化. 数据持久性的方式(事实上就是3类) 1,NSKeyedArchive ...

  6. 添加MySql Metat Database 信息

    有时候我们想看看 一个数据库上面 某种元素(比如表名)的所有信息,在Mysql上 我们可以通过引入information_schema 的方式,就可以非常方便的查看到. 添加步骤 Edit->P ...

  7. git简单教材

    0)初始化 $ git config --global user.name "xxx" $ git config --global user.email "xxx@gma ...

  8. Spring.NET学习

    Spring.NET学习笔记——目录(原)   目录 前言 Spring.NET学习笔记——前言 第一阶段:控制反转与依赖注入IoC&DI Spring.NET学习笔记1——控制反转(基础篇) ...

  9. Smarty include

    注:由于水平有限,欢迎指正.转载请务必注明出处. 1     include Attribute Name Type Required Default 描述 file string Yes n/a T ...

  10. mongo查询某个字段是否存在,并删除记录里的这个字段

    查询course表中,存在lectures_count字段的记录信息 db.course.find( { "lectures.lectures_count": { $exists: ...