一区二区三区三上|欧美在线视频五区|国产午夜无码在线观看视频|亚洲国产裸体网站|无码成年人影视|亚洲AV亚洲AV|成人开心激情五月|欧美性爱内射视频|超碰人人干人人上|一区二区无码三区亚洲人区久久精品

0
  • 聊天消息
  • 系統(tǒng)消息
  • 評論與回復(fù)
登錄后你可以
  • 下載海量資料
  • 學(xué)習(xí)在線課程
  • 觀看技術(shù)視頻
  • 寫文章/發(fā)帖/加入社區(qū)
會員中心
創(chuàng)作中心

完善資料讓更多小伙伴認(rèn)識你,還能領(lǐng)取20積分哦,立即完善>

3天內(nèi)不再提示

Xcode棄用Bitcode,導(dǎo)致應(yīng)用體積大幅增加

OSC開源社區(qū) ? 來源:OSC開源社區(qū) ? 作者:OSC開源社區(qū) ? 2022-11-15 11:40 ? 次閱讀
加入交流群
微信小助手二維碼

掃碼添加小助手

加入工程師交流群

Emerge 是一個(gè)監(jiān)測和減少應(yīng)用程序大小的平臺,可以持續(xù)監(jiān)測并分析應(yīng)用程序二進(jìn)制大小,幫助開發(fā)者編寫更小、更好的代碼。近日 Emerge 發(fā)布了一份報(bào)告,顯示最新版本的 Xcode 存在會無意中增加應(yīng)用程序體積的問題。

Xcode 14 于今年 9 月份正式發(fā)布,新版本添加了對 Swift 5.7 的支持,并針對 macOS Ventura、iOS/iPadOS 16 等最新系統(tǒng)添加了 SDK,除此之外,新版本 Xcode 的速度更快、體積縮小了 30%、增加的并行性使得構(gòu)建項(xiàng)目的速度提高了 25%,以及長時(shí)間運(yùn)行測試的速度提高了 30%。

但在 Xcode 14 發(fā)布后不久,Emerge 發(fā)現(xiàn)一些 iOS 應(yīng)用程序的體積則是出現(xiàn)了明顯增加,其中從 9 月中旬到 10 月初之間,觀測到:

耐克 iOS 應(yīng)用程序的安裝大小一開始僅為 182.2MB,之后變成了 322.1MB,空間占用增加了 76%

American Airlines(美國航空)從 182.2MB 增加到 389.1MB,增加了 113%

Chime 從 162.8MB 增加到 212.8MB,增加了 31%

b689d40c-6495-11ed-8abf-dac502259ad0.png

在上述這些例子中,應(yīng)用空間占用突然增大都是由于這些應(yīng)用程序首次使用了 Xcode 14 構(gòu)建,而歸根結(jié)底,導(dǎo)致這個(gè)問題發(fā)生的原因就是 Xcode 14 默認(rèn)禁用了 Bitcode。

Xcode 14 更新文檔中寫道:

Xcode 不再默認(rèn)構(gòu)建 Bitcode,在未來的 Xcode 版本中,使用 Bitcode 構(gòu)建的功能將被移除。含有 Bitcode 的 IPA 將在提交給 App Store 之前被剝離 Bitcode。

什么是 Bitcode

Bitcode 是打包應(yīng)用程序的一種方式,它可以在開發(fā)者把應(yīng)用提交到 App Store 后,將部分構(gòu)建過程留給蘋果公司完成,蘋果所做的事情之一是剝離二進(jìn)制符號。

什么是二進(jìn)制符號剝離

二進(jìn)制符號剝離(Binary symbol stripping)是指從二進(jìn)制文件中刪除某些類型的元數(shù)據(jù),這些元數(shù)據(jù)對于在生產(chǎn)中運(yùn)行應(yīng)用程序是非必要的。這些元數(shù)據(jù)在生產(chǎn)前可能是有幫助的,但之后只會讓用戶的手機(jī)變得更加臃腫。

簡單的解釋是,Bitcode 通過剝離二進(jìn)制符號優(yōu)化了生產(chǎn)構(gòu)建。如果不打開 Bitcode,開發(fā)者就需要修改 Xcode 的構(gòu)建設(shè)置,從而以其他方式剝離二進(jìn)制符號。

也就是說,當(dāng)開發(fā)者更新至 Xcode 14 之后,任何依賴 Bitcode 的應(yīng)用程序都不再會從其生產(chǎn)的應(yīng)用程序中剝離二進(jìn)制符號了,這意味著一個(gè)應(yīng)用程序可以在不增加任何功能的情況下出現(xiàn)體積大幅增加的情況。

b693ebae-6495-11ed-8abf-dac502259ad0.png

Emerge 深度分析了耐克的 iOS 端應(yīng)用程序,在 22.35.0 版本中,框架在 191.7MB 的安裝大小中占了 163.7MB。而到了 22.36.1 版本,框架在 322.1MB 的總?cè)萘恐屑ぴ龅?293.8MB。注意在每個(gè)框架中發(fā)現(xiàn)的深藍(lán)色的 "String Table" 的增加。

b6a8577e-6495-11ed-8abf-dac502259ad0.png

通過比較這兩個(gè)版本,可以發(fā)現(xiàn)幾乎所增加的 130MB 的體積都來自于 DYLD.String Tables。這些字符串表本身是非必要的元數(shù)據(jù),而它們現(xiàn)在已經(jīng)進(jìn)入了生產(chǎn)構(gòu)建中。

b6b475ea-6495-11ed-8abf-dac502259ad0.png

兩個(gè)版本應(yīng)用程序的二進(jìn)制符號也從 213.9KB (占應(yīng)用程序總大小的 0.11%)增長到了 127.5 MB(占應(yīng)用程序總大小的 40%)。也就是說耐克 iOS 應(yīng)用程序在沒有任何重大功能變化的同時(shí),增加了 130MB。(上圖:Xcode 14 之前的二進(jìn)制符號大??;下圖:Xcode 14 之后中的二進(jìn)制符號大小)

b6bfb6da-6495-11ed-8abf-dac502259ad0.png

除了上述提到的這些應(yīng)用,此次體積大幅增加的還包括了 Chrome、Amazon、Twitter、Twitch、ESPN 等常用的軟件。

應(yīng)用程序的大小是影響你的應(yīng)用程序的安裝和卸載指標(biāo)的最大因素之一,過于臃腫會降低應(yīng)用安裝率和提升卸載率,尤其是對于手機(jī)空間比較有限的用戶來說更加如此,最終會導(dǎo)致用戶數(shù)量下滑,反過來也影響應(yīng)用活躍度,甚至是收入。對開發(fā)者來說,定期監(jiān)測并了解如何減少應(yīng)用程序的下載和安裝大小是一項(xiàng)重要的任務(wù)。

審核編輯 :李倩

聲明:本文內(nèi)容及配圖由入駐作者撰寫或者入駐合作網(wǎng)站授權(quán)轉(zhuǎn)載。文章觀點(diǎn)僅代表作者本人,不代表電子發(fā)燒友網(wǎng)立場。文章及其配圖僅供工程師學(xué)習(xí)之用,如有內(nèi)容侵權(quán)或者其他違規(guī)問題,請聯(lián)系本站處理。 舉報(bào)投訴
  • 二進(jìn)制
    +關(guān)注

    關(guān)注

    2

    文章

    807

    瀏覽量

    42327
  • 應(yīng)用程序
    +關(guān)注

    關(guān)注

    38

    文章

    3337

    瀏覽量

    59032

原文標(biāo)題:Xcode棄用Bitcode,導(dǎo)致應(yīng)用體積大幅增加

文章出處:【微信號:OSC開源社區(qū),微信公眾號:OSC開源社區(qū)】歡迎添加關(guān)注!文章轉(zhuǎn)載請注明出處。

收藏 人收藏
加入交流群
微信小助手二維碼

掃碼添加小助手

加入工程師交流群

    評論

    相關(guān)推薦
    熱點(diǎn)推薦

    鴻蒙5開發(fā)寶藏案例分享---優(yōu)化應(yīng)用包體積大小問題

    ?** 鴻蒙包體積優(yōu)化實(shí)戰(zhàn):藏在官方文檔里的寶藏技巧!** 大家好呀~我是你們的鴻蒙開發(fā)小伙伴!今天在翻官方文檔時(shí),發(fā)現(xiàn)了一個(gè)超實(shí)用的「包體積優(yōu)化」案例寶藏庫!這些技巧明明能大幅提升應(yīng)用體驗(yàn),卻很
    發(fā)表于 06-13 10:09

    Chiplet商業(yè)化將大幅增加網(wǎng)絡(luò)威脅

    小芯片的商業(yè)化將大大增加硬件遭受攻擊的可能性,這就需要在供應(yīng)鏈的每個(gè)層面采取更廣泛的安全措施和流程,包括從初始設(shè)計(jì)到產(chǎn)品報(bào)廢的整個(gè)過程中的可追溯性。近年來,安全措施方面已取得了長足進(jìn)步,包括從識別
    的頭像 發(fā)表于 05-28 13:48 ?366次閱讀
    Chiplet商業(yè)化將<b class='flag-5'>大幅</b><b class='flag-5'>增加</b>網(wǎng)絡(luò)威脅

    漢威科技車傳感器助力打造智能空氣凈化系統(tǒng)

    汽車,不只是交通工具,更是人們展現(xiàn)新式生活美學(xué)的“第三空間”。汽車空氣質(zhì)量已經(jīng)成為人們的關(guān)注重點(diǎn)之一,車內(nèi)氣味問題很可能導(dǎo)致消費(fèi)者選。
    的頭像 發(fā)表于 05-20 10:19 ?376次閱讀

    請問TapLinx IOS SDK與Xcode 16不兼容嗎?

    /taplinxlibrary.swiftmodule/arm64-apple-ios.swiftmodule 您能否確認(rèn)與 Xcode 16 的兼容性?
    發(fā)表于 04-02 06:19

    在橡膠體積表面電阻率測試過程中,電磁干擾對測試結(jié)果的影響,如何有效屏蔽

    的負(fù)面影響,使測量的電流出現(xiàn)波動(dòng),最終導(dǎo)致測試得到的電阻值偏離真實(shí)值。在強(qiáng)電磁干擾環(huán)境下,測試結(jié)果可能會出現(xiàn)大幅度的偏差,根本無法準(zhǔn)確反映橡膠的電學(xué)性能,這對于依賴測試結(jié)果進(jìn)行產(chǎn)品研發(fā)、質(zhì)量把控的橡膠行業(yè)而言,
    的頭像 發(fā)表于 03-13 13:14 ?346次閱讀
    在橡膠<b class='flag-5'>體積</b>表面電阻率測試過程中,電磁干擾對測試結(jié)果的影響,如何有效屏蔽

    工業(yè)4.0時(shí)代:伺服軸增加推動(dòng)連接器小型化趨勢

    轉(zhuǎn)變不僅帶來了設(shè)備性能的大幅提升,更對連接器等關(guān)鍵組件提出了新的挑戰(zhàn)與要求。 伺服驅(qū)動(dòng)技術(shù)的引入,使得設(shè)備上的伺服軸數(shù)量顯著增加。伺服軸作為設(shè)備運(yùn)動(dòng)控制的核心部件,其數(shù)量的增加直接導(dǎo)致
    的頭像 發(fā)表于 02-08 15:31 ?339次閱讀
    工業(yè)4.0時(shí)代:伺服軸<b class='flag-5'>增加</b>推動(dòng)連接器小型化趨勢

    黃仁勛:英偉達(dá)CoWoS產(chǎn)能將大幅增加

    ,今年英偉達(dá)CoWoS的整體產(chǎn)能將大幅增加,這無疑將為公司的未來發(fā)展注入強(qiáng)勁動(dòng)力。 此外,針對市場上關(guān)于GB200服務(wù)器散熱問題的雜音,黃仁勛也進(jìn)行了回應(yīng)。他指出,Blackwell平臺的散熱技術(shù)相對復(fù)雜,但這也是因?yàn)槠湎到y(tǒng)本身具有高度的復(fù)雜性。目前,Blackwell系
    的頭像 發(fā)表于 01-17 10:33 ?582次閱讀

    消納困難優(yōu)先調(diào)度儲能!減少風(fēng)光-Acrel-2000MG微電網(wǎng)能量管理系統(tǒng)

    調(diào)度機(jī)構(gòu)應(yīng)結(jié)合本地實(shí)際制定新型儲能調(diào)度運(yùn)行細(xì)則,明確新型儲能的調(diào)度關(guān)系。優(yōu)化新型儲能調(diào)度運(yùn)行,發(fā)揮移峰填谷和頂峰發(fā)電作用,增強(qiáng)本地電力供應(yīng)保障能力,實(shí)現(xiàn)應(yīng)用盡。在新能源消納困難時(shí)段優(yōu)先調(diào)度新型儲能,實(shí)現(xiàn)日內(nèi)應(yīng)調(diào)盡調(diào),減少風(fēng)
    的頭像 發(fā)表于 01-07 10:40 ?464次閱讀
    消納困難優(yōu)先調(diào)度儲能!減少<b class='flag-5'>棄</b>風(fēng)<b class='flag-5'>棄</b>光-Acrel-2000MG微電網(wǎng)能量管理系統(tǒng)

    是什么原因導(dǎo)致ADS1262在數(shù)據(jù)吞吐率提高時(shí)會增加它的噪聲?

    請問像ADS1262這種32bit,或者24bit的sigma-delta過采樣adc,是什么原因導(dǎo)致的在數(shù)據(jù)吞吐率提高時(shí)會增加它的噪聲? 1、比如ADS1262我想在輸出數(shù)據(jù)速率4.8Khz
    發(fā)表于 11-26 07:27

    路燈漏電會導(dǎo)致哪些安全隱患

    一、 路燈漏電可能導(dǎo)致的安全隱患包括: ? 觸電事故:路燈漏電可能導(dǎo)致行人或騎行者在不知情的情況下觸電,尤其是在雨后或道路積水的情況下,水分會降低人體的電阻,增加觸電的風(fēng)險(xiǎn)。 ? 設(shè)備損壞:持續(xù)
    的頭像 發(fā)表于 11-20 13:43 ?755次閱讀
    路燈漏電會<b class='flag-5'>導(dǎo)致</b>哪些安全隱患

    PCB層數(shù)增加對成本有哪些影響

    PCB層數(shù)增加的成本影響 層數(shù)與成本的關(guān)系 :通常情況下,PCB的層數(shù)越多,其價(jià)格也越貴。這是因?yàn)閷訑?shù)的增加導(dǎo)致生產(chǎn)步驟(如層壓過程)的數(shù)量增加,從而需要更多的時(shí)間和資源來完成制造過
    的頭像 發(fā)表于 11-07 09:12 ?795次閱讀

    DRAM與NAND閃存價(jià)格大幅下跌

    近期,DRAM和NAND存儲行業(yè)再次遭遇消費(fèi)者需求下滑的沖擊,導(dǎo)致存儲合約價(jià)格在短短一個(gè)月內(nèi)出現(xiàn)大幅下跌。據(jù)分析公司DRAMeXchange的數(shù)據(jù)顯示,DRAM價(jià)格尤其受到重創(chuàng),近一個(gè)月內(nèi)下跌近20%。
    的頭像 發(fā)表于 10-09 17:08 ?890次閱讀

    INA163 4引腳的電壓信號被大幅度衰減是怎么回事?

    中間的是INA163,測試的時(shí)候正常上電,給4引腳接入0.1V正弦電壓信號,在9引腳處測試輸出信號,發(fā)現(xiàn)被大幅度衰減,基本沒有信號,但是5引腳測試時(shí)是正常的,所以想請教一下,可能存在的原因是什么?謝謝
    發(fā)表于 08-30 07:37

    INA826檢測時(shí)出現(xiàn)較大幅度偏移,導(dǎo)致結(jié)果偏大或偏小是什么原因導(dǎo)致的呢?

    電池化成產(chǎn)品上使用許多INA826,用于電池通道電流檢測。目前發(fā)現(xiàn)INA826檢測時(shí)出現(xiàn)較大幅度偏移,導(dǎo)致結(jié)果偏大或偏小,而且檢測通道不固定。請問一下,是什么原因導(dǎo)致的呢?
    發(fā)表于 08-02 07:35

    INA317儀表放大器前級加跟隨器,為什么會導(dǎo)致共模抑制比的大幅度下降呢?

    請問在儀表放大器正極、負(fù)極同時(shí)增加相同規(guī)格的電壓跟隨器,為什么會導(dǎo)致共模抑制比的大幅度下降呢? 如果僅使用儀表放大器INA317,實(shí)測共模抑制比能達(dá)到110dB。而為了增加高輸入阻抗
    發(fā)表于 08-01 06:49