iOS坑:IPA可執(zhí)行文件大小限制

我遇到了什么問題县袱?

Unity要支持IOS 64位浑娜,就要用到IL2CPP。而IL2CPP會將IL代碼轉換成C++代碼式散。在我的項目中筋遭,這些C++代碼達到5000萬行。沒錯暴拄,5000萬行C++代碼漓滔!具體各個版本IL2CPP生成C++代碼對比可參考之前的文章《Unity:IOS可執(zhí)行程序超過80MB問題及各版本IL2CPP對比》

我們的Xcode工程設置為最小iOS SDK版本為6.0乖篷。當向Xcode上傳IPA時响驴,就會提示執(zhí)行文件超過限制,無法上傳撕蔼。

可執(zhí)行文件(Executable)是什么豁鲤?

這里不是說IPA!不是說IPA鲸沮!不是說IPA琳骡!
可執(zhí)行文件大小,并不是指IPA安裝包的大小讼溺,這個在溝通時經常沒搞清楚的問題楣号。

眾所周知,iOS開發(fā)中怒坯,是采用靜態(tài)庫的方式炫狱,所以第三方庫,都會編譯進一個執(zhí)行文件敬肚。所謂可執(zhí)行文件毕荐,是指ipa里的,通過Xcode靜態(tài)編譯Objective-C出來的一個文件艳馒。

拿微信的ipa來舉例:

用壓縮軟件打開IPA憎亚,Payload/MicroMessenger.app/MicroMessenger就是微信的可執(zhí)行文件了

如何查看我的ipa的執(zhí)行文件大小弄慰?

千萬別以為執(zhí)行文件大小=可執(zhí)行文件的解壓后大小

可執(zhí)行文件大小 ≠ 可執(zhí)行文件的解壓后大小
可執(zhí)行文件大小 ≠ 可執(zhí)行文件的解壓后大小
可執(zhí)行文件大小 ≠ 可執(zhí)行文件的解壓后大小

這是一個超級重點第美。要查看蘋果所說的可執(zhí)行文件大小,需要在Mac下使用size命令:

unzip /XXX/AppName.ipa Payload/AppName.app/AppName
size Payload/AppName.app/AppName
可執(zhí)行文件大小是指其中的__TEXT部分

可以看到陆爽,命令會列出32位和64位的程序信息什往,其中__TEXT部分相加,才是我們所說的執(zhí)行文件大小慌闭。

上圖别威,執(zhí)行文件大小85MB躯舔,因為我們使用最低的iOS版本是6.0,因此在iOS 6下省古,就是超過限制了粥庄。

真相

蘋果的規(guī)定是怎樣的呢?

可執(zhí)行文件限制

總結:

  • 執(zhí)行文件大小是指執(zhí)行文件的__TEXT部分
  • 當IOS最低版本小于7.0豺妓,32位+64位最多為80MB惜互;
  • 當IOS大于等于7.0,每個分區(qū)是60MB(并不是指32位+64位最多為120MB琳拭,當32位分區(qū)占用50MB训堆,64位分區(qū)占用61MB,總111MB也不行白嘁,因為64位分區(qū)超出了)坑鱼;
  • 當IOS大于等于9.0,總限制400MB絮缅;

起初姑躲,我把項目的最低iOS版本設置成7.0,就解決問題了盟蚣;
但是,3個月后卖怜,經過各種版本更新后屎开,我們再一次觸犯了大小超過限制的規(guī)定,這時候我們針對IL2CPP的機理進行C#代碼優(yōu)化马靠,減少了大量的IL2CPP代碼生成奄抽。 下回分解。

最后編輯于
?著作權歸作者所有,轉載或內容合作請聯系作者
  • 序言:七十年代末甩鳄,一起剝皮案震驚了整個濱河市逞度,隨后出現的幾起案子,更是在濱河造成了極大的恐慌妙啃,老刑警劉巖档泽,帶你破解...
    沈念sama閱讀 217,277評論 6 503
  • 序言:濱河連續(xù)發(fā)生了三起死亡事件,死亡現場離奇詭異揖赴,居然都是意外死亡馆匿,警方通過查閱死者的電腦和手機,發(fā)現死者居然都...
    沈念sama閱讀 92,689評論 3 393
  • 文/潘曉璐 我一進店門燥滑,熙熙樓的掌柜王于貴愁眉苦臉地迎上來渐北,“玉大人,你說我怎么就攤上這事铭拧≡咧耄” “怎么了恃锉?”我有些...
    開封第一講書人閱讀 163,624評論 0 353
  • 文/不壞的土叔 我叫張陵,是天一觀的道長呕臂。 經常有香客問我破托,道長,這世上最難降的妖魔是什么诵闭? 我笑而不...
    開封第一講書人閱讀 58,356評論 1 293
  • 正文 為了忘掉前任炼团,我火速辦了婚禮,結果婚禮上疏尿,老公的妹妹穿的比我還像新娘瘟芝。我一直安慰自己,他們只是感情好褥琐,可當我...
    茶點故事閱讀 67,402評論 6 392
  • 文/花漫 我一把揭開白布锌俱。 她就那樣靜靜地躺著,像睡著了一般敌呈。 火紅的嫁衣襯著肌膚如雪贸宏。 梳的紋絲不亂的頭發(fā)上,一...
    開封第一講書人閱讀 51,292評論 1 301
  • 那天磕洪,我揣著相機與錄音吭练,去河邊找鬼。 笑死析显,一個胖子當著我的面吹牛鲫咽,可吹牛的內容都是我干的。 我是一名探鬼主播谷异,決...
    沈念sama閱讀 40,135評論 3 418
  • 文/蒼蘭香墨 我猛地睜開眼分尸,長吁一口氣:“原來是場噩夢啊……” “哼!你這毒婦竟也來了歹嘹?” 一聲冷哼從身側響起箩绍,我...
    開封第一講書人閱讀 38,992評論 0 275
  • 序言:老撾萬榮一對情侶失蹤,失蹤者是張志新(化名)和其女友劉穎尺上,沒想到半個月后材蛛,有當地人在樹林里發(fā)現了一具尸體,經...
    沈念sama閱讀 45,429評論 1 314
  • 正文 獨居荒郊野嶺守林人離奇死亡尖昏,尸身上長有42處帶血的膿包…… 初始之章·張勛 以下內容為張勛視角 年9月15日...
    茶點故事閱讀 37,636評論 3 334
  • 正文 我和宋清朗相戀三年仰税,在試婚紗的時候發(fā)現自己被綠了。 大學時的朋友給我發(fā)了我未婚夫和他白月光在一起吃飯的照片抽诉。...
    茶點故事閱讀 39,785評論 1 348
  • 序言:一個原本活蹦亂跳的男人離奇死亡陨簇,死狀恐怖,靈堂內的尸體忽然破棺而出,到底是詐尸還是另有隱情河绽,我是刑警寧澤己单,帶...
    沈念sama閱讀 35,492評論 5 345
  • 正文 年R本政府宣布,位于F島的核電站耙饰,受9級特大地震影響纹笼,放射性物質發(fā)生泄漏。R本人自食惡果不足惜苟跪,卻給世界環(huán)境...
    茶點故事閱讀 41,092評論 3 328
  • 文/蒙蒙 一廷痘、第九天 我趴在偏房一處隱蔽的房頂上張望。 院中可真熱鬧件已,春花似錦笋额、人聲如沸。這莊子的主人今日做“春日...
    開封第一講書人閱讀 31,723評論 0 22
  • 文/蒼蘭香墨 我抬頭看了看天上的太陽。三九已至鉴未,卻和暖如春枢冤,著一層夾襖步出監(jiān)牢的瞬間,已是汗流浹背铜秆。 一陣腳步聲響...
    開封第一講書人閱讀 32,858評論 1 269
  • 我被黑心中介騙來泰國打工淹真, 沒想到剛下飛機就差點兒被人妖公主榨干…… 1. 我叫王不留,地道東北人连茧。 一個月前我還...
    沈念sama閱讀 47,891評論 2 370
  • 正文 我出身青樓趟咆,卻偏偏與公主長得像,于是被迫代替她去往敵國和親梅屉。 傳聞我的和親對象是個殘疾皇子,可洞房花燭夜當晚...
    茶點故事閱讀 44,713評論 2 354

推薦閱讀更多精彩內容