2016-12-29 58 views
3

目前,我們有一個應用程序在App Store,它的大小是根據到iTunes連接如下:爲什麼我們的應用程序規模急劇增加,功能變化不大?

iPhone 6:下載大小21.8MB,安裝大小28.5MB

現在,這是不是太糟糕。但與較新的版本,我們已經上傳到iTunes連接,大小是這樣的:

iPhone 6:下載大小35.5MB,安裝大小73.1MB

和原來的壓縮包大小爲114MB。

現在這太大了,甚至是不可接受的。我檢查了檔案內的.app文件(這是178MB),並且令人驚訝地發現,我的代碼僅需55MB(在調試模式下僅爲11MB),而且快速標準庫大約爲40MB。

該版本的代碼功能與之前沒有多大差別:我們添加了iPad支持,添加了幾張圖片(調試和發佈歸檔文件中的資產爲7.8MB,這不是問題),並且已更新我們的項目迅速3.

以上所有版本的大小都與整個模塊優化打開。在我的構建設置中可能會出現配置,這可能會導致這個龐大的大小?如果不是,我還能做些什麼來儘可能地減小應用程序的大小?(特別是50MB代碼)

此外,這是什麼原因?它很快3,因爲我們沒有太多改變我們的代碼?

+2

你有BitCode的問題嗎?看看這裏:http://stackoverflow.com/questions/32588757/after-switching-to-xcode-7-app-size-grew-from-9-mb-to-60-mb-is-there-a - 以及在這裏:http://stackoverflow.com/questions/37280325/are-testflight-app-sizes-bloated-by-a-large-amount-compared-to-actual-download-s – Yohst

+0

這不是斯威夫特3.我的應用程序跨Swift 2.2和3個更新,並沒有真正增長。這聽起來像你一直在仔細考慮你所檢查的內容。你沒有提到的東西 - 對第三方代碼的依賴?你的應用程序包中的任何特定組件可能會解決這個問題? – dfd

+0

@dfd是的,我們確實使用了很多豆莢,但是我已經在存檔中檢查了所有這些豆莢,它們共佔用了大約5 MB的空間。 – Edward

回答

2

我們在之前的應用程序中也面臨這樣的問題。那時我們會採取以下步驟來檢查應用程序的哪一部分佔用更多空間。

1)複製歸檔生成的最終IPA文件。

2)重命名 「application.ipa」 到 「application.zip」

3)解壓縮application.zip文件。

4)打開unzip文件夾,在「Payload」文件夾中找到「application.app」文件。 5)右鍵單擊「application.app」文件並選擇「顯示包裝內容」。

6)點擊後,您將看到最終應用程序包中添加的所有文件的列表。

從該文件列表中,您可以看到哪個文件正在佔用較大的空間並據此採取行動。

  • Assets.car:它用於在應用程序中添加圖像資產。
  • 框架:您在代碼中添加的所有框架列表。
  • file_name.nib:此文件是爲您的項目中添加的xibs。
  • file_name.storyboardc:此文件是爲您的項目添加 您的Storyborad文件。
  • 除此之外,他們將列出字體,圖像,視頻,捆綁, 等文件。

從這些步驟你可以得到一個想法是造成大小的原因。

+0

這就是我所做的,並發現我們的代碼沿着50MB加上了快速標準庫40M。但奇怪的是,以調試模式編譯的應用程序只有11MB的代碼和20MB的庫 – Edward

+0

此外,事情並沒有那麼大。 – Edward

+0

與在調試模式下一樣,xcode是爲特定設備創建的,這就是爲什麼調試版本的體積更小。但是我們不能確定基於構建的大小,因爲大小在app store中顯示的對於不同的設備是不同的。 應用程序大小取決於您的資產和庫,我們不會對庫進行任何更改,但對於資產我們可以進行一些改進。要在不影響圖像質量的情況下縮小圖像尺寸,可以使用「https://tinypng.com/」 另一個因素是我們在創建使用實現IPA時啓用位代碼的情況。根據Yohst的評論 –

相關問題