Android测试随笔获得App的包名和启动Activity

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了Android测试随笔获得App的包名和启动Activity相关的知识,希望对你有一定的参考价值。

前言


  经常看到一些刚刚接触android测试的小伙伴在论坛或者QQ群里问这样的问题:如何知道一个App的包名呢?它的启动的Activity又是什么呢?

  之前博客里也忽略了这一块,这一节我就专门来介绍一下。

 

包名


  包名(Package name)在Android系统中是判断一个App的唯一标识,不同的App可以有同样的名字,但是它的包名不可以相同。

  例如我可以自己编译生成一个App也叫“微信”,但是我App的包名不能为com.tencent.mm(微信的包名为这个),如果我指定的包名如果也和微信一致了,那么我的手机上只允许安装这两个App中的其中一个。说到这很多人就会有疑问,如果有人恶意做了一个和微信内容一模一样的App,名字和包名都和微信一样,那怎么分辨呢?Android中为了防止这样,还做了一个叫签名的东西,微信的签名一般我们是没有的,所以就可以通过签名来标识出这款App到底是谁的了,有兴趣了可以了解下签名,这里就不再赘述了。

  一般要知道一个应用的包名的需求来源都是需要跑一个monkey命令的时候,还记得吗monkey用法?(monkey的文章)monkey的命令中就是需要指定包名的。下面我们就介绍几种查看包名的方法:

  一、看源代码

    一般我们测试的App都是自己公司的App,因此当有源代码的时候,我们就可以非常容易的知道它的包名。找到工程目录下的 “AndroidManifest.xml” 的文件,打开后: 

技术分享

    我们找到package这一项查看即可。

  二、查看手机系统设置

    我这里介绍谷歌原生系统,其他的一些小米、魅族等自己定制后的系统的查看方法也大同小异。

    操作步骤:“设置” -> “应用” -> “正在运行”(这一步需要注意)-> 选择要查看的应用。这个时候就能看到了(如下图)

技术分享 技术分享

  三、查看 /data/data/ 目录

    当我们安装一款应用的时候,系统就会在 /data/data/ 目录下建一个目录,并且文件名就是当前这个应用的包名,我们看一下我手机里这个目录下都有些什么文件吧:

技术分享

    如果你知道你要查看的App包名中的一个关键词的话,会更快的找到你应用的包名,否则建议使用其他方法。

  四、GT

    GT的界面中自带了这个功能,从应用宝上下载GT,然后选择一个被测应用,就可以看到了。(如下图)

 

Activity

 

以上是关于Android测试随笔获得App的包名和启动Activity的主要内容,如果未能解决你的问题,请参考以下文章

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

adb获取App的包名和启动页

appium获取android app的包名和主Activity

『与善仁』Appium基础 — 6补充:APP的包名和启动名

命令查看当前运行APP的包名和Activity

如何查看apk的包名和启动Activity