Android自动化学习笔记:获取APK包名的几种方法

----------------------------------------------------------------------------------------------------------------------------

小记:自学过程中,经常需要用得到一个APK的包名,总结一下得到包名的几种方式。

**********************

2017-16-23:初版

**********************

------------------------------------------------------------------------------------------------------------------------------

我们主要用的是adb shell命令

方法1. 通过adb shell进入到手机data/data目录下,查看包名(需要root)

adb shell

cd data/data

ls

方法2. 通过adb shell的pm命令,查看包名(不需要root)

adb shell pm list package -f
还可以加上过滤信息
adb shell pm list package -f |findstr antutu

方法3. 代码形式获取:

package com.example.apppackages;  

import android.graphics.drawable.Drawable;  

public class AppPackageInfo {  

    public String appName="";
public String packageName="";
public String versionName="";
public int versionCode=;
public Drawable appIcon=null; }
  1. ArrayList<AppPackageInfo> appList = new ArrayList<AppPackageInfo>();
  2. List<PackageInfo> packages = getPackageManager().getInstalledPackages(0);
  3. for(int i=0;i<packages.size();i++) {
  4. PackageInfo packageInfo = packages.get(i);
  5. AppPackageInfo tmpInfo = new AppPackageInfo();
  6. tmpInfo.appName = packageInfo.applicationInfo.loadLabel(getPackageManager()).toString();
  7. tmpInfo.packageName = packageInfo.packageName;
  8. tmpInfo.versionName = packageInfo.versionName;
  9. tmpInfo.versionCode = packageInfo.versionCode;
  10. tmpInfo.appIcon = packageInfo.applicationInfo.loadIcon(getPackageManager());
  11. appList.add(tmpInfo);
  12. Log.i("tag", tmpInfo.packageName);
  13. }
 

4 使用android/sdk 在SDK的build-tools目录下. 该工具可以查看, 创建, 更新ZIP格式的文档附件(zip, jar, apk)

aapt dump badging (apk path)|findstr package

C:\Users\Administrator\AppData\Local\Android\Sdk\build-tools\25.0.3>aapt dump badging  E:\uitest\testcase\CaseDemo\testcase\antutu\Antutu3D.apk  | findstr package

 
 package: name='com.antutu.benchmark.full' versionCode='6000302' versionName='6.0
 .3' platformBuildVersionName='6.0-2438415'

[uiautomator篇] 如何获取apk的包名 博客模板的更多相关文章

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

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

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

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

  3. apk的包名修改

    今天,想在android手机上安装两个相同的应用,本以为可以安装不同版本的,试了几次,均相互覆盖了,于是,只能设法修改apk所对应的包名(package name). 目的声明:本文只是为了满足DIY ...

  4. 推荐csdn里的几篇activiti基础入门及提高的博客

    昨天有个网友加qq询问我有没有非maven搭建的activiti项目的demo,因为我博客中写了一个用maven,我当时没有,于是晚上回家尝试了一下,结果比较容易就实现了. 之后和那个网友聊了一下,他 ...

  5. C蛮的全栈之路-node篇(二) 实战一:自动发博客

    目录 C蛮的全栈之路-序章 技术栈选择与全栈工程师C蛮的全栈之路-node篇(一) 环境布置C蛮的全栈之路-node篇(二) 实战一:自动发博客 ---------------- 我是分割线 ---- ...

  6. PHP获取APK的包信息

    这段时间太忙了,一个月没有写博客了,稍微闲下来就感觉把在开发中遇到的问题记录下来 php上传安卓apk包的时候,需要获取安卓apk包内的信息 <?php /*解析安卓apk包中的压缩XML文件, ...

  7. 使用bat脚本调用py文件直接获取应用的包名和targetversion

    背景: 在上一篇已经介绍过如何利用python调用aapt获取包名 https://www.cnblogs.com/reseelei-despair/p/11078750.html 但是因为每次都要修 ...

  8. 获取第三方软件的包名、入口Activity的类名

    要启动指定的第三方软件,需要知道第三方软件的包名.类名. 获取第三方软件包名.类名的两种方法: 1.使用aapt aapt是sdk自带一个工具,在 Sdk\builds-tools 目录下 .如果没有 ...

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

    一.使用重签名工具Robotium

随机推荐

  1. Setting 之dashboard 点击跳转流程

    设置的主界面的可以通过修改xml中的dashboard_categaries.xml 文件实现,在DashboardSummary.java 文件中的rebuildUI()方法中将xml对应的实体类转 ...

  2. bt5r3开启远程登录

    sshd-generate /etc/init.d/ssh restart

  3. 测试的发现遗漏BUG的做法

    首先要确认BUG的影响范围: 后续做法如下: 1.从测试角度来说,外部缺陷等同与系统崩溃,测试是必须提的2.可以询问主管或负责人是否在后一个版本中修改3.评估缺陷对于用户使用存在多大的不便4.判定缺陷 ...

  4. Dictionary(支持 XML 序列化),注意C#中原生的Dictionary类是无法进行Xml序列化的

    /// <summary> /// Dictionary(支持 XML 序列化) /// </summary> /// <typeparam name="TKe ...

  5. html 获取和写入cookie的 方法

    //取Cookie的值            function getCookie(cookie_name) {     var allcookies = document.cookie;     v ...

  6. ZOJ 3471 Most Powerful (状压DP,经典)

    题意: 有n个原子,每当两个原子碰撞时就会产生能量,并且消耗其中一个原子.已知每两个原子碰撞时消耗其中指定一个原子所产生的能量,问最多能产生多少能量? 思路: 一开始以为是找一个有序序列,使得能量最大 ...

  7. HDU 4507 吉哥系列故事——恨7不成妻 (数位DP)

    题意: 如果一个整数符合下面3个条件之一,那么我们就说这个整数和7有关: 1.整数中某一位是7: 2.整数的每一位加起来的和是7的整数倍: 3.这个整数是7的整数倍: 给定一个区间[L,R],问在此区 ...

  8. [Git]常用的Git命令行

    Commit的用法 git init [+项目名] git add . (注意这里在add后面的空格和点是不能省略的) git status git commit -m “message”(这里的me ...

  9. 我的offer之路(一)

    目录 1.职业规划. 2.刷题. 3.看书. <剑指offer> <数据结构算法与应用:C++语言描述 > <Effective C++> <C与指针> ...

  10. 51nod——1391 01串(字符串、前缀和)

    好像这题是4级题下放2级? 预处理:求每个位置 x 左区间 [ 0 , x ] 中 1 比 0 多的数量和右区间 ( x , n - 1 ] 中 0 比 1 多的数量(少就是负的).相当于求两个前缀和 ...