Ответ 1
Размер IPA/App не дает вам надежной окончательной оценки размера для App Store. Apple повторно шифрует исполняемый файл, который обычно означает, что он не будет сжиматься, а также тот, который находится в пакете, который вы загружаете для отправки.
Как только у вас есть .app(*), вам нужно сделать "Показать содержимое пакета" на нем, найти исполняемый файл и вывести его из .app. Сжатие .app как .zip(убедитесь, что исполняемый файл больше не содержится внутри него) и запишите этот размер. Добавьте этот номер к размеру несжатого размера исполняемого файла, добавьте на ~ 100 КБ, и это даст вам абсолютный максимальный размер финального пакета:
TheorecticalMax = CompressedAppWithoutExec + UncompressedExec + 100K
В действительности вы все равно получите достойный коэффициент сжатия для исполняемого файла (если вы знаете размер AppStore предыдущей версии или Apple сообщила вам об этом после отправки, вы можете определить коэффициент сжатия для вашего последнего сообщения). В качестве примера мы получили коэффициент сжатия 82% для 32-битного + 64-битного исполняемого файла, встроенного в Unity 5.0.1, для заголовка 2D match-three, поэтому в нашем случае это так, как выработали числа:
Представленный размер IPA: 78.2MB
Apple сообщила о размере после подготовки AppStore: 107.4MB (!)
После некоторых серьезных оптимизаций мы получили нашу .ipa до:
IPA: 62MB
Uncompressed executable: 76.6MB (!!! THANKS UNITY !!!)
Compressed executable assuming similar 82% compression: 62.8MB
APP minus executable: 85.8MB
Compressed APP minus executable: 33.7MB
Это дает нам окончательную оценку:
76.6*0.82 + 33.7 + 0.1 = 96.6MB
Все еще сокращая его, но мы представили несколько дней назад и еще ничего не получили от Apple, заявив, что они были более 100 МБ (ранее они сообщали о нескольких часах после отправки в последний раз, должны быть автоматические проверки)
(*) Чтобы получить .app из .xcarchive, просто "Показать содержимое пакета", затем "Products->Applications"
. Из .ipa переименуйте его в .zip, распакуйте как любой .zip файл, а затем посмотрите в "Полезную нагрузку"