Ngoài ra nếu ứng dụng của bạn sử dụng những file âm thanh lớn mà phải thêm vào bản build từ đầu, thành ra dung lượng của ứng dụng càng nặng.
Vì thế Apple đã giới thiệu khái niệm App Thinning trong WWDC 2015 nhằm giải quyết vấn đề giảm dung lượng của ứng dụng khi archive bản build.
Bài này mình xin giới thiệu sơ qua những khái niệm trong App Thinning như Slicing, Bitcode, On-Demand resources.
Slicing:
Slicing là một tiến trình tạo và phân phối những gói ứng dụng variant cho những thiết bị khác nhau. Một variant chỉ chứa kiến trúc thực thi và tài nguyên cần thiết cho từng thiết bị. Khi bạn tiếp tục phát triển và tải ứng dụng của bạn với full version lên trên iTunes Connect, thì Store sẽ tạo và phân phối những variant khác nhau dựa trên những thiết bị mà bạn hỗ trợ. Những tài nguyên về hình ảnh hay GPU cũng được chia nhỏ dựa theo độ phân giải, loại thiết bị và dung lượng thiết bị.XCode giả slicing trong thời gian phát triển ứng dụng, vì thế bạn có thể tạo và kiểm tra những variant ở dưới local. XCode chia nhỏ ứng dụng của bạn khi bạn build và chạy ứng dụng trên một thiết bị. Khi bạn tạo ra một Archive, XCode bao gồm full version ứng dụng của bạn nhưng cho phép bạn export những variant từ archive.
Lưu ý: Sliced App chỉ hỗ trợ những thiết bị chạy từ iOS 9.0 trở về sau. Ứng dụng phải sử dụng Asset Catalog.