dodola / HotFix

安卓App热补丁动态修复框架
MIT License
1.7k stars 444 forks source link

Demo工程hotfix不生效. #2

Closed Eklett closed 8 years ago

Eklett commented 9 years ago

我用2台手机测试Demo,一台魅蓝note2 系统flyme4.5.4, android版本5.1; 另一台一加1 系统color os,Android版本4.4........ demo 编译成功后, ①如果先点击"测试",之后打补丁重启应用之后也不生效; ②如果先点击"打补丁",之后点击"测试", 魅蓝的不用重启补丁立即生效了. 一加的就会crash 日志:

Class resolved by unexpected DEX: Ldodola/hotfix/LoadBugClass;(0x42706028):0x719cf000 ref [Ldodola/hotfix/BugClass;] Ldodola/hotfix/BugClass;(0x42706028):0x7ac15000
(Ldodola/hotfix/LoadBugClass; had used a different Ldodola/hotfix/BugClass; during pre-verification)
java.lang.IllegalAccessError: Class ref in pre-verified class resolved to unexpected implementation
    at dodola.hotfix.LoadBugClass.getBugString(LoadBugClass.java:11)
    at dodola.hotfix.MainActivity.onOptionsItemSelected(MainActivity.java:72)
    at android.app.Activity.onMenuItemSelected(Activity.java:2655)
dodola commented 9 years ago

@Eklett 有些厂家可能改了libdvm,造成这种方法失效。等我找个手机查查。。

Eklett commented 9 years ago

反编译进去app-debug.apk看,没有发现构造方法 , 所以也没有System.out.println(dodola.hackdex.AntilazyLoad.class);这句....难道是Groovy SDK配置不成功?

jasonross commented 9 years ago

@Eklett https://github.com/jasonross/Nuwa 帮忙看一下这个项目成功不?

Eklett commented 9 years ago

女娲是可以成功的.

dodola commented 9 years ago

@Eklett 女娲😂 赞一个

dodola commented 9 years ago

@jasonross 被你截胡了,桑心

jasonross commented 9 years ago

@dodola 哈哈,但是为什么我还没上trending?

dodola commented 9 years ago

@jasonross 可能还没到刷新缓存的时候

dodola commented 8 years ago

fixed in RocooFix