Nếu ứng dụng của bạn hỗ trợ những thiết bị khác nhau như: iPad 1, iPad 2, iPad 3, iPhone 4, iPhone 5, iPhone 6, iPhone 6 plus,... thì dung lượng của nó rất lớn vì bạn phải thêm những hình tuỳ thuộc vào kích thước màn hình của từng thiết bị như @1x, @2x, @3x. 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 n...