美团Robust热更新产品化之路
2020-02-27 532浏览
- 1.Robust
- 2.Android 2015 APP APP
- 3.• Robust • Robust • Robust
- 4.Robust • • Java Native
- 5.Robust Java patch.dex A.class(fixed) class.dex class1.dex 下载补丁patch.dex A.class classN.dex elements 重启应用补丁 (Multidex/Parent Classloader/ PathClassLoader) class.dex class1.dex A.class(old) classN.dex elements
- 6.Robust Android Java Dex class class
- 7.Robust hack Java
- 8.Robust Native jni层将被patch的函数修改 为native的 patching jni层将被patch的函数指向 patched中对应的函数
- 9.Robust native native Native class native
- 10.Robust native Native hack Android java
- 11.热更新效果通过hack系统内部实现
- 12.Hack Android API
- 13.Robust DexClassLoader
- 14.Robust
- 15.Robust class changeQuickRedirect changeQuickRedirect DexClassLoader class changeQuickRedirect
- 16.Robust patch.dex super
- 17.Robust
- 18.Robust DexClassLoader run APatch.java
- 19.Robust PathClassLoader B.java DexClassLoader APatch.java classLoader
- 20.Robust classLoader public
- 21.Robust super activity1.super.onCtreate(…) ? X
- 22.Robust super super java
- 23.Robust super class super invokespecial invokevirtual
- 24.Robust super Android java super (dex) invoke-super invoke-virtual
- 25.Robust super super private init
- 26.Robust super super invokevirtual ? super invokespecial invoke-super invokevirtual invoke-virtual invoke-virtual invokespecial invoke-super
- 27.Robust super invokevirtual invoke-virtual invokespecial invoke-super testSuperClass.super.thisIsSuper();
- 28.Robust DexClassLoader invokespecial invoke-super super run TestSuperPatch.d ex Android java class
- 29.Robust testSuperClass. thisIsSuper(); super invokespecial invoke-super TestSuperPatch.dex TestSuperPatch TestSuperPatch extends SuperClass
- 30.Robust super DexClassLoader super run TestSuperPatch. dex
- 31.• Robust • Robust • Robust
- 32.Robust Robust App
- 33.Robust Robust dex
- 34.Robust f.class “ ” OrderCenterListAdapter.java
- 35.Robust
- 36.Robust Robust apk ProGuard
- 37.Robust Patch Release Proguard Release Release APP Class Class Patch
- 38.Robust APP Proguard applymapping applymapping work Patch
- 39.Robust
- 40.Robust
- 41.Robust
- 42.Robust Java MTApplymapping Progurad
- 43.• Robust • Robust • Robust
- 44.Robust patch offline 35 crash trend patch online 29.167 23.333 17.5 11.667 5.833 0 2016-07-13 2016-07-14 Class 2016-07-15 2016-07-16 2016-07-17 2016-07-18 2016-07-19
- 45.Robust Class
- 46.
- 47.