App Store 狠抓精神文明建设,JSPatch要亡了?

据悉,近日美国苹果公司响应党的号召,为了实现了社区文明和谐,各项事业全面发展,狠抓精神文明建设。将形成组织领导、定期引导、精准对标、适时检查、总结提高等五项机制,确保创建工作规范化、科学化、常态化。 ---来自老司机的前线报道

事情的主要起因在 App Store Review Guide Line 的 2.5.2 这条:

2.5.2 Apps should be self-contained in their bundles, and may not read or write data outside the designated container area, nor may they download, install, or execute code, including other iOS, watchOS, macOS, or tvOS apps.

这条是在16年WWDC之后更新上去的。这条规则也很容易理解,所有被执行的代码都应该包含在App里,不能下载代码到本地执行。下发的无论是OC还是JS或者其他形式的代码,都可以被认为违反了这条规则。但是苹果一直没有严格“执法”,直到今天才开始给大批有类似嫌疑的开发者发了警告邮件,或者纷纷被拒。

当然这没有什么可怪的,这种执行力度全靠心情,毕竟爸爸从来不用讲道理。不时也会父爱如山。

父爱如山

根据看到的反馈,目前苹果判断的依据主要有两条。
一种是扫描特定的 API ,比如:

dlopen(), dlsym(), respondsToSelector:, performSelector:, method_exchangeImplementations()

但是这里并不是完全禁止使用这些 API ,只是有个规则会检查这些 API 的参数是不是可能是外部引入的。
比如这么写是没问题的:

if([self.delegate respondsToSelector: @selector(myDelegateMethod)]) {
   [self.delegate performSelector: @selector(myDelegateMethod)];
}

这么写就可能被打回:

NSString *remotelyLoadedString = .... (download from your backend)
[self performSelector: NSSelectorFromString(remotelyLoadedString)];

另外会检查特定的类名,比如大家都知道的JSPatch和Rollout,发现APP里带了这样有潜在威胁的库就可能打回。但是这个方式似乎通过混淆就能过关。


不懂为什么提到JSPatch我就想发个表情,印象中过去某个时间段也有被这样提示被下架,后来又放松了。内心 OS :“皇上!我是被冤枉的!。”


紫薇,快救我

对未来的判断

苹果是百分百不愿意代码绕过审核被下发的。无论是修bug,还是一个小功能,高冷的资本主义企业怎么能让你乱蹭,万一你进去了呢。其实我国国情特殊,真要是什么违法的东西上了苹果也遭不住,搞不好App Store都要下线。

道高一尺魔高一丈,程序执行起来总是要有漏洞。没错,是可以和官方博弈,但是你想一下下发代码这件事是不是真的影响到App运行非做不可?如果代价提高呢?比如被发现一次直接封掉你的Apple ID,觉得还是非做不可?

聪明的人已经在如何提APP稳定性的道路上努力了。忘了HotPatch这件事吧。


RN&Weex 还能续一轮命

从各方的反馈来看,苹果这轮狠抓的是下发代码,而不是针对用 JS 代码编写业务逻辑。如果觉得这个有问题,就会把 JSCore 的一些核心 API 改为私有 API 了。只是在这个风口,基于这个技术的框架刚好很容易就提供了下发代码执行逻辑的能力,所以被推到灯光下。
我之前有次也问过Weex的负责人,他明确表示 Weex 不是为了解决热更新的问题存在的。只是恰巧有这个能力。
苹果在 iOS 7中引入新的 JavaScriptCore 框架,必然是认为在 APP 里执行 JS 对于整个 iOS 生态是有益的,否则何必多此一举。所以目前只是要解决掉引入这个框架后带来的滥用问题。 所以我认为这一轮的整治里,JS2Native 的框架肯定可以全身而退。

Swift ?

有人说有没可能是苹果在为 Swift 下一步很大的棋。为了确认此事某好事网友咨询了 Swift 之父CL:



爸爸口风很紧表示:


共建和谐社会

来,让我们一起表态:我志愿与美方一道建设和谐的 App Store 生态。


最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
  • 序言:七十年代末,一起剥皮案震惊了整个滨河市,随后出现的几起案子,更是在滨河造成了极大的恐慌,老刑警刘岩,带你破解...
    沈念sama阅读 158,233评论 4 360
  • 序言:滨河连续发生了三起死亡事件,死亡现场离奇诡异,居然都是意外死亡,警方通过查阅死者的电脑和手机,发现死者居然都...
    沈念sama阅读 67,013评论 1 291
  • 文/潘晓璐 我一进店门,熙熙楼的掌柜王于贵愁眉苦脸地迎上来,“玉大人,你说我怎么就摊上这事。” “怎么了?”我有些...
    开封第一讲书人阅读 108,030评论 0 241
  • 文/不坏的土叔 我叫张陵,是天一观的道长。 经常有香客问我,道长,这世上最难降的妖魔是什么? 我笑而不...
    开封第一讲书人阅读 43,827评论 0 204
  • 正文 为了忘掉前任,我火速办了婚礼,结果婚礼上,老公的妹妹穿的比我还像新娘。我一直安慰自己,他们只是感情好,可当我...
    茶点故事阅读 52,221评论 3 286
  • 文/花漫 我一把揭开白布。 她就那样静静地躺着,像睡着了一般。 火红的嫁衣衬着肌肤如雪。 梳的纹丝不乱的头发上,一...
    开封第一讲书人阅读 40,542评论 1 216
  • 那天,我揣着相机与录音,去河边找鬼。 笑死,一个胖子当着我的面吹牛,可吹牛的内容都是我干的。 我是一名探鬼主播,决...
    沈念sama阅读 31,814评论 2 312
  • 文/苍兰香墨 我猛地睁开眼,长吁一口气:“原来是场噩梦啊……” “哼!你这毒妇竟也来了?” 一声冷哼从身侧响起,我...
    开封第一讲书人阅读 30,513评论 0 198
  • 序言:老挝万荣一对情侣失踪,失踪者是张志新(化名)和其女友刘颖,没想到半个月后,有当地人在树林里发现了一具尸体,经...
    沈念sama阅读 34,225评论 1 241
  • 正文 独居荒郊野岭守林人离奇死亡,尸身上长有42处带血的脓包…… 初始之章·张勋 以下内容为张勋视角 年9月15日...
    茶点故事阅读 30,497评论 2 244
  • 正文 我和宋清朗相恋三年,在试婚纱的时候发现自己被绿了。 大学时的朋友给我发了我未婚夫和他白月光在一起吃饭的照片。...
    茶点故事阅读 31,998评论 1 258
  • 序言:一个原本活蹦乱跳的男人离奇死亡,死状恐怖,灵堂内的尸体忽然破棺而出,到底是诈尸还是另有隐情,我是刑警宁泽,带...
    沈念sama阅读 28,342评论 2 253
  • 正文 年R本政府宣布,位于F岛的核电站,受9级特大地震影响,放射性物质发生泄漏。R本人自食恶果不足惜,却给世界环境...
    茶点故事阅读 32,986评论 3 235
  • 文/蒙蒙 一、第九天 我趴在偏房一处隐蔽的房顶上张望。 院中可真热闹,春花似锦、人声如沸。这庄子的主人今日做“春日...
    开封第一讲书人阅读 26,055评论 0 8
  • 文/苍兰香墨 我抬头看了看天上的太阳。三九已至,却和暖如春,着一层夹袄步出监牢的瞬间,已是汗流浃背。 一阵脚步声响...
    开封第一讲书人阅读 26,812评论 0 194
  • 我被黑心中介骗来泰国打工, 没想到刚下飞机就差点儿被人妖公主榨干…… 1. 我叫王不留,地道东北人。 一个月前我还...
    沈念sama阅读 35,560评论 2 271
  • 正文 我出身青楼,却偏偏与公主长得像,于是被迫代替她去往敌国和亲。 传闻我的和亲对象是个残疾皇子,可洞房花烛夜当晚...
    茶点故事阅读 35,461评论 2 266

推荐阅读更多精彩内容