2016-06-21 67 views

回答

4

我認爲你很困惑Bitcode究竟是什麼。 Bitcode可以與靜態框架和動態庫一起使用。

Apple docs

位碼是一個編譯的程序的中間表示。您上傳到iTunes Connect的包含位碼的應用程序將在App Store上編譯和鏈接。包括位碼將允許Apple在未來重新優化您的應用程序二進制文件,而無需將新版本的應用程序提交給商店。

大多數庫和框架都是「胖」,這意味着它們包含額外的二進制文件來支持所有體系結構。這意味着iOS框架可能支持armv7,armv7s和i386(所有設備架構和模擬器)。

使用bitcode構建庫允許它支持應用程序細化。這意味着只有適用於應用程序運行架構的二進制文件才能從App Store下載。此外,Crazyrems在評論中提到,這將優化應用程序的安裝和下載大小,因爲設備只會下載應用程序在特定架構/設備上運行所需的資源。

我不會去到有關LLVM IR的細節,但我會建議你閱讀這些文章以供參考:

+1

將安裝也優化了。只有部分爲特定手機架構構建的應用程序將在安裝時下載,這意味着較小的應用程序大小。 – Crazyrems

+0

@Crazyrems謝謝,補充說,作爲我的答案更新。 – JAL

+0

滿意答案。謝謝@JAL – iMHitesh

相關問題