首页
学习
活动
专区
工具
TVP
发布
精选内容/技术社群/优惠产品,尽在小程序
立即前往

JSPatch 实现原理详解

JSPatch 是一个 iOS 动态更新框架,只需在项目中引入极小的引擎,就可以使用就可以使用 JavaScript 调用任何 Objective-C 原生接口,获得脚本语言的优势:为项目动态添加模块,...微信 iOS 客户端使用了 JSPatch,本篇文章详细阐述 JSPatch 的实现原理和一些细节,以帮助使用者更好地了解和使用 JSPatch。文章较长,建议在 PC / Mac 观看。...4.新增方法 i.方案 在 JSPatch 刚开源时,是不支持为一个类新增方法的,因为觉得能替换原生方法就够了,新的方法纯粹添加在 JS 对象上,只在 JS 端跑就行了。...总结 JSPatch 的原理以及一些实现细节就阐述到这里,因为公众号字数限制的关系,还有一章细节方面的解析没在这里放上,有兴趣的请点击[阅读原文]到 github 上看完整版本。...希望这篇文章对大家了解和使用 JSPatch 有帮助,欢迎在 github 一起参与开发完善 JSPatch: https://github.com/bang590/JSPatch

3.5K80
  • 您找到你想要的搜索结果了吗?
    是的
    没有找到

    JSPatch Platform平台的简单使用

    https://blog.csdn.net/u010105969/article/details/52625197 JSPatch Platform是JSPatch的一个平台,使用此平台是为了使用...JSPatch,如果大家不了解JSPatch可以网上搜一下,有很多专业的解释,我这里只做一些简单的介绍。...根本原理:利用OC的动态语言特性去动态修改类的方法实现 实现巧妙之处:利用了OC的消息转发机制 要使用JSPatch是需要一个JSPatch平台的,那么什么是JSPatch平台?...JSPatch Platform就是一个第三方的JSPatch平台,这里就简单滴说说如何使用此平台。(这不是打广告!这不是打广告!这不是打广告!)...首先需要登录官网注册 (http://jspatch.com),成为它的一个用户。然后就可以添加自己要使用JSPatch的App了。

    57320

    【Dev Club分享】JSPatch成长之路

    目前普遍用于实时修复 bug,已有超过2500个 APP 接入,本次分享介绍 JSPatch 发展过程中遇到的问题和解决思路。...(此内容已在 GMTC 线下分享过,本次重新整理为线上分享) 内容大体框架: 起步:介绍 JSPatch 的诞生和当时碰到的难题 发展:介绍 JSPatch 如何补全周边功能变得更好用 下一步:介绍 JSPatch...客户端拿到脚本和加密后的MD5值,用存在客户端的公钥进行解密,拿到服务端计算的MD5值,本地再计算一遍脚本文件的MD5值,对比这两个值是否一致,若一致则表示传输过程中没有篡改。...对此我搭建了 JSPatch 平台 (http://JSPatch.com), 让使用 JSPatch 的人不需要搭建后台,直接通过平台下发补丁代码。 ?...Q4: 对于 JSPatch 资源更新服务平台还是表示一些担忧,如果别人攻破了,岂不是很多 APP 都受牵连了? JSPatch 平台就算平台被人黑了,也无法对平台上的 APP 下发恶意代码。

    1.6K40

    教你如何处理苹果App Store审核多次拒和警告的情况下通过审核

    内部审核渠道人员教你如何处理苹果App Store审核多次拒和警告的情况下通过审核 We will reject apps for any content or behavior that we...此次调整后审核流程加强了 自动化扫描关键字 的能力,我们团队一个月内连续两个版本、三个APP,提审近30次拒。...审核出来会直接导致严厉处罚,而不仅仅是审核拒绝。 有人说“防审核”与“ABTest”,审核员怎么区分呢?首先,审核员就像美国的大法官,他说有罪就是有罪。...2.下架app、封停itunes账号 下架app和封停itunes账号,具体时长官方没有说明,网上的说法从几天到几个月不等(360当年苹果下架封号好几个月,也有人说1年) 申诉 对拒的app,采用申诉的办法可以将...所以JSPatch中枪被封杀,ReactNative热更新存活。 但这只是目前,以后如何发展尚不明确。

    8.3K00

    iOS中动态更新补丁策略JSPatch运用基础一

    iOS中动态更新补丁策略JSPatch运用基础         JSPatch是GitHub上一个开源的框架,其可以通过Objective-C的run-time机制动态的使用JavaScript调用与替换项目中的...                    view.addSubview(label);                     return view;             }     }); 运行工程,可以看到genView方法替换成了...js文件中的方法,原本红色的视图修改成了绿色。...例如,如果想要通过JavaScript代码在项目中弹出一个警告框,在Objective-C代码中插入如下代码: - (void)viewDidLoad {     [super viewDidLoad]...通过上面的示例,我们发现使用JSPatch可以做一些十分有趣的事。

    87820

    Bugly 针对 Apple 审核规则调整的使用公告

    昨天早上,很多 iOS 开发者们陆续收到苹果的警告邮件,如下图: ?...iOS 应用开发常用的热更新方案有:JSPatch,React Native(RN),Weex,以及国外的 Rollout。...截至目前,开发者们发现苹果主要禁止的是 JSPatch 和 Rollout 两家,以及集成了 JSPatch 的第三方 SDK,如个推,高德等,因其可以通过 JS 脚本来调用和替换任意 OC 方法。...Rollout 的 CEO 的官网声明 JSPatch 作者 bang 也在今天发表博客回应,建议开发者短时间内先不要使用 JSPatch,后续再看情况,并希望可以跟苹果审核团队协商解决此事,毕竟热更新的需求很大...博客链接:http://blog.cnbang.net/internet/3374/ Bugly 针对 Apple 审核规则调整的使用公告 我们近期上线的 Bugly iOS 热更新 SDK 内也集成了 JSPatch

    2.6K40

    iOS之JSPatch 热补丁实时修复bug

    若程序出了bug,往往需要走一下 步骤: 修改代码--打包--提交审核(--审核拒--修改代码--再次提交审核)--用户更新。 需要很长一个周期才能解决问题。...而JSPatch的出现,有效的解决了这一尴尬的局面。 热修复 一种即时修复bug的技术,也叫hotfix。 什么是JSPatch?...步骤如下: 第一步:在JSPatch平台注册一个帐号; 第二步:创建一个app; 第三步:下载JSPatch SDK,这个跟github上的不一样,github上的是开源的,不带代码下发服务器的。...在JSPatch初始化的方法中,打开沙盒测试方法[JSPatch testScriptInBundle];,并注释掉其他JSPathch方法。...运行程序,该测试方法会自动在沙盒下寻找main.js文件并执行,以验证bug是否修复。 第八步:下发补丁 在上一步补丁有效性验证成功之后,去JSPatch平台下发补丁。

    57310

    公司网站百度网址安全中心 警告 该怎么取消拦截

    的红色风险提示,瞬间公司在百度里无法打开,本身网站还做着百度推广,直接跳转到博彩网站上去了,给公司带来了很大的损失,于是一大早的开始着手处理,如何取消百度网址安全中心的警告拦截。...如下图所示: 然后点击进去会直接百度拦截,提示什么:百度网址安全中心提醒您:该页面可能已被非法篡改!...通过上面发现的网站种种情况,我觉得是网站被黑了,随即我就登录了服务器,进去查看网站的程序代码,果然发现了问题,网站首页的源代码竟然注入了一些加密的内容,如下图: 通过站长工具解码,内容竟然是北京赛车...接下来就是要解决网站为何被黑,为何首页修改?...申诉理由:我司网站被黑,导致植入恶意内容,紧接百度网站安全中心提醒,现网站漏洞已修复,请帮忙解除,取消提醒。 联系邮箱:QQ邮箱就可以。 申诉类型:非经营性网站。

    2.9K10

    闲谈 iOS 的动态化

    这篇文章不聊具体的技术内容,只是蹭蹭今天 iOS 领域最大的一个热点,关于一些应用收到 Apple 警告的问题。...我今天刚起床的时候,iOS 圈就炸锅了,很多开发者纷纷表示收到了 Apple 的警告邮件,邮件内容在网上随处可看,在这里我就不贴了。...大体意思是说该应用使用了一些动态技术,让应用在审核之后出现一些不一样的功能,从而越过审核去实现更新,警告开发者对代码进行一些检查,去掉这样的实现。...JSCore 推出不久之后,一个更优秀的项目诞生了:由 bang 写的 JSPatch。...# 吊胃口的 DynamicCocoa 和 OCScript 这个其实没有太多好说的,毕竟大家的胃口已经吊的差不多了,而且按这个样子应该会继续吊下去。

    58020
    领券