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 :“皇上!我是被冤枉的!?!?/p>

紫薇,快救我

對未來的判斷

蘋果是百分百不愿意代碼繞過審核被下發的。無論是修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閱讀 229,963評論 6 542
  • 序言:濱河連續發生了三起死亡事件,死亡現場離奇詭異,居然都是意外死亡,警方通過查閱死者的電腦和手機,發現死者居然都...
    沈念sama閱讀 99,348評論 3 429
  • 文/潘曉璐 我一進店門,熙熙樓的掌柜王于貴愁眉苦臉地迎上來,“玉大人,你說我怎么就攤上這事。” “怎么了?”我有些...
    開封第一講書人閱讀 178,083評論 0 383
  • 文/不壞的土叔 我叫張陵,是天一觀的道長。 經常有香客問我,道長,這世上最難降的妖魔是什么? 我笑而不...
    開封第一講書人閱讀 63,706評論 1 317
  • 正文 為了忘掉前任,我火速辦了婚禮,結果婚禮上,老公的妹妹穿的比我還像新娘。我一直安慰自己,他們只是感情好,可當我...
    茶點故事閱讀 72,442評論 6 412
  • 文/花漫 我一把揭開白布。 她就那樣靜靜地躺著,像睡著了一般。 火紅的嫁衣襯著肌膚如雪。 梳的紋絲不亂的頭發上,一...
    開封第一講書人閱讀 55,802評論 1 328
  • 那天,我揣著相機與錄音,去河邊找鬼。 笑死,一個胖子當著我的面吹牛,可吹牛的內容都是我干的。 我是一名探鬼主播,決...
    沈念sama閱讀 43,795評論 3 446
  • 文/蒼蘭香墨 我猛地睜開眼,長吁一口氣:“原來是場噩夢啊……” “哼!你這毒婦竟也來了?” 一聲冷哼從身側響起,我...
    開封第一講書人閱讀 42,983評論 0 290
  • 序言:老撾萬榮一對情侶失蹤,失蹤者是張志新(化名)和其女友劉穎,沒想到半個月后,有當地人在樹林里發現了一具尸體,經...
    沈念sama閱讀 49,542評論 1 335
  • 正文 獨居荒郊野嶺守林人離奇死亡,尸身上長有42處帶血的膿包…… 初始之章·張勛 以下內容為張勛視角 年9月15日...
    茶點故事閱讀 41,287評論 3 358
  • 正文 我和宋清朗相戀三年,在試婚紗的時候發現自己被綠了。 大學時的朋友給我發了我未婚夫和他白月光在一起吃飯的照片。...
    茶點故事閱讀 43,486評論 1 374
  • 序言:一個原本活蹦亂跳的男人離奇死亡,死狀恐怖,靈堂內的尸體忽然破棺而出,到底是詐尸還是另有隱情,我是刑警寧澤,帶...
    沈念sama閱讀 39,030評論 5 363
  • 正文 年R本政府宣布,位于F島的核電站,受9級特大地震影響,放射性物質發生泄漏。R本人自食惡果不足惜,卻給世界環境...
    茶點故事閱讀 44,710評論 3 348
  • 文/蒙蒙 一、第九天 我趴在偏房一處隱蔽的房頂上張望。 院中可真熱鬧,春花似錦、人聲如沸。這莊子的主人今日做“春日...
    開封第一講書人閱讀 35,116評論 0 28
  • 文/蒼蘭香墨 我抬頭看了看天上的太陽。三九已至,卻和暖如春,著一層夾襖步出監牢的瞬間,已是汗流浹背。 一陣腳步聲響...
    開封第一講書人閱讀 36,412評論 1 294
  • 我被黑心中介騙來泰國打工, 沒想到剛下飛機就差點兒被人妖公主榨干…… 1. 我叫王不留,地道東北人。 一個月前我還...
    沈念sama閱讀 52,224評論 3 398
  • 正文 我出身青樓,卻偏偏與公主長得像,于是被迫代替她去往敵國和親。 傳聞我的和親對象是個殘疾皇子,可洞房花燭夜當晚...
    茶點故事閱讀 48,462評論 2 378

推薦閱讀更多精彩內容