首页
AI Coding
NEW
沸点
课程
直播
活动
AI刷题
APP
插件
搜索历史
清空
创作者中心
写文章
发沸点
写笔记
写代码
草稿箱
创作灵感
查看更多
会员
登录
注册
热修复&插件化
GitLqr
创建于2021-07-20
订阅专栏
Android 热修复&插件化
等 12 人订阅
共13篇文章
创建于2021-07-20
订阅专栏
默认顺序
默认顺序
最早发布
最新发布
热修复 - Tinker多渠道加固配置
一、问题 腾讯的热修复方案 Tinker 为加固应用提供了支持,需要在 gradle 脚本中,通过 isProtectedApp 配置当前的基准包(base apk)是否为加固 apk ,而这个配置是
RePluginX - 兼容AndroidX并加入新特性开发纪要
一、RePluginX 因 RePlugin 不支持 AndroidX,官方 github 已经好久不见有新的 Commits,一堆 issue 也没处理,难免让人觉得官方是否已经放弃了该项目。而公司
RePlugin集成ARouter
一、功能需求1、组件解耦 (ARouter)阿里开源的 ARouter 在组件化开发中这个库相当有用,其核心功能就是组件解耦,比如以往要跳转另一个 Activity 时,会使用如下代码:这样的代码意味
RePlugin集成AndroidAutoSize
你可能会问 "都 2021 年了还折腾屏幕适配?直接用 dp 单位适配不好吗?", 确实,如果公司的 UI 设计师、产品经理以及老板,能明白为什么一套 UI 在不同设备上显现出来的一些差异并不是 bug 时,开发者直接用 dp 单位配合一些布局技巧来进行适配是可以的,但是,实现…
RePlugin强制退出App
需求:插件中按“退出”按钮,就完全退出整个app,包括宿主。 以下所有的理论,都是基于宿主跟插件使用同个进程这个大前提下,即不需要常驻进程。 在插件中使用System.exit(0)或android.os.Process.killProcess(android.os.Proce…
RePlugin集成Fresco
插件中的SoLoader在加载时会使用到一个宿主无权操作的路径:/data/user/0/插件包名/lib-main(但这个路径并不存在!),导致宿主在加载插件时,直接报错,因此插件并不会成功启动。 方案1:fresco降级,使用1.7.1版本。 方案2:宿主compile f…
DroidPlugin手札——home键强杀处理
DroidPlugin是360开源的插件化框架,github地址为:https://github.com/DroidPluginTeam/DroidPlugin。 因公司业务及项目历史原因,来公司的这段时间一直在使用DroidPlugin进行业务开发,期间遇到的一些问题在此进行…
热修复与插件化基础——Java与Android的类加载器
Loading:类的信息从文件中获取并载入到JVM的内存中。 Verifying:检查读入的结构是否符合JVM规范的描述。 Preparing:分配一个结构用来存储类信息。 Resolving:把类的常量池中的所有符号引用变成直接引用。 Initializing:执行静态初始化…
热修复与插件化基础——Java与Android虚拟机
使用javac将java文件编译成class文件。 类加载器(ClassLoader)将class字节码加载进JVM对应的内存中。 JVM将内存分配给方法区、堆区、栈区、本地方式栈4个部分,这4个部分分别存储字节码不同的部分。 垃圾回收器(gc)会管理整个内存空间中的垃圾。 L…
热修复与插件化基础——dex与class
生成并运行class文件对于我们而言实在太熟悉了,这里只演示dex文件的生成与运行。 class文件的运行需要依赖jvm,同理,dex文件的运行需要依赖dvm,所以dex文件需要在Android上才能运行。所需指令如下: 使用adb将dex文件放送到Android手机的SD卡目…
热修复——Bugly让热修复变得如此简单
「Bugly」和「tinker-manager」是免费的,「tinkerpatch」是收费的,因为「tinkerpatch」收费,所以暂时不做考虑。Bugly由腾讯团队开发并维护,稳定性肯定没得说,而「tinker-manager」是GitHub上个人开发者开发维护的,稳定性没…
热修复——Tinker的集成与使用
上面是Tinker官方Wiki的原话,意思嘛相信大家都看得明白,但注意啦,它并没有说Tinker可以让补丁实时生效(也叫无感知更新),它必须在打上补丁后重启App(重启进程),补丁才会发挥作用,这跟阿里的热修复方案有着本质的区别。在开始集成Tinker之前,我们有必要了解清楚,…
热修复——深入浅出原理与实现
热修复无疑是这2年较火的新技术,是作为安卓工程师必学的技能之一。在热修复出现之前,一个已经上线的app中如果出现了bug,即使是一个非常小的bug,不及时更新的话有可能存在风险,若要及时更新就得将app重新打包发布到应用市场后,让用户再一次下载,这样就大大降低了用户体验,当热修…