Ответ 1
Если вы используете библиотеки как статические библиотеки, компоновщик может исключить те части, которые вы не используете в сборке. То же самое не относится к фреймворкам. Поэтому, если вы просто создали приложение с этими библиотеками и не использовали их, они не будут включены вообще, поэтому это не справедливое сравнение.
Когда вы спрашиваете, почему ваше приложение содержит все фреймворки, я предполагаю, что вы имеете в виду те, которые используются для быстрой среды выполнения, а не для зависимостей, которые вы явно запрашивали в cocoapods. Все быстрые приложения имеют в них встроенную среду исполнения, по крайней мере до тех пор, пока среда выполнения не станет достаточно стабильной (сейчас очень часто меняются), а затем ОС телефона будет содержать несколько версий, и мы не будем включать ее в приложение.
Кроме того, не пугайтесь размера приложения. Фактический размер приложения, загружаемого пользователем, намного меньше. Вы можете увидеть его на вкладке активности iTunesConnect, а затем выбрать свою сборку, как только вы ее загрузите там, очевидно. Я видел приложения, которые загружают как 120 МБ или около того в iTunesConnect, а затем окончательная загрузка для пользователя составляет от 20 до 30 МБ.
Изменить после получения дополнительной информации: Вы сказали, что сравниваете перетаскивание источников библиотек в ваш проект против cocoapods, и здесь есть явная разница: если вы добавляете исходные файлы библиотеки, это не то же самое, что добавлять скомпилированную фреймворк для библиотеки. Если вы добавите источники, многие неиспользуемые материалы будут оптимизированы, что повлияет на размер. Пример этого - когда библиотека включает категорию, которую сама библиотека не использует. Если не используются некоторые флаги компоновщика, категория оптимизирована и она не работает в приложении с помощью библиотеки (вы можете искать all_load, если хотите получить дополнительную информацию). При использовании фреймворков ничего не оптимизируется, но этого не происходит из-за Cocoapods. Вы можете использовать фреймворки без Cocoapods, и вы должны получить точно такие же результаты относительно размера.