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

我的主工程引用了一个三方库 有没有办法在三方库某一段代码加一个埋点,统计执行的次数

  •  
  •   honglei92 · 2020 年 2 月 10 日 · 15011 次点击
    这是一个创建于 2171 天前的主题,其中的信息可能已经有所发展或是发生改变。
    25 条回复    2020-02-11 23:41:37 +08:00
    IMCA1024
        1
    IMCA1024  
       2020 年 2 月 10 日
    执行前后
    honglei92
        2
    honglei92  
    OP
       2020 年 2 月 10 日
    @IMCA1024 什么意思
    honglei92
        4
    honglei92  
    OP
       2020 年 2 月 10 日
    @visitant 就是想统计到三方库的某一段代码执行的次数
    ChenFanlin
        5
    ChenFanlin  
       2020 年 2 月 10 日
    可以试试 https://github.com/nekocode/JarFilterPlugin, 替换那个文件为你自己的文件
    xFrye
        6
    xFrye  
       2020 年 2 月 10 日
    你可能需要字节码操作?
    aguesuka
        7
    aguesuka  
       2020 年 2 月 10 日   ❤️ 1
    最简单的。自己写一个同样包名,同样 class 名的 java 文件。加载时会优先加载你的文件
    yy2222186
        8
    yy2222186  
       2020 年 2 月 10 日 via iPhone
    @aguesuka 你这样能通过编译?
    gaobing
        9
    gaobing  
       2020 年 2 月 11 日 via Android
    切面,代理,装饰器模式,看可以用上哪个
    yejianmail
        10
    yejianmail  
       2020 年 2 月 11 日 via Android
    @yy2222186 必须能编译过啊
    qfdk
        11
    qfdk  
    PRO
       2020 年 2 月 11 日 via iPhone
    java 的话 instrumentation
    virusdefender
        12
    virusdefender  
       2020 年 2 月 11 日
    fork 一份然后自己改
    Aresxue
        13
    Aresxue  
       2020 年 2 月 11 日
    instrument、aop、asm、javasist
    mingl0280
        14
    mingl0280  
       2020 年 2 月 11 日 via Android
    C/C++可以做函数打桩,网上有现成的代码。
    kaitian521
        15
    kaitian521  
       2020 年 2 月 11 日
    honglei92
        16
    honglei92  
    OP
       2020 年 2 月 11 日
    @ChenFanlin 谢谢大佬 it works
    honglei92
        17
    honglei92  
    OP
       2020 年 2 月 11 日
    @virusdefender 不能 fork
    honglei92
        18
    honglei92  
    OP
       2020 年 2 月 11 日
    honglei92
        19
    honglei92  
    OP
       2020 年 2 月 11 日
    liujan
        20
    liujan  
       2020 年 2 月 11 日 via iPad
    spring aop
    Cabana
        21
    Cabana  
       2020 年 2 月 11 日 via Android
    aspectj
    pythonee
        22
    pythonee  
       2020 年 2 月 11 日
    @Aresxue
    @gaobing

    正解
    qwerthhusn
        23
    qwerthhusn  
       2020 年 2 月 11 日
    问:我提上了裤子,请问我如何躲过道德的制裁?

    网友:你干啥了?
    chenshun00
        24
    chenshun00  
       2020 年 2 月 11 日
    1、最简单的。 @ChenFanlin 自己写一个同样包名,同样 class 名的 java 文件。加载时会优先加载你的文件 , 原理在 servlet 规范中有描述
    2、包装一下,wrap
    3、ASM,不过我觉得你不会.
    lis66951735
        25
    lis66951735  
       2020 年 2 月 11 日
    java agent
    关于   ·   帮助文档   ·   自助推广系统   ·   博客   ·   API   ·   FAQ   ·   Solana   ·   5306 人在线   最高记录 6679   ·     Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 · 62ms · UTC 08:22 · PVG 16:22 · LAX 00:22 · JFK 03:22
    ♥ Do have faith in what you're doing.