Размер приложения iOS удвоился после обновления фреймворков, поддерживающих биткод

За последний месяц я загрузил две сборки для TestFlight. В ItunesConnect один имеет размер 63 МБ, а другой — 160 МБ! Что еще хуже: на TestFlight он показывает 195 МБ, а что касается других постов, то в App Store он будет вдвое больше!

Фреймворки/библиотеки, которые я использую:

  • Facebook SDK: я включаю FBSDKCoreKit и FBSDKLoginKit. (Просто перетащите .framework элементов в проект.
  • Alamofire, обе версии содержали предварительную ветку swift 2.0 (Xcode 7 все еще находился в стадии бета-тестирования). Я включил это, перетащив .xcodeproj в свое приложение.
  • Облачные сообщения Google, загруженные через CocoaPods.

regarding changes:

  • Я обновил FacebookSDK до последней версии SDK (v4.6.0). Чтобы проверить, была ли проблема в этом, я снова включил старый SDK и проверил размер файла, но это не имело никакого значения.
  • Обновил Alamofire, включил официальную версию черезcocopods. Включение черезcocopods увеличивает размер файла на 17 МБ, поэтому я вернулся к включению .xcodeproj в свой проект.

Regarding code: Ничего особенного, просто исправления ошибок.

У меня отключен биткод для моего приложения, потому что GCM еще не поддерживает это, он поддерживается для Facebook SDK и Alamofire.

Мне действительно интересно, почему размер файла изменился так резко. Вероятно, это связано с выпуском Xcode 7, потому что версия с меньшим размером файла была опубликована при использовании бета-версии Xcode 7.

В Itunes Connect написано: Supported Architectures: armv7, arm64 и Required Capabilities armv7

Стоит ли отправлять 32-битную версию приложения? Уменьшит ли это размер файла? Будет ли отклонено мое приложение?

Любые идеи?


person CularBytes    schedule 16.09.2015    source источник
comment
Магазину приложений теперь требуется 64-битный фрагмент в двоичном файле вашего приложения. Не обойти стороной отправку бинарного файла armv7/arm64. Просто arm64 может сработать, но в этом нет уверенности.   -  person Sandy Chapman    schedule 16.09.2015
comment
Хм, хорошо, но там написано, что требуется amv7? Действительно ли это уменьшит мой размер файла?   -  person CularBytes    schedule 16.09.2015
comment
Возможно, но вы прекратите поддержку iPhone 5C и ниже, а также iPad 3-го поколения и ниже. Эти устройства не поддерживают arm64. Вот сайт с некоторыми дополнительными сведениями.   -  person Sandy Chapman    schedule 16.09.2015
comment
Другой вопрос. Вы открыли .ipa и посмотрели размеры файлов? Может быть полезно посмотреть, что вызывает наибольшее увеличение размера вашего пакета.   -  person Sandy Chapman    schedule 16.09.2015
comment
Спасибо Сэнди за помощь, я извлек файл ipa и заметил, что у меня есть два шрифта, .ttc расширения, которые я получил от самого Mac, они огромны! 71 МБ и 80 МБ.   -  person CularBytes    schedule 16.09.2015
comment
Я преобразовал свой комментарий в ответ. Не стесняйтесь принимать, чтобы у других, кто приходит к вопросу, был принятый ответ, чтобы помочь им.   -  person Sandy Chapman    schedule 16.09.2015


Ответы (1)


Попробуйте открыть .IPA и посмотреть размеры файлов. Может быть полезно посмотреть, что вызывает наибольшее увеличение размера вашего пакета. Код сам по себе не должен вызывать увеличение размера, поэтому вполне вероятно, что вы включаете актив, вызывающий увеличение размера.

Если у вас есть файл IPA, вы можете изменить расширение файла на .zip и дважды щелкнуть, чтобы извлечь его. Он должен создать папку «Полезная нагрузка» с содержимым приложения внутри.

person Sandy Chapman    schedule 16.09.2015
comment
Возможно, добавьте некоторые рекомендации по получению файла ipa, например, из архива: testdroid.com/tech/ - person CularBytes; 16.09.2015
comment
Где в Payload вы находите дополнительный вес файлаcocopods? Я этого не вижу. Все, что я вижу, это мое приложение и папка OnDemandResources. В приложении также нет ничего необычного. Даже моя папка Frameworks пуста. - person Erika Electra; 30.05.2017