全部 android asp.net C/C++ cshap IOS Java javascript nodejs perl php python ruby web容器 其他 前端 数据库 第三方平台 混合式APP 网络 系统 默认分类

Android Apk获取包名和Activity名称

0 138

一、使用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:列出所有的包名,找到所查看包的包名

热忱回答0

  • 加入年费大会员(20每年)
  • 热门标签

    猜你喜欢

    1. Android 5.0 到 Android 6.0 + 的深坑之一 之 .so 动态库的适配
    2. Android权限管理之Android 6.0运行时权限及解决办法
    3. Android 广播接收者 BroadcastReceiver
    4. 关于Monkey的一切都在这里
    5. Android:让WebView支持&lt;input type=”file”…&gt;元素
    6. Android 打开方式选定后默认了改不回来?解决方法(三星s7为例)
    7. android参数传递的几种方法
    8. Android项目实战(三十一):异步下载apk文件并安装(非静默安装)
    9. Android中使用ListView实现分页刷新(线程休眠模拟)
    10. Android中通过访问本地相册或者相机设置用户头像

    衣食父母

    最近热帖

    1. Linux基础测试--11道题 6
    2. Java中双向链表的代码实现 12
    3. stl_config.h基本宏 7
    4. Struts2框架的基本使用 8
    5. 【WPF】学习笔记(一)——做一个简单的电子签名板 17
    6. 迁移 SQL Server 到 Azure SQL 实战 21
    7. 日期时间插件flatpickr.js使用方法 22
    8. 老司机带你开飞机 一: mssql on linux 安装指导 21
    9. 【代码学习】MYSQL数据库的常见操作 21
    10. 数字图像处理笔记与体会(二)——打开和显示图像 20

    随机文章

    1. 基础拾遗------委托详解
    2. 关于js中this指向的问题,打印出obj.nm()的值
    3. Html单选按钮自定义样式
    4. “老坛泡新菜”:SOD MVVM框架,让WinForms焕发新春
    5. 如何用TypeScript开发微信小程序