JSPatch
05 Jul 2016
前言
JSPatch用的越来越广泛。先记录下集成及使用的方式。由于公司没有提供专门的接口获取js脚本,而且也没有安全的访问方式,所以还是先试用JSPatch平台来实现吧。官方的文档写的很清楚,只记录遇到的坑。
集成
坑一:
我下载的时候提示是这个样子。
我还纳闷怎么没有压缩,于是没考虑就选择了使用.framework的后缀名。这是个大坑。
下载完拖入项目怎么搞都不对,我就怀疑难道framework不用暴露头文件的么。
折腾了好久,在我下载第三次的时候,注意到了让我选择扩展名的步骤,这时候使用.zip扩展名下载,然后解压,终于看到了期盼已久的头文件。
坑二:
SDK接入既有截图又有中文。我遇到的坑是,因为之前已经导入过 libz.dylib
和 JavaScriptCore.framework
,所以在公司项目中使用的时候就没注意这一步。接下来自己新建个项目同样的步骤就忽略了这一步,哎。
使用
使用也写得很清楚:JSPatch 基础用法。但我还是遇到了坑。
坑一:服务器获取脚本和本地获取脚本方法不能同时使用,在输出的错误中能够看到,很容易解决。
[JSPatch startWithAppKey:appKey];
// [JSPatch testScriptInBundle];
坑二:开发预览的使用。在这里其实写了开发预览的特性。使用这个特性要在发布补丁时选择==开发预览==,才能下载到补丁。
#ifdef DEBUG
[JSPatch setupDevelopment];
#endif
打印的相关调试日志:
2016-07-07 09:55:39.452 test[35534:5943510] JSPatch: request http://7xkfnf.com1.z0.glb.clouddn.com/dev/43216a544ad73f6c/1.0?v=1467856539.452447
可以看到比正常路径多了 dev
,如果不注意就会忽略请求不到补丁的情况。
类似的,版本号也号也会对应着目录。新建补丁时的版本号不能乱来。