动态化更新是 App 开发必然面对的问题。在 iOS 环境下,Apple 开发者们像是“ 带着手铐脚镣跳舞” ,相比之下 Android 开发者会轻松一点,有很多相关的开源框架帮助 App 进行热修复、热更新。

本期 fir.im Weekly 整理了滴滴打车团队动态化方案、JSpatch 的作者 iOS 动态化分享,以及 QQ空间、微信、微信读书、美团点评技术团队的 Android 热修复热更新方案,还有一些其他的技术分享。

DynamicCocoa:滴滴 iOS 动态化方案的诞生与起航

我就叫Sunny怎么了在微博上公布了滴滴 iOS 动态化方案 DynamicCocoa,保持 iOS 原生技术栈让已有的 OC 代码动态化运行。微信文章传送门:DynamicCocoa:滴滴 iOS 动态化方案的诞生与起航,同时,滴滴客户端 App 架构团队考虑于 2017 年初开源。

相比跨端方案,也带来了一个新思路:iOS 和 Android 都保留 native 开发模式,用各自的方式将 native 代码直接动态化,保持各平台的差异性。

iOS 动态化的故事

JSpatch 的作者 @bang 聊了聊关于做了 iOS 动态化的故事,感兴趣的点击这里看看。想要更多的了解JSpatch的特性,可以看看 iOS 动态更新方案对比:JSPatch vs React Native

安卓 App 热补丁动态修复技术介绍

以补丁的方式动态修复紧急 Bug,不再需要重新发布App,不再需要用户重新下载,覆盖安装?来看看 QQ 空间团队关于安卓 App 热补丁动态修复的方案

微信 Android 热补丁实践演进之路

微信的动态化方案是基于 dexDiff 和 dexPatch,这篇文章帮助大家不仅能够全面的了解各项热补丁技术的优缺点,弄清楚在什么场景下使用哪个热补丁技术。目前,微信热补丁框架也已开源——Tinker,关于微信 Tinker 的一切都在这里,也可以了解下@流川枫与苍井空-_- 的这篇 Android热补丁之Tinker原理解析

Android热更新方案Robust

@美团点评技术团队在了解 Instant Run 原理之后,实现了一个兼容性更强的热更新方案,是更加产品化的 hotpatch 框架--Robust, 详情见这里

Android Patch 方案与持续交付

WeRead 团队基于已经出现的框架没有更合适的轮子,就自己造了一个 patch 方案,以加速 bug 处理和版本持续交付。文章传送门

Android 热修复实践应用—AndFix

来自非著名程序员公众号的分享。

HanWen 的这篇文章记录使用阿里巴巴开源热修复框架——AndFix的整个实践过程,值得看看。

『 其他』

写给 iOS 开发者看的 HTTPS 指南

很多 iOS 开发者都不明白 HTTPS、TLS、证书到底是怎么回事,甚至有些同学还有不少误解。吕文翰_JohnLui这篇文章着重以大部分 iOS 开发者能理解的方式介绍 APP 启用 HTTPS 支持的过程中跟 APP 相关的部分。

2016年iOS技术圈回顾

来自@愚公编程MrPeak分享。

Peak君 盘点了2016年 iOS 技术圈发生的一些大大小小的事,值得品味。感兴趣地来这里看看。


这期的 fir.im Weekly 就到这里,投稿请联系 dm[at]fir.im.

欢迎分享更多的内容。

fir.im

fir.im Weekly - iOS / Android 动态化更新方案盘点的更多相关文章

  1. fir.im Weekly - iOS/Android 应用程序架构解析

    假如问你一个iOS or Android app的架构,你会从哪些方面来说呢? 本期 fir.im Weekly 收集了关于  iOS/Android 开发资源,也加入了一些关于 Web 前端方面的分 ...

  2. fir.im Weekly - iOS 保持界面流畅的技巧

    生命不息,coding 不止.本期 fir.im Weekly 收集了微博上的热转资源,包含 Android.iOS 开发工具.源码分享,产品 UI 设计的好文章,还有一些程序员成长的 Tips,希望 ...

  3. fir.im Weekly - iOS开发中的Git流程

    本期 fir.im Weekly 收集了微博上的热转资源,包含 Android.iOS 开发工具.源码等好用的轮子,还有一些 APP 设计的 Tips,希望对你有用. 精仿知乎日报 iOS 端 @我偏 ...

  4. 移动端热更新方案(iOS+Android)

    PPT资源包含iOS+Android 各种方案分析:https://github.com/qiyer/Share/blob/master/%E7%83%AD%E6%9B%B4%E6%96%B0%E5% ...

  5. fir.im Weekly - 关于 iOS10 适配、开发、推送的一切

    "小程序"来了,微信变成名副其实的 Web OS,新一轮的Web App 与Native App争论四起.程序员对新技术永远保持灵敏的嗅觉和旺盛的好奇心,@李锦发整理了微信小程序资 ...

  6. Android热修复方案比较

    热修复的特点:无需重新发版,实时高效热修复:用户无感知修复,无需下载新的应用,代价小: 修复成功率高,把损失降到最低. 一.热修复开源方案和使用情况 方案名称 方案开发公司 开发时间 Github星评 ...

  7. fir.im Weekly - 8 个不能错过的 iOS / Android 技术分享

    本期 fir.im Weekly 收集了 2 月下旬新鲜出炉的 iOS /Android 技术分享.源码等,iOS 中图片技术的解压缩.逆向实战.iOS SDK 实践,Android架构思考.Andr ...

  8. 移动端APP热更新方案(iOS+Android)

    出自:http://www.cnblogs.com/Creator/p/7007694.html 为什么要做热更新 当一个App发布之后,突然发现了一个严重bug需要进行紧急修复,这时候公司各方就会忙 ...

  9. fir.im Weekly - 揭秘 iOS 面向协议编程

    本期 fir.im Weekly 重点推荐关于 iOS 面向协议编程相关文章,还有 iOS 多线程安全.Swift 进阶.Android MVVM 应用框架.Android 蓝牙实践等技术文章分享和工 ...

随机推荐

  1. HTML kbd键盘元素

    1. 说明 kbd :即Keyboard Input Element(键盘输入元素).表示键盘按键的语义元素,常用于网页上对快捷键.按键说明的场景. 样式规格:内联样式. 为了在页面上突出显示,可以给 ...

  2. 清空Github上某个文件的历史版本

    title: 清空Github上某个文件的历史版本 author: 青南 date: 2015-01-08 16:04:53 categories: [经验] tags: [Github,histor ...

  3. JavaScript实现常用的排序算法

    ▓▓▓▓▓▓ 大致介绍 由于最近要考试复习,所以学习js的时间少了 -_-||,考试完还会继续的努力学习,这次用原生的JavaScript实现以前学习的常用的排序算法,有冒泡排序.快速排序.直接插入排 ...

  4. Hawk 4.7 单步调试

    单步调试的意义 已经编写的工作流,可能会因为某些外界环境的变化而出错,此时需要排除错误,我们可以使用单步调试. 单步调试的本质,相当于只使用前n个模块,这样就能看到每个步骤下,流的改变. 例子 还是上 ...

  5. CRL快速开发框架系列教程七(使用事务)

    本系列目录 CRL快速开发框架系列教程一(Code First数据表不需再关心) CRL快速开发框架系列教程二(基于Lambda表达式查询) CRL快速开发框架系列教程三(更新数据) CRL快速开发框 ...

  6. 【Oracle 集群】ORACLE DATABASE 11G RAC 知识图文详细教程之集群概念介绍(一)

    集群概念介绍(一)) 白宁超 2015年7月16日 概述:写下本文档的初衷和动力,来源于上篇的<oracle基本操作手册>.oracle基本操作手册是作者研一假期对oracle基础知识学习 ...

  7. 读书笔记汇总 - SQL必知必会(第4版)

    本系列记录并分享学习SQL的过程,主要内容为SQL的基础概念及练习过程. 书目信息 中文名:<SQL必知必会(第4版)> 英文名:<Sams Teach Yourself SQL i ...

  8. Javascript 代理模式模拟一个文件同步功能

    <!DOCTYPE html> <html lang="en"> <head> <meta charset="UTF-8&quo ...

  9. JavaScript基础知识总结(四)

    JavaScript语法 八.函数 函数就是完成某个功能的一组语句,函数由关键字function + 函数名 + 加一组参数定义: 函数在定义后可以被重复调用,通常将常用的功能写成一个函数,利用函数可 ...

  10. DOM的小练习,两个表格之间数据的移动

    本次讲的是两个表格之间数据的移动,左边的表格移动到右边,并且左边表格移动内容消失. <head>   <meta http-equiv="Content-Type" ...