51Testing软件测试论坛

 找回密码
 (注-册)加入51Testing

QQ登录

只需一步,快速开始

微信登录,快人一步

手机号码,快捷登录

查看: 2013|回复: 2
打印 上一主题 下一主题

[Appium] 【转帖】appium简明教程 9 – 如何获取android app的Activity

[复制链接]

该用户从未签到

跳转到指定楼层
1#
发表于 2017-7-12 13:28:52 | 只看该作者 回帖奖励 |正序浏览 |阅读模式
有时候在appium的Desired Capabilities中需要指定被测app的appActivity,下面的方法可能会对你有所帮助。
方法一
如有你有待测项目的源码,那么直接查看源码就好。如果没有,那么请联系有源码的同学,这是推荐方法。
方法二
如果你没有代码,那么可以反编译该app。
这里将用到2个工具,分别是dex2jar和jd-gui。你可以在这里下载目前为止的最新版本以及示例apk。
我们以工具包里的ContactManager.apk为例,简单介绍一下反编译的流程。
1,重命名ContactManager.apk为ContactManager.zip并解压得到文件classes.dex;
2,解压dex2jar-0.0.9.15.zip,并从命令行进入该文件夹;
3,运行命令 d2j-dex2jar.bat path_to\classes.dex 在当前文件夹下得到classes-dex2jar.jar;
4,解压jd-gui-0.3.6.windows.zip得到文件jd-gui.exe;
5,使用jd-gui.exe打开classes-dex2jar.jar;
嗯,好了,可以尽情欣赏了。上图。

上图所示的ContactManager就是待测app的main activity。
方法三
使用log查看大法(嗯,windows上没grep不幸福,好在有powershell的Select-String,可以拿来勉强一用),直接搬砖。
a、启动待测apk
b、开启日志输出:adb logcat>D:/log.txt
c、关闭日志输出:ctrl+c
d、查看日志 找寻:
Displayed com.mm.android.hsy/.ui.LoginActivity: +3s859ms
appPackage = com.mm.android.hsy
appActivity = .ui.LoginActivity
好了,准备活动就做的差不多了。

本帖子中包含更多资源

您需要 登录 才可以下载或查看,没有帐号?(注-册)加入51Testing

x
分享到:  QQ好友和群QQ好友和群 QQ空间QQ空间 腾讯微博腾讯微博 腾讯朋友腾讯朋友
收藏收藏
回复

使用道具 举报

  • TA的每日心情
    开心
    2017-4-14 09:51
  • 签到天数: 2 天

    连续签到: 2 天

    [LV.1]测试小兵

    3#
    发表于 2017-7-12 17:27:44 | 只看该作者
    最简单明了的方法推荐--> dump window | grep mCurretn
    回复 支持 反对

    使用道具 举报

    该用户从未签到

    2#
    发表于 2017-7-12 17:21:18 | 只看该作者
    然后应该怎么做?
    回复 支持 反对

    使用道具 举报

    本版积分规则

    关闭

    站长推荐上一条 /1 下一条

    小黑屋|手机版|Archiver|51Testing软件测试网 ( 沪ICP备05003035号 关于我们

    GMT+8, 2024-11-11 05:08 , Processed in 0.068797 second(s), 24 queries .

    Powered by Discuz! X3.2

    © 2001-2024 Comsenz Inc.

    快速回复 返回顶部 返回列表