这三个东东是干啥的相信大家都有所耳闻了,如果你没有听说过,请出门左拐,百度一下你就知道.这里不对这三个东东具体的集成方式做详细的介绍,因为官方文档已经写的很详细了,主要是对同时使用这三个东东时所需要注意的关键点进行填坑. 多渠道打包 项目原本使用的打包方式是传统的方式,相信大家都知道的,就是通过build.gradle中定义好各个渠道: productFlavors { yingyongbao { manifestPlaceholders = [UMENG_CHANNLE: "yingyongb…
首先说明使用热修复的意义,那就是你的apk包发出去了,万一发生了紧急异常需要修复,怎么办?这时候再发包上市场审核,也是有点慢了吧?而且错误发生在apk中,无法通过后台接口修复,这时候你就需要一个强大的工具了,那就是热修复了.热修复有多个框架,目前腾讯的buglly的tinker是已经提供工具集成了,并且许多的应用都在使用,看看官方对它的介绍: 热更新能力是Bugly为解决开发者紧急修复线上bug,而无需重新发版让用户无感知就能把问题修复的一项能力.Bugly目前采用微信Tinker的开源方案,开…
onic官方文档链接:http://ionicframework.com/docs/ 如果是新的环境会有很多坑,主要是有墙,请仔细阅读每个步骤 文档包含以下内容: l  环境搭建 l  创建demo并调试运行 l  打包APK l  添加支持热更新 l  优化启动慢问题 l  常用命令 1.      环境搭建 需要安装以下软件和插件(Android): l  安装nodeJS(自带npm) l  配置cnpm  (使用淘宝镜像取代npm) l  安装cordova和ionic2 l  安装JA…
1.首先是目录结构 |-node_modules/ #包文件 |-build/ #静态资源生成目录 |-src/ #开发目录 |-js/ |-index.js #入口文件 |-app.js #React组件文件 |-css/ |-style.scss #SASS样式文件 |-webpack.config.js #webpack开发配置文件 |-index.html |-package.json 2.webpack配置文件 !important entry 入口文件地址: entry:{ buil…
项目的热更新用的bugly,不过一直都只是使用他自带的升级弹窗. 不过UI小姐姐说弹窗太丑了,要自定义. bugly有提供自定义UI的官方文档:https://bugly.qq.com/docs/user-guide/advance-features-android-beta/?v=20160824161206#ui 不过关于自定义里并没有讲得很细致,是以为我可以凭快秃的脑袋猜出来叭. 官方文档里有提到需要标注的5个tag: 可是并没有说这五个tag都必须出现在布局中, 否则将显示不出更新的信息…
官网教程:http://developer.egret.com/cn/github/egret-docs/Native/native/hotUpdate/index.html 详细可看官网教程,我这里只是记录下实际操作过程,留个记录... 主要流程: 1 设置app加载模式 2 设置php文件 3 每次打新包,只需要上传服务器后,再修改php的game_code版本号,当app本地和php的game_code名称不一致时,就能实现热更新. 1 设置加载模式 默认为0.设置为1,表示启动app时,…
介绍 热更新能力是Bugly为解决开发者紧急修复线上bug,而无需重新发版让用户无感知就能把问题修复的一项能力.Bugly目前采用微信Tinker的开源方案,开发者只需要集成我们提供的SDK就可以实现自动下载补丁包.合成.并应用补丁的功能,我们也提供了热更新管理后台让开发者对每个版本补丁进行管理. 为什么使用Bugly热更新? 无需关注Tinker是如何合成补丁的 无需自己搭建补丁管理后台 无需考虑后台下发补丁策略的任何事情 无需考虑补丁下载合成的时机,处理后台下发的策略 我们提供了更加方便集成…
最近,在项目DYTT集成了热更新,简单来说,就是不用重新下载安装包即可达到更新应用的目的,也不算教程吧,这里记录一下. 1.热更新方案 目前网上大概有两个比较广泛的方式,分别是 react-native-pushy react-native-code-push 前者是由ReactNative中文网推出的代码热更新服务,后者是由微软老大哥推出的,当然不仅仅是为React Native,还包括其他原生方式. 综合考虑之下,选择了react-native-code-push. 2.安装code-pus…
转自https://www.jianshu.com/p/572b59829a08 为什么要打多个渠道的包? 大家都知道,android应用商店大大小小有几百个,作为一个有志向的app,就需要做到统计各个应用商店的下载量,不同渠道下的app使用时长.安装数量.使用用户数等等信息,这个时候就需要打多个渠道包.渠道包的原理大致就是往apk中写入不同的渠道信息,对这个问题有疑问的同学可以看看gradle官网或者看看这篇文章. 传统多渠道打包 用android studio开发的同学都知道,传统的多渠道打…
前阵子 Android 端的线上崩溃比较多,热修复被提上日程.实现方案是 Tinker,Jenkins 打包,最后补丁包上传到 Bugly 进行分发.主要在 Jenkins 打包这一块爬了不少坑,现记录下来,供大家参考. 1. Tinker + Bugly热修复实现 首先是本地实现,按照官方文档,只要一步一步按照文档来,这个步骤还是比较容易的,这里就不再赘述了,不懂的可以先参考官方文档:Bugly Android热更新使用指南.Bugly Android热更新详解.这里贴一下接入流程: 打基准包…
[Quick 3.3]资源脚本加密及热更新(三)热更新模块 注:本文基于Quick-cocos2dx-3.3版本编写 一.介绍 lua相对于c++开发的优点之一是代码可以在运行的时候才加载,基于此我们不仅可以在编写的时候热更新代码(针对开发过程中的热更新将在另外一篇文章中介绍),也可以在版本已经发布之后更新代码. 二.热更新模块 cocos2dx的热更新已经有很多篇文章介绍了,这里主要是基于 quick-cocos2d-x的热更新机制实现(终极版2)(更新3.3版本)基础上修改. 1.launc…
本文先回顾了以往流行的多渠道打包方式,随后引入的mcxiaoke的packer-ng-plugin项目,介绍该项目在实际应用(配合友盟统计)中如何解决更方便的Android多渠道打包问题 多渠道打包方案解析 实际应用集成 多渠道打包方案解析 android应用市场多种多样,应用宝.小米市场.豌豆荚...为了监督每个市场我们的应用下载和推广情况,对发布在每个市场上的apk打上烙印是必须的一步,这就是多渠道apk的问题,"渠道"就是给apk打上的烙印. 同时友盟统计可以帮我们统计渠道数据(…
转载请标明出处:http://www.cnblogs.com/zblade/ 对于游戏中的热更,目前主流的解决方案,分为Lua(ulua/slua/xlua/tolua)系和ILRuntime代表的c#系.今天就来探究一下ILRuntime是如何实现热更的流程的,新手入门,个中有错误理解,欢迎指正. ILRuntime的原理 首先说一下lua的热更新基本过程,unity提供了AssetBundle的资源打包方式,这样可以通过资源的对比来更新最新的资源.而lua文件不需要编译,可以被打包进游戏的资…
帮朋友公司做了点东西,他说有很多bug,我一看,基本问题都是浏览器兼容引起的,而electron内带Chromium内核,正好一直想尝试下electron,所以研究了一波.这里只是简单的使用electron作为壳,把自己的项目嵌进去,更多深入研究以后再来. 打包自己的项目 这里没啥说的自己的项目打包下来,类似下面 快速开始electron 上手electron,官方提供了一个非常好的快速上手实例"electron-quick-start". git clone https://gith…
下面继续配置 webpack dev server    hot module replacement: 首先配置dev-server     安装     npm i webpack-dev-server -D const isDev = process.env.NODE_ENV === 'development' const config = { entry:{}, output:{}, plugins:{} } if(isDev){ config.devServer = { host: '…
前言 最近项目集成了Tinker,开始认为集成会比较简单,但是在实际操作的过程中还是遇到了一些问题,本文就会介绍在集成过程大家基本会遇到的主要问题. 考虑一:后台的选取 目前后台功能可以通过三种方式实现: 1.自己搭建后台布丁下发系统2.第三方提供的服务,目前如原微信simsun大神的个人tinkerpatch平台,目前出于内测阶段,暂时免费.后期应该会按下发量对app进行收费.3.腾讯Bugly提供的服务,提供了热更新的下发后台,集成到了bugly的升级sdk中.免费.根据公司的精神,我们选择…
作者:巫文杰 Gradle使用productFlavors打渠道包的痛 有很多同学可能会采用配置productFlavors来打渠道包,主要是它是原生支持,方便开发者输出不同定制版本的apk,举个例子: android { ... defaultConfig { minSdkVersion 8 versionCode 10 } productFlavors { flavor1 { packageName "com.example.flavor1" versionCode 20 } fl…
这几天项目完结了,闲来无事,想起来了以前研究的热更新,那个开源的只有nvwa.recoo,等,不是很好用,最近听说tinker开源一段时间了,用的人还挺多,决定研究一下! 首先进入了官方文档 https://bugly.qq.com/docs/user-guide/instruction-manual-android-hotfix/?v=20170322165254,这里开始详细看文档内容.我使用的是bugly集成的热更新,这样子可以少很多的代码,毕竟提供了热更新和升级的平台,适合我这个懒人的使…
关于作者: 李涛,腾讯Android工程师,14年加入腾讯SNG增值产品部,期间主要负责手Q动漫.企鹅电竞等项目的功能开发和技术优化.业务时间喜欢折腾新技术,写一些技术文章,个人技术博客:www.ltlovezh.com . ApkChannelPackage是一种快速多渠道打包工具,同时支持基于V1和V2签名进行渠道打包.插件本身会自动检测Apk使用的签名方法,并选择合适的多渠道打包方式,对使用者来说完全透明. Github地址: https://github.com/ltlovezh/Apk…
本文来自于腾讯Bugly公众号(weixinBugly),未经作者同意,请勿转载,原文地址:http://mp.weixin.qq.com/s/2bY7A6ihK9IMcA0bOFyB-Q 导语 xLua是Unity3D下Lua编程解决方案,自2016年初推广以来,已经应用于十多款腾讯自研游戏,凭借其出色的性能,易用性,扩展性而广受好评. 而就在前天,腾讯宣布xLua开源到github上,引起了游戏开发圈的轰动,今天精神哥就来给大家介绍--手游热更新方案 xLua. xLua项目1月3日起正式对…
上一篇文章介绍了Dex文件的热更新流程,本文将会分析Tinker中对资源文件的热更新流程. 同Dex,资源文件的热更新同样包括三个部分:资源补丁生成,资源补丁合成及资源补丁加载. 本系列将从以下三个方面对Tinker进行源码解析: Android热更新开源项目Tinker源码解析系列之一:Dex热更新 Android热更新开源项目Tinker源码解析系列之二:资源热更新 Android热更新开源项目Tinker源码解析系类之三:so热更新 转载请标明本文来源:http://www.cnblogs…
这几天闲着没事,就看了下现在比较火的热修复,确实有了热修复就解决了android native的一个很尴尬问题,之前比起h5,android在用户体验上是有优势,但是过于复杂的版本更新,使用户烦不胜烦(这个深有体会啊,之前项目除了个bug就发布个更新,尼玛还是强制更新,我要是客户我就日了狗),好了不多说了,我们要发车了准备好上车 这就是tinker的wiki : https://github.com/Tencent/tinker/wiki (有啥不懂的就是里面wikiwiki下). 这是tink…
一.背景 首先了解多渠道打包工具Walle之前,我们需要先明确一个概念,什么是渠道包. 我们要知道在国内有无数大大小小的APP Store,每一个APP Store就是一个渠道.当我们把APP上传到APP Store上的时候,我们如何知道用户在那个渠道下载我们的APP呢?如果单凭渠道供应商自己给的话,那无疑会带来不可知的损失,当然除了这个原因,我们还有别的等等. 所以通俗的来说,我们需要一种方法来对我们的APK在不改变功能的情况下进行标记,来达到区分的目的. 二.如何给APK打标记 google…
本系列将从以下三个方面对Tinker进行源码解析: Android热更新开源项目Tinker源码解析系列之一:Dex热更新 Android热更新开源项目Tinker源码解析系列之二:资源文件热更新 Android热更新开源项目Tinker源码解析系类之三:so文件热更新 转载请标明本文来源:http://www.cnblogs.com/yyangblog/p/6252855.html更多内容欢迎star作者的github:https://github.com/LaurenceYang/artic…
[原]Android热更新开源项目Tinker源码解析系列之一:Dex热更新 Tinker是微信的第一个开源项目,主要用于安卓应用bug的热修复和功能的迭代. Tinker github地址:https://github.com/Tencent/tinker 首先向微信致敬,感谢毫无保留的开源出了这么一款优秀的热更新项目. 因Tinker支持Dex,资源文件及so文件的热更新,本系列将从以下三个方面对Tinker进行源码解析: Android热更新开源项目Tinker源码解析系列之一:Dex热更…
前面两篇文章介绍初步搭建单页面应用的开发环境: 第一篇:使用webpack.babel.react.antdesign配置单页面应用开发环境 第二篇:使用react-router实现单页面应用路由 这篇文章将基于前面两篇文章进一步优化开发环境,实现单页面开发时的运行时打包与热更新. 调整文件布局 在第二篇文章中发现了框架代码文件的命名有些冲突,这里我们需要做一下调整,以便接下来的讲述不易出现问题.调整时需要小小地改动配置文件几个路径.文件布局调整前后对比如下: 图片基本已经说明了情况.我们将在s…
在Android 7.0(Nougat)推出了新的应用签名方案APK Signature Scheme v2后,之前快速生成渠道包的方式(美团Android自动化之旅-生成渠道包)已经行不通了,对此美团输出了新的开发渠道打包工具Walle,此篇博文针对使用Walle进行命令行打包的方式进行讲解. Walle 工具原理 对新的应用签名方案生成的APK包中的ID-value进行扩展,提供自定义ID-value(渠道信息),并保存在APK中 而APK在安装过程中进行的签名校验,是忽略我们添加的这个ID…
版权声明:本文为HaiyuKing原创文章,转载请注明出处! 前言 这里只是记录下集成友盟统计SDK以及简单配置多渠道打包的步骤.所以1.该Demo不能运行:2.配置多渠道打包只是一种简单的写法,具体复杂写法请阅读参考资料. 使用步骤 一.项目组织结构图 注意事项: 1.  导入类文件后需要change包名以及重新import R文件路径 2.  Values目录下的文件(strings.xml.dimens.xml.colors.xml等),如果项目中存在,则复制里面的内容,不要整个覆盖 二.…
转载请标明出处:http://www.cnblogs.com/zblade/ 0x01 目的 在实际的游戏开发中,对于游戏都需要进行打补丁的操作,毕竟,测试是有限的,而bug是无法预估的.那么在手游中,unity对于打补丁的方式就是提供热更新.本文主要针对assetbundle的热更新流程进行设计探讨,抛砖引玉,希望有更优的解决方案. 0x02 基本流程 在实际的游戏开发中,常常会被assetbundle的热更新折腾的无法入眠,每次在进行热更新的时候都需要反复测试,因为这牵涉着实际的上线游戏运行…
关于热更新如今面试也是基本上都会提及到的,我上一家公司用的是tinker,而这里准备研究的也是它的原理,而关于tinker的原理网上也是一大堆文章进行介绍,为了对它有个更加进一步的认识,所以自己动手来实现类似于tinker的效果,当然关于补丁这块是如何打的不在这次研究的范围,这里只研究最最核心的,能根据补丁动态进行修复,通过分析ClassLoader的源码来弄清整个修复的原理. 界面框架搭建: 先简单弄一个示例界面,供我们能看到热修复的效果,如下: <?xml version="1.0&q…