日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 前端技术 > javascript >内容正文

javascript

JSPatch使用

發布時間:2023/12/29 javascript 31 豆豆
生活随笔 收集整理的這篇文章主要介紹了 JSPatch使用 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.

JSPatch 是一個開源項目(Github鏈接),只需要在項目里引入極小的引擎文件,就可以使用 JavaScript 調用任何 Objective-C 的原生接口,替換任意 Objective-C 原生方法。目前主要用于下發 JS 腳本替換原生 Objective-C 代碼,實時修復線上 bug。

?

集成 SDK
1、通過 cocoapods 導入
在 podfile 中添加命令:
pod 'JSPatchPlatform', :git => 'https://github.com/bang590/JSPatchPlatform.git'
再執行 pod install 即可。
2、手動導入

下載 SDK 后解壓,將** JSPatchPlatform.framework** 拖入項目中,勾選 "Copy items if needed",并確保 "Add to targets" 勾選了相應的 target。

pods 導入或手動導入SDK后添加依賴框架:TARGETS -> Build Phases -> Link Binary With Libraries -> + 添加libz.dylib(Xcode7之后是libz.tbd)和 JavaScriptCore.framework。

測試使用

1、測試本地腳本

本地測試?AppDelegate.m?按如下寫法即可,SDK 提供了+testScriptInBundle?方法用于開發狀態下測試。

然后在我們的 demo 中新建一個?empty?文件,叫 main.js,注意這是 JSPatch 平臺規范,js 腳本文件名必須是 main.js。

?

?

現在我們就可以通過在 main.js 寫 js 修復 demo 中的 bug,代碼如下:

defineClass('ViewController', {createJsPatchDemo: function() {console.log("全市污水處理廠在線監控系統9項指標運營維護項目");}, });

?

2、線上版本測試

熱修復針對的是線上版本,所以本地測試只是驗證可行性,重要的還是線上 bug 的修復。下面我們進行線上測試。
到?JSPatch官網?注冊,登錄,我的 App,添加 App,獲取 app key,添加 App 版本,發布補丁.

?

- (BOOL)application:(UIApplication *)application didFinishLaunchingWithOptions:(NSDictionary *)launchOptions {// Override point for customization after application launch./** */[JSPatch startWithAppKey:@"1b823abb1c059409"];[JSPatch setupRSAPublicKey:@"-----BEGIN PUBLIC KEY-----\nMIG0GKBgQDo9OLb7RYBCsST0Nq7EPRmfcAt\nZ4W6dhPE3Lrew+0JfiUCiTt2ruhPXQLSJN2OcGKVV4eXXR1KxI6BC3yBZvoXF\n/tQ/rIsMgknHMYGnh817tYAq/SSLu6BhfygK40\n6Ixyha1mbfQJwIDAQAB\n-----END PUBLIC KEY-----"];// [JSPatch setupDevelopment];[JSPatch sync];//檢查補丁更新/*用于發布前測試腳本。先把腳本放入項目中,調用后,會在當前項目的 bundle 里尋找 main.js 文件執行測試完成后請刪除,改為調用 +startWithAppKey: 和 +sync[JSPatch testScriptInBundle];*/self.window =[[UIWindow alloc] initWithFrame:[UIScreen mainScreen].bounds];self.window.backgroundColor=[UIColor whiteColor];[self.window makeKeyAndVisible];ViewController *vCont=[[ViewController alloc]init];UINavigationController *nav =[[UINavigationController alloc]initWithRootViewController:vCont];self.window.rootViewController = nav;return YES; }

注意:+testScriptInBundle不能與+startWithAppKey:一起調用,+testScriptInBundle只用于本地測試,測試完畢后需要去除,項目中的 main.js 文件也要刪除(可拷貝一份至桌面留作上傳的補丁使用)。另外,通過 JSPatch 平臺上傳的腳本文件都會保存在七牛云存儲上,而七牛云存儲的下載使用的是 http 協議,因此需要在項目的 info.plist 文件中添加如下字段.

通過測試如果項目中其他沒有網絡請求,最新的“補丁”不會被及時下載更新。

?

有OC轉換工具:轉換JS:?轉換JS

平臺原理詳解:如何使用補丁語言:補丁語言

?

總結

以上是生活随笔為你收集整理的JSPatch使用的全部內容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。

主站蜘蛛池模板: 大吊一区二区三区 | 日韩国产电影 | 亚洲女则毛耸耸bbw 边吃奶边添下面好爽 | 国产日韩欧美视频 | 久久综合国产精品 | 黑人巨大精品欧美一区二区免费 | 亚洲欧美天堂 | 一二区在线观看 | 91美女在线视频 | 蜜桃成人无码区免费视频网站 | 九九热免费在线视频 | 成人欧美一区二区三区黑人孕妇 | 九七av| 成人公开免费视频 | a级片日本 | 国产在线中文 | 懂色aⅴ一区二区三区免费 国产精品99在线观看 | 国产日本欧美在线观看 | 成人性毛片 | 毛片内射久久久一区 | 色天天av| 高潮毛片7777777毛片 | 久久久在线免费观看 | 少妇高潮迭起 | 中文字幕在线播放不卡 | 恶虐女帝安卓汉化版最新版本 | 丁香六月色婷婷 | 久久狠狠爱 | 你懂的在线观看视频 | 健身教练巨大粗爽gay视频 | 国产精品一线二线三线 | 免费观看成人在线视频 | 在线观看jizz | 日日日操操操 | 国产精品久久久久久久久久辛辛 | 97久久国产 | 日韩欧美网站 | 青娱乐在线播放 | 性v天堂| 欧美一区二区三区黄色 | 好吊视频一区二区三区四区 | 日本人体一区 | 一级片大片| 国产98在线 | 成人av中文字幕 | 在线观看中文字幕亚洲 | 免费欧美 | 日韩视频网址 | 一级全黄裸体片 | 国产精品第二十页 | 亚洲国语| 在线观看视频一区二区三区 | 美女天天干 | 偷拍视频一区二区 | 一级黄在线观看 | 丝袜av网站 | 自偷自拍av| 男女裸体影院高潮 | 亚洲自拍偷拍一区二区 | a视频在线免费观看 | 久草资源网 | 麻豆一区二区 | 日本伊人影院 | 69精品在线 | 一区二区三区四区影院 | 日本在线视频观看 | 自拍视频一区二区 | 极品尤物一区二区三区 | 一区二区三区在线免费播放 | 中文字幕日韩一区二区 | 日本十八禁视频无遮挡 | www亚洲天堂 | 日本黄色xxxx| 精品一区二区在线视频 | 日韩有码在线视频 | 熟女熟妇伦久久影院毛片一区二区 | 九九视频免费看 | 日韩av毛片 | 秋霞在线观看视频 | 精品国产乱码一区二区三区99 | 国产情侣一区 | 精品66| 极品销魂美女一区二区三区 | 94av| 国产夫妇交换聚会群4p | 日韩成人免费av | 在线视频免费播放 | 国产尤物在线 | 果冻av在线| 宇都宫紫苑在线播放 | 日本一级吃奶淫片免费 | 伊人伊人鲁 | 69毛片| a√天堂资源在线 | 亚洲一区二区高清 | 久久精品美女 | 韩国三级av | 亚洲一区二区三区电影在线观看 | 国产传媒av |