V2EX = way to explore
V2EX 是一个关于分享和探索的地方
现在注册
已注册用户请  登录
xiaohuangya
V2EX  ›  Android

安卓应用的功能怎么看功能啊(•ิ_•ิ)?

  •  
  •   xiaohuangya · 2016-07-31 12:54:15 +08:00 · 5757 次点击
    这是一个创建于 2797 天前的主题,其中的信息可能已经有所发展或是发生改变。
    就是手里有一个 app 的源代码,但是个人不太清楚怎么写安卓。
    但是我想了解一下功能和流程。
    怎样看会快一些呢( ・◇・)?
    我是打算根据页面的按钮也就是 xml 文件中的 id ,然后搜索这个 id 被哪些文件调用了。
    有什么好方法么?〈(゜。゜)
    14 条回复    2016-08-01 11:36:18 +08:00
    ifane
        1
    ifane  
       2016-07-31 12:57:54 +08:00 via iPhone
    导入到 as 后 build 生成 apk 在安卓手机上测试功能就行
    xiaohuangya
        2
    xiaohuangya  
    OP
       2016-07-31 13:02:08 +08:00
    @ifane 可能没有描述清楚吧。就是我想知道某个功能用哪些函数实现的。因为功能挺多的。|´・ω・)ノ
    zhgg0
        3
    zhgg0  
       2016-07-31 13:18:14 +08:00
    有些时候看懂比写更难。
    lzhr
        4
    lzhr  
       2016-07-31 13:28:47 +08:00
    把那个 ID 删了,看看哪些代码报错
    Shura
        5
    Shura  
       2016-07-31 13:44:51 +08:00 via Android
    从主 activity 开始往下看
    lujiajing1126
        6
    lujiajing1126  
       2016-07-31 14:01:38 +08:00 via iPhone
    先体验一下功能,就是一楼说的 build 安装。然后找到你要的功能在哪个界面实现,翻那个界面的 activity 或者 fragment 找到逻辑。。。用 as 的话可以跟踪调用。或者直接开 debug 调试
    iluhcm
        7
    iluhcm  
       2016-07-31 15:05:42 +08:00
    一般情况下,先从 Main 入口进入,大致找到一个应用的架构(是一个 MainActivity+Multi Fragments 还是多个 Activity )。接下来,了解整个应用的框架( mvc | mvp | mvvm )。最后,根据你要了解的功能,先用手机把应用跑起来,然后使用 uiautomator 获取图片,找到对应的资源 id ,根据这个 id 要寻找是哪个类使用,接下来就看跟这个类相关的调用就可以了。
    xiaohuangya
        8
    xiaohuangya  
    OP
       2016-07-31 16:51:28 +08:00
    谢谢各位啦(๑•̀ㅂ•́)و✧ (8
    ybjaychou
        9
    ybjaychou  
       2016-07-31 19:46:04 +08:00
    一般情况下是先看界面上按钮的图片文字等,文字的话从 values/string.xml 入手搜索,图片的话从 drawable 下按图片的名字搜索
    Zxw
        10
    Zxw  
       2016-07-31 20:40:37 +08:00
    一般从 activity 的命名就可以知道 activity 的工作,可以定位大概,然后根据属性和方法的命名,很容易就可以找到想看的功能。其他类,同样的道理。
    muyunyan
        11
    muyunyan  
       2016-07-31 21:24:25 +08:00
    @lzhr 我觉得你这主意非常机智!
    asdwfwqd
        12
    asdwfwqd  
       2016-07-31 23:30:44 +08:00
    as 里面右键 find usage
    luo1994118
        13
    luo1994118  
       2016-08-01 10:20:40 +08:00
    一般一个应用,如果命名不是太复杂 很快就可以通过命名定位 Activity ,然后从 Activity 开始看 根据运行顺序,应该很容易找到的 ,还有一个办法,就是用 Debug 来调试,调试到你需要的功能那看一下运行到哪个函数就行了
    MrJiren
        14
    MrJiren  
       2016-08-01 11:36:18 +08:00 via Android
    一般要先跑起来,然后从 MainActivity 开始读。看看运行出来的界面与代码哪一部分对应。
    关于   ·   帮助文档   ·   博客   ·   API   ·   FAQ   ·   我们的愿景   ·   实用小工具   ·   999 人在线   最高记录 6543   ·     Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 · 30ms · UTC 19:52 · PVG 03:52 · LAX 12:52 · JFK 15:52
    Developed with CodeLauncher
    ♥ Do have faith in what you're doing.