美文网首页
关于热更新(基于bugly)的一点学习

关于热更新(基于bugly)的一点学习

作者: z我要是唐僧就留在女儿国 | 来源:发表于2017-02-14 11:18 被阅读187次

    1、热更新(热修复)是什么?有什么作用?

    1.1 在我印象里,对热插拔有一点印象,热修复都没听说过,对于弄懂什么叫热更新、热修复就很关键了。热插拔的意思为:通着电进行一些零件的插拔,比如说,台式机开机运行我们插拔鼠标,手机开机安装取出SIM卡。那热修复就是在iOS的应用上线之后,不断电(不下线)的修复它,更新它。

    1.2 如果iOS的app上线之后发现了一个极其隐蔽的bug,就只能通过再次修改再上线来解决这个问题了,iOS特有的审核会延长这个周期,所以,如果我们有了热修复的功能,在iOSapp上线之后发现了bug,我们可以通过修改.js的文件来修复出现的问题。

    2、用什么?如何使用?

    2.1 因为项目里引入了bugly的崩溃日志报告,确实值得推荐使用,信息很详细。巧的是,bugly包含了热更新的SDK,bugly热更新的核心是基于JSPatch的,patch的中文意思为补丁。

    2.2 关于如何导入或者集成就需要看详细的官方文档了。

    在项目中新建了.js文件,项目上线之后,我们需要通过bugly的平台,去上传修改好的脚本文件(压缩),如果是首次运行应用应该不会立即更新,推测此时在下载补丁。第二次运行就可以看到效果了。

    3 重点为如何编辑使用.js文件

    3.1 JSPatch很类似JS语法,但是毕竟不是JS语法,一些JS的高级用法还是无法进行使用。

    关于脚本语言的一些理解:脚本语言是为了缩短传统的编写-编译-链接-运行(edit-compile-link-run)过程而创建的计算机编程语言。由解释器(虚拟器)负责解释说明翻译。脚本语言也称胶水语言,用来连接软件组件的程序设计性语言,可以调用别的语言编写的功能模块,结合在一起形成更高效的新程序。

    脚本语言介于标记语言和编程语言之间,脚本语言不需要编译,可以直接用,由解释器来负责解释。

    编译型语言写的程序执行之前,需要专门的一个编译过程,把程序编译成机器语言的文件,比如.exe文件,以后要运行就不需要重新编译了,直接使用编译的结果就好了(exe文件),因为翻译只做了一次,运行时不需要翻译,所以编译型语言的执行效率高。

    资料收集以及依据:

    知乎的总结

    推酷的文章

    3.2  申明变量用var  用.调用方法  require()是需要引入的类名字 例如:

    var testView = require('UIView').alloc().init()

    #warnning JSPatch的语法可能是所有的方法都带有括号的,有参数传参数,没有参数就不用管了。如何得知呢? 举例

    require('UIView')

    var superView = UIView.alloc().init()

    var view = UIView.alloc().init()

    superView.addSubview(view)

    多参数方法名用_分割开  

    基础用法文档

    相关文章

      网友评论

          本文标题:关于热更新(基于bugly)的一点学习

          本文链接:https://www.haomeiwen.com/subject/cckxwttx.html