上篇介绍了bugly修复的接入,接下来我们来说下如何使用的,接入不难,但是使用你觉得会懵逼,反正我开始的时候找了老半天没找到所谓的gradle界面。当时是百脸懵逼啊。既然是修复,那么咱们就先搞一个错误出来,最伟大的错误空指针最好了。1、创建一个类。内容如下:public class BugClass{ public String bug(){ String str =
转载 2023-10-30 15:46:05
101阅读
注明:本文章是对阿里开放出的《深入探索Android修复技术原理7.3Q.pdf》进行阅读后的总结性文章,只包含个人认为有用的内容,目的是方便以后回忆或者分析问题,想深入学习可自行研究。附上原书http://pan.baidu.com/s/1dE7i8NJ三大修复原理简要1.代码修复1.1 即时生效:底层替代类中的老代码,并且无视底层的具体结构。 1.2 重启生效:基于类加载机制,重新编排了包
一、前言  任何程序都无法保证上线后不会出现紧急bug,选择的修复方式不同,其代价也大不相同。所谓修复,是相对于正常的版本迭代修复而言的,它可以及时在应用内下载补丁更新程序逻辑,修复bug;而不需要等到下一个版本发布。举个简单的例子,假如有一行代码的逻辑写错了,并且已经编译出APK,安装到了用户的手机上,此时有两种处理方式:等待下一个版本发布,其中修复了错误代码,即迭代修复给用户推送补丁,及时修
刚听朋友说bugly出修复了,抱着好奇的心发现居然已经那么久的事,居然不知道,结果打开文档的时候Tinker进入视野,当时就懵逼了,这不是微信的玩意嘛,看了下好像介入是比较简单点了。但是还是搞了好久,入坑了。。bugly修复文档进入http://bugly.qq.com/docs/user-guide/instruction-manual-android-hotfix/?v=201702130
转载 2023-09-21 21:12:53
192阅读
前段时间修复这个词非常火,当时只是大体看了一下,今天抽空好好看了一下具体原理.什么是修复?简单的说就是用户不用重新下载一个新的apk安装,而是直接下载一个补丁包,通过补丁来替换一些出现bug的类, 当然下载补丁的过程用户一般是感觉不到的,表面上看是直接修复了bug.原理类似与插件开发,关于插件开发原理,看这篇Android插件原理剖析,其中介绍了一下java中的类加载器和android中的类加
转载 2024-03-08 12:56:29
74阅读
前言去年写过一篇修复的文章,那时候刚开始接触,照猫画虎画的还算比较成功。但是那种修复需要重新启动APP,也就是在JAVA层实现的修复。我们知道目前Android主流的修复还有在Native层实现修复的,就是在Native层替换方法,不用重新启动APP。今天写了个Demo,下面主要分享一下它的主要原理。1、修复目前,修复的原理主要有两种技术,一是不需要启动APP就能实现修复,在Native层
               本篇文章主要介绍AndFix的基本使用,以实用为主,对于深层次的原在此不做过多解释。AndFix热补丁原理就是在 native 动态替换方法 java 层的代码,通过 native 层hook java 层的代
转载 2023-07-20 20:56:33
11阅读
什么是修复修复提出于2014年,兴起于2016年,尤其是在Instant run 问世以后,各种修复技术相继涌出。是一种摆脱传统发版方案直接使用补丁来更新app内容,不需要重新下载安装apk等略过一系列繁琐过程的新兴技术,目前国内部分成熟App都拥有自己的修复技术,如:手淘、QQ、微信、美团、饿了么等。修复有什么优势&为什么要使用修复?来看一个场景:公司一个项目A在上线后发现
第一部分:什么是修复我们经常上线一个app后,才发现有个bug还没改掉,需要紧急修复。如果按照通常做法,那就是程序猿加班搞定bug,然后测试,重新打包并发布。这样是不是太麻烦了,我相信有过这个经历的人肯定不在少数。修复就是解决这个问题的。简单点说就是给你的应用打补丁,也就是说你只要把要修改的地方打成补丁放在服务端,通过事先设定好的接口,把补丁下载到客服端,从而修复bug。第二部分:修复的原理
今天向大家介绍的是iOS修复的另一解决方案:MangoFix。介绍他的原因是他和传统的iOS修复使用JavaScript bridge 的方式完全不同,MangoFix是一个语法和OC语法非常类似的DSL,其语言本身的设计目标就是为了解决iOS修复问题,所以在使用的便捷程度和性能方面都要远远超过传统的iOS 修复SDK,比如JSPatch。下面从以下几点介绍MangoFix,更具体的请参考
  (一)首先在终端 pod search JSPatch 接下来就可以自己pod进你需要引入的工程中,或者download到本地自己加到工程中搜索结果如下-> JSPatch (0.1.4) JSPatch bridge Objective-C and JavaScript. You can call any Objective-C class and
  修复方案概述:QQ空间修复方案 RocooFixNuwaHotFixnative hook的方案 AndFix 阿里百川(未开源)微信修复方案 Tinker_imitator(微信更新方案实践) tinker(微信官方)手机QQ修复方案 QFix:推荐文章QFix探索之路——手Q热补丁轻量级方案上述方案,关于修复都做了许多详细的介绍,对
概述一说到修复,可能很多人会觉得应该很复杂,很难用(我以前是这么觉得的。。。),实际使用起来蛮简单的,这里以一个小demo演示修复是如何修复崩溃的,具体更深入的用法,可以看这个https://github.com/bang590/JSPatch/wiki/JSPatch-%E5%9F%BA%E7%A1%80%E7%94%A8%E6%B3%95使用1.下载SDK打开JSPatch网站,下载SDK
转载 2016-10-20 17:56:22
437阅读
什么是修复?首先我们先来还原一下场景:客服MM:用户反馈生产版本出现crash问题了,很严重没法用,怎么办,怎么办?程序猿GG:测试组确认问题后,我们修复Bug,测试验证完成,打包发布。客服MM:用户需要多久能下载新包呢?程序猿GG:至少3天。客服MM:额,这个.....这个时候大家都会想,如果能够马上修复线上版本bug该多好啊。想法没毛病,修复技术就是在这种场景下发展并普及的。修复是一种A
目录前言一、配置1.添加插件依赖2.集成SDK3.初始化SDK4.AndroidManifest.xml配置5.混淆配置二.使用1.编译基准包2.根据基准包生成补丁包3.上传补丁包四.多渠道打包五.一点注意前言记录一下Bugly 修复集成步骤,以及使用注意事项。Bugly目前采用微信Tinker方案。一、配置1.添加插件依赖工程目录下 build.gradlebuildscript {
转载 2023-08-11 16:32:21
174阅读
iOS修复技术细节
转载 2017-12-16 13:23:00
149阅读
2评论
文章目录1 修复技术出现的背景2 修复技术简介3 插件化3.1 什么是插件化3.2 插件化例子3.3 新增界面、资源的插件4 修复技术4.1 类加载机制4.2 PathClassLoader和DexClassLoader4.3 修复技术的原理4.3.1 findClass()4.3.2 DexPathList、dexElement、dexFile4.4 分析干预类加载4.4.1 全量替换
AndFix,全称是Android hot-fix。是阿里开源的一个热补丁框架,允许APP在不重新发布版本的情况下修复线上的bug。支持Android 2.3 到 6.0,并且支持arm 与 X86系统架构的设备。完美支持Dalvik与ART的Runtime,补丁文件是以 .apatch 结尾的文件。原理AndFix的原理就是方法的替换,把有bug的方法替换成补丁文件中的方法;直接在native层
一、打基线包1、打开thinker-support.gradle文件,指定基线包的thinkerId、注释多渠道补丁: 2、打基线包: 完成后,在app的build的bakApk目录下会生成app-0411-11-00-41目录,里面的app-release.apk就是我们要的基线包 双击app-release.apk,可以看到此包的一些信息:二、修复基线包的测试bug三、打补丁包1、打开thin
转载 2023-10-05 14:41:00
163阅读
            Bugly更新是腾讯推出的更新框架,更新是指无需到应用市场重新下载安装app,只需要在app内下载补丁包即可实现app的更新,主要用于app的bug修复或者少量改动。       大家在使用app(特别是游戏app比较常见)的时候应该都有过类似经历:打开app
转载 2024-01-25 10:34:31
122阅读
  • 1
  • 2
  • 3
  • 4
  • 5