zoukankan      html  css  js  c++  java
  • 获取Android运行apk的packagename 和activityname

    自动化测试中经常遇到这个问题,关于这个题目,方法众多,咱的目的是找个比较简单靠谱的:

    方法一:

    先进入cmd窗口,adb shell 后:

    cd /data/data

    ls

    可以看到包名了吧,缺点很明显,必须root手机先

    方法二:

    先进入cmd窗口:

    adb shell ps|findstr /i "keyword"

    要搜哪个不就都行了,这个不用root手机了吧,嗯,这个还凑活

    方法三:

    在手机上启动了程序,usb连接电脑,然后启动android-sdk/tools/monitor.bat,device里面也就可以看到包名了吧。

    上面三种方法查看包名都还凑活,可能稍微需要猜猜,不过都能达到目的,但是启动的任务窗口(activity)是啥呢,这几个方法都看不到。

    得,不卖关子了,直接推出我的建议方法:

    方法四:

    首先在手机上运行一下程序,进入第一个界面就行了,别去多多操作了,usb连接电脑,进入cmd窗口运行:

    adb shell "dumpsysusagestats"|findstr /i "keyword"

    这个也不用root手机的,原本这个dumpsys usagestats 是用来记录打开了程序的哪些activity次数和时间一类信息的,这里可以用来直接看看你的这个程序开启了哪些activity。

    你可以试试在cmd下执行下面的命令:

    微信

    adb shell "am start -n com.tencent.mm/com.tencent.mm.ui.LauncherUI"

    手机QQ

    adb shell "am start -n com.tencent.mobileqq/com.tencent.mobileqq.activity.SplashActivity"

    微博

    adb shell "am start -n com.sina.weibo/com.sina.weibo.SplashActivity"

    QQ空间

    adb shell "am start -n com.qzone/com.tencent.sc.activity.SplashActivity"

    不过如果你可以直接看到程序项目中的AndroidManifest.xml或者可以直接问开发,那这篇文章你就压根不用看了。

  • 相关阅读:
    c++获取线程id
    一个基于c++的log库
    防止socket程序重启等待2MSL时间
    c++头文件循环引用
    Myeclipse 8.5 优化设置
    来道题 求解释
    MyEclipse常用设置笔记
    Ubuntu 学习笔记
    Linux 下常用命令
    Oracle 学习笔记 常用查询命令篇
  • 原文地址:https://www.cnblogs.com/testway/p/6862899.html
Copyright © 2011-2022 走看看