Apple обновила платформу для тестирования приложения TestFlight, которая теперь поддерживает ряд инновационных функций iOS 9. В частности, разработчикам дали возможность испытать работу функции для оптимизации приложений App Thinning.
App Thinning оценят владельцы iPhone и iPad, испытывающие нехватку свободного пространства на своих устройствах. Ее смысл состоит в том, что гаджеты будут загружать в память только самый необходимый код, так что игры и приложения будут занимать намного меньше места.
Хотя Apple позиционирует App Thinning как одну фичу, на самом деле она состоит из трёх разных механизмов, каждый из которых играет свою роль в уменьшении размера приложений. Первый – App Slicing – выполняет основную часть работы. Поскольку приложения создаются под большое количество устройств, от 3,5-дюймового iPhone 4 до 5,5-дюймового iPhone 6 (или, в случае с универсальными приложениями, 9,7-дюймового iPad), они содержат все данные для каждого девайса – большинство из которых устройству не нужны.
App Slices позволит разработчикам разделять пакеты данных по типам устройствам, и когда пользователь будет скачивать приложение из App Store, его устройство загрузит только те данные, которые ему нужны. Apple сделала этот процесс максимально простым, так что большинство программ в будущем будут поддерживать эту функцию.
Второй способ уменьшить размер приложений – On-Demand Resources (ODR). Представьте игру с большим количеством уровней – для игры достаточно иметь лишь текущий уровень и несколько следующих. ODR позволяет загрузить игру с несколькими первыми уровнями, остальные же будут загружаться по мере прохождения (а пройденные уровни будут автоматически удаляться).
И наконец, Bitcode. Вместо загрузки скомпилированных заранее бинарных файлов, разработчики загружают то, что Apple называет «промежуточной версией» приложения. Затем, перед началом загрузки, App Store автоматически компилирует приложение. Это позволяет автоматически включать App Slicing, даже если разработчики не позаботились об этом – и устройство будет использовать только 32-битный или 64-битный код, в зависимости от типа процессора.
Помимо технологии iOS 9 App Thinning разработчики приложений получили возможность протестировать нативные приложения для Apple Watch в рамках новой платформы watchOS 2.