美文网首页
iOS热更新探究

iOS热更新探究

作者: 贝灬小晖 | 来源:发表于2018-05-09 17:22 被阅读99次
  1. 在任意方法前后注入代码的能力,可能的话最好还能替换掉。
  2. 调用任意类/实例方法的能力。

使用 JSContext 开一个接口 然后进行oc方法的调用

聊聊 热更新
numberOfSections(in:)

所以现在有了两套热更新的方案

  1. JSPatch
  2. 使用 JSContext 开一个接口,使用Aspect 切面的调用方法

二期:
看jspatch 脚本下方与使用
在 Mac 终端上执行 openssl,再执行以下三句命令,生成 PKCS8 格式的 RSA 公私钥,执行过程中提示输入密码,密码为空(直接回车)就行。

openssl >

genrsa -out rsa_private_key.pem 1024

pkcs8 -topk8 -inform PEM -in rsa_private_key.pem -outform PEM –nocrypt

rsa -in rsa_private_key.pem -pubout -out rsa_public_key.pem

3.使用私钥下发补丁

下发脚本时,选择本地的 rsa_private_key.pem 文件,与脚本一同上传,JSPatch 平台会使用这个上传的 Private Key 对脚本 MD5 值进行加密,再下发给客户端。若客户端经过上述第二步设置了对应的 Public Key,就会用设置的 Public Key 对脚本进行验证,验证通过后运行脚本,否则不会运行。

这里上传的 rsa_private_key.pem 只是一次性使用,不会保存在服务端,所以只有通过用户自己保存的 rsa_private_key.pem 文件才可以针对 APP 下发脚本,即使 JSPatch 平台或者七牛云被黑,第三方也无法对你的 APP 下发恶意脚本(可以下发,但验证不过,不会执行),保证安全性。rsa_private_key.pem 请妥善保管,避免泄露。

若担心此处私钥在网络传输中暴露,可以使用 JSPatch 补丁打包加密工具,在本地进行加密打包,无需上传私钥即可下发脚本。

相关文章

  • iOS热更新探究

    在任意方法前后注入代码的能力,可能的话最好还能替换掉。 调用任意类/实例方法的能力。 使用 JSContext 开...

  • 浅尝iOS 热更新

    一年前在苹果严打下,iOS热更新就销声匿迹了。虽然热度没那么高,还是值得去试用和探究下。我使用热修补实现了个弹窗功...

  • iOS热更新

    1.所谓热更新就是指代码不通过重新打包提交到APPStore的方式来更新客户端的执行代码。 一种方式:热修复 为什...

  • iOS热更新

    技术: Flutter JSPtatch基本用法 Weex React Native Cordova 动态库

  • iOS-UIWebView、WKWebView、JS、热更新相关

    本篇涵盖JS、UIWebView 、WKWebView,热更新交互热更新相关等. 1.iOS JavaScript...

  • Mac平台iOS CocosCreator热更新功能

    Mac平台iOS CocosCreator热更新功能 下载官方热更新demo 2.3.3版本[https://g...

  • 轻量级低风险 iOS 热更新方案

    轻量级低风险 iOS 热更新方案

  • iOS-性能优化深入探究

    iOS-性能优化深入探究 iOS-性能优化深入探究

  • Android热更新实现方式

    弄完iOS热更新实现方式,空闲时间想去弄弄Android的热更新,寻找一些资料后暂时得出以下热更新方法。尝试几中方...

  • iOS CodePush热更新

    最近在研究热更新的相关内容,看了很多文档,或多或少都有不少的坑没有解释清楚,无法走通,就自己总结了下相关的集成和使...

网友评论

      本文标题:iOS热更新探究

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