热修复JSPatch之实战教程
接上篇《热修复JSPatch之接口设计》,在这篇文章主要给大家讲述一下怎样高速具备热修复能力,当然了假设有人有志于把JSPatch系统的学习,甚至用JSPatch进行开发的。就没有必要听我在这里啰嗦了。
简单了解下JSPatch语法
我这里仅仅介绍一些简单经常使用的。
1. require
在使用Objective-C类之前须要调用 require('className’) :
require('UIView')
var view = UIView.alloc().init()
能够用逗号 , 分隔,一次性导入多个类:
require('UIView, UIColor')
var view = UIView.alloc().init()
var red = UIColor.redColor()
或者直接在使用时才调用 require() :
require('UIView').alloc().init()
2. 调用OC方法
调用类方法
var redColor = UIColor.redColor();
调用实例方法
var view = UIView.alloc().init();
view.setNeedsLayout();
參数传递
跟在OC一样传递參数:
var view = UIView.alloc().init();
var superView = UIView.alloc().init()
superView.addSubview(view)
Property
获取/改动 Property 等于调用这个 Property 的 getter / setter 方法。获取时记得加 ():
view.setBackgroundColor(redColor);
var bgColor = view.backgroundColor();
方法名转换
多參数方法名使用 _ 分隔:
var indexPath = require('NSIndexPath').indexPathForRow_inSection(0, 1);
若原 OC 方法名里包括下划线 _,在 JS 使用双下划线 __ 取代:
// Obj-C: [JPObject _privateMethod];
JPObject.__privateMethod()
3.defineClass
API
qqqq defineClass(classDeclaration, instanceMethods, classMethods)
@param classDeclaration: 字符串,类名/父类名和Protocol
@param instanceMethods: 要加入或覆盖的实例方法
@param classMethods: 要加入或覆盖的类方法
在使用的过程中发现property属性命名,方法命名要严格依照驼峰式命名,禁止在属性名,或者方法名中间使用下划线'_' 此处要格外注意哦,血的教训积累出来的经验。假设使用了。会造成无法修复
假设想查看完整的教程能够点击查看
在实践的过程中发现,大部分人对于js方法不是非常熟悉,写起来非常慢,给大家找到了转换的站点转换站点地址
当然,转换后,我们是不能直接拿来用的,还是用非常多的问题。比方宏定义无法使用,相关方法转换错误,js语法错误等等,我们能够使用以下的一个站点来进行js语法校验 js校验网址
通过上面的转换。校验。我们開始尝试在本地修复我们的bug。假设能够修复,并经过測试后,我们就能够上传我们的热修复脚本了。感兴趣的小伙伴能够尝试一下哦。以下是我写的一个小demo。 JSPatch修复demo
热修复JSPatch之实战教程的更多相关文章
- Tinker 热修复框架 简单上手教程
当你们看到Tinker的时候是不是有点愣逼这个是什么东西? 简单来说就是不需要重新下载app和重新安装app 来进行更新app的技术框架. 看看这个吧,我也是才学习 ,先做个学习记录 参考:Tinke ...
- Android热修复之AndFix使用教程
AndFix的github地址 AndFix 全称Android hot-fix,是alibaba的Android热修复框架,支持Android 2.3到6.0的版本,支持arm与X86系统架构,支持 ...
- 《android基于andFix的热修复方案》实战篇
有篇文章说的比较简洁,大家可以参考下:AndFix使用说明 下面说说实际使用中遇到的问题 1:如何继承到gradle项目中 dependencies { compile 'com.alipay.eul ...
- 关于iOS 热更新(热修复)你必须知道的一种方法- JSPatch
本文为转载文章 . 版权归原文所有. 原文链接:iOS 5分钟集成热修复(JSPatch) 前言 在iOS中有很多种热修复方案,在这里我就不一一介绍了 这里有一篇介绍热修复的文章:iOS中的HotFi ...
- 使用jspatch进行热修复的实战总结
最近正式在线上项目中集成了jspatch进行热修复,这里做一个简单的总结. 工具篇: 首先,用xcode来编辑js非常困难,基本上没有缩进,完全需要手写:经过研究发现使用 Sublime text3 ...
- AndFix热修复 —— 实战与源码解析
当你的应用发布后第二天却发现一个重要的bug要修复,头疼的同时你可能想着赶紧修复重新打个包发布出去,让用户收到自动更新重新下载.但是万事皆有可能,万一隔一天又发现一个急需修复的bug呢?难道再次发布打 ...
- 关于JSPatch热修复
今天和同事聊到JSPatch热修复,我们来看下JSPatch,确实解决了APP升级的痛点. 刚好,已经有这么一个第三方平台实现了后台管理,全套服务(网址是:http://jspatch.com/),先 ...
- iOS JSPatch 热修复使用
概述 一说到热修复,可能很多人会觉得应该很复杂,很难用(我以前是这么觉得的...),实际使用起来蛮简单的,这里以一个小demo演示热修复是如何修复崩溃的,具体更深入的用法,可以看这个https://g ...
- 热修复技术沉思:jspatch
硬修复: 直接修改工程源码,重新发版: 冷修复: 打补丁包,使用动态库和hook技术,在程序启动时完成问题代码修复:案例:iOS逆向工程: 特征:不修改原始代码.补丁发布.目前不支持动态发布: 热修复 ...
随机推荐
- windows10+arch linux双系统 uefi启动
安装前的准备Archlinux 安装ISO镜像,下载:http://mirrors.163.com/archlinux/iso/2013.05.01/U盘一个,最好1G以上,格式化成FAT32.把下载 ...
- Spring Boot (17) 发送邮件
添加依赖 <!--发送邮件 --> <dependency> <groupId>org.springframework.boot</groupId> & ...
- 5.26 idea生成javadoc
- Android截图截取弹框AlertDialog
1:效果如图 2:权限 <uses-sdk android:minSdkVersion="21" android:targetSdkVersion="21" ...
- CSS框架Bootstrap
作为一个软件开发人员,经常接触和使用框架是再平常的事情不过了.但是这些框架基本都是和语言相关的,比如WEB框架SpringMVC,JavaEE框架Spring,ORM框架Hibernate,还有Jav ...
- vs2015网站部署到iis后运行调试:无法在web服务器上启动调试的问题,403已禁止
C:\Windows\Microsoft.NET\Framework\v4.0.30319\Temporary ASP.NET Files C:\Windows\Microsoft.NET\Frame ...
- 图方法:寻找无向图联通子集的JAVA版本
图像处理中一般使用稠密方法,即对图像进行像素集合进行处理.在图像拓扑方面,更多地应用图计算方法. 寻找无向图联通子集的JAVA版本,代码: //查找无向图的所有连通子集//wishchin!!! pu ...
- 时序分析:KMP算法用于序列识别
考研基础资料之一的<算法与数据结构>,KMP算法作为串匹配的基本算法,为必考题目之一.对于算法入门来说,也是复杂度稍高的一个基本算法. KMP算法作为串匹配的非暴力算法,是为了减少回溯而设 ...
- Fedora Atomic Host 使用中的几个坑
做成U盘启动:必须用配套工具写U盘,否则安装时各种timeout Cockpit中文页面会导致登录后页面空白的bug,解决办法是更改浏览器首选语言 没有yum,无法下载网页浏览器w3m,Pydio c ...
- 如何在Loadrunner11中解决HTTP BASIC认证登录报401的问题
在对Carte+kettle的性能测试过程中,通过在loadrunner中用web_set_user("cluster", "cluster","17 ...