V2EX = way to explore
V2EX 是一个关于分享和探索的地方
现在注册
已注册用户请  登录
• 请不要在回答技术问题时复制粘贴 AI 生成的内容
pqpo
V2EX  ›  程序员

阿里《深入探索 Android 热修复技术原理》方法替换方案

  •  
  •   pqpo · 2017-07-07 16:51:36 +08:00 · 3770 次点击
    这是一个创建于 2714 天前的主题,其中的信息可能已经有所发展或是发生改变。

    阿里《深入探索 Android 热修复技术原理》一文中的方法热替换方案是比较优雅,是这次第一次提出来的?

    实现了一个 DEMO https://github.com/pqpo/MethodHook

    效果不错,极少量代码兼容 Dalvik 和 ART。是否可用于 AOP 实现?

    8 条回复    2017-07-08 13:26:10 +08:00
    wsxyeah
        1
    wsxyeah  
       2017-07-07 17:06:43 +08:00 via iPhone
    这种方式过于依赖虚拟机的实现了吧,几乎每个大版本都要单独做一种 hook

    AndFix 也有大半年没更新了
    wsxyeah
        2
    wsxyeah  
       2017-07-07 17:09:31 +08:00 via iPhone
    @wsxyeah 换行被吞了😅
    pqpo
        3
    pqpo  
    OP
       2017-07-07 17:15:33 +08:00
    @wsxyeah 新的方案直接替换整个 ArtMethod 结构体,不像 AndFix 本地保留了不同版本的 ArtMethod 结构体,逐个替换。
    yu5121199
        4
    yu5121199  
       2017-07-07 17:26:46 +08:00
    有没有 iOS 的 热修复技术方法替换方案。。。。。
    pqpo
        5
    pqpo  
    OP
       2017-07-07 17:30:06 +08:00
    @yu5121199 JsPatch,胆子大就上:)
    paradoxs
        6
    paradoxs  
       2017-07-07 17:33:30 +08:00
    热修复是双面剑啊 代码没经过审计就直接送到用户面前 个人感觉弊大于利
    wsxyeah
        7
    wsxyeah  
       2017-07-07 18:04:57 +08:00 via iPhone
    @pqpo sorry,前面没仔细看,以为是说 AndFix 来着。memcopy 666
    pqpo
        8
    pqpo  
    OP
       2017-07-08 13:26:10 +08:00
    @paradoxs 补丁包公司内部肯定会测试的,你说的审计是 Google Play 审计?
    关于   ·   帮助文档   ·   博客   ·   API   ·   FAQ   ·   实用小工具   ·   863 人在线   最高记录 6679   ·     Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 · 23ms · UTC 21:15 · PVG 05:15 · LAX 13:15 · JFK 16:15
    Developed with CodeLauncher
    ♥ Do have faith in what you're doing.