본문 바로가기
iOS/iOS

앱 시닝 [ App thinning ]

by 황민우 2022. 3. 11.

정의

- 애플리케이션이 디바이스에 설치될 때, 앱 스토어와 운영체제가 디바이스에 특성에 맞도록 설치하는 설치 최적화 기술
- 앱의 크기를 줄이기 위해 사용하며 슬라이싱(slicing), 비트코드(bitcode), 주문형 리소스(on-demand resource) 세 가지 프로세스 중 하나 또는 조합하여 사용합니다.


슬라이싱 [ slicing ]

- 앱이 지원하는 여러 디바이스에 대해 각각 조각 애플리케이션 번들을 생성하고, 해당 디바이스에 가장 적합한 조각을 전달하는 기술입니다. 
- 개발자가 App store connect에 업로드하면, 앱 스토어에서 디바이스 특성에 따라 다양한 버전의 조각들을 생성합니다.
- 그리고 사용자가 그 조각 중에서 가장 알맞은 조각(app variant)을 다운로드하는 것입니다.

 


비트 코드 [ bitcode ]

- 비트코드를 사용하여 업로드를 하면 애플이 애플리케이션을 재 컴파일하여 앱 바이너리(app binary)를 생성합니다
- 비트코드를 사용하지 않으면, 모든 경우의 디바이스 경우에 따라 바이너리로 생성하여 합쳐져서 fat binary라는 것이 업로드되지만, 비트 코드를 사용하면 필요 경우에 따라 재 컴파일하게 되므로 여기에서 최적화할 수 있습니다.

 


주문형 리소스 [ on-demand resource ]

- 필요할 때 다운로드 받는 방식으로 사용자의 선택에 따라 다운로드하는 방법
- 예시로 굳이 어플리케이션에 포함될 필요가 없는 이미지나 음악 파일에 태그를 달아서, 나중에 해당 파일을 요청할 때 받을 수 있도록 하는 방식입니다.
- 또 다른 예시로, 현재 레벨보다 상위 레벨은 필요하지 않으므로 갖고 있을 필요가 없습니다. 사용자의 레벨이 필요할 때 다운로드하는 것입니다


내용 출처

https://ttuk-ttak.tistory.com/42

 

[iOS] 앱 시닝(app thinning)

앱 시닝(app thinning)이란? 애플리케이션이 디바이스에 설치될 때, 앱 스토어와 운영체제가 디바이스의 특성에 맞게 설치되도록 하는 설치 최적화 기술을 의미합니다. 최소한의 디스크 사용과 빠

ttuk-ttak.tistory.com

https://hedgehoglab.com/blog/what-is-app-thinning

 

What is App Thinning? | hedgehog lab

Back to all postsWhat is App Thinning?Sarat PediredlaDevelopment The launch of iOS 9 back in 2015 garnered a lot of excitement around one feature in particular that has become a crucial asset in a developers toolkit—app thinning. When updating or cre

hedgehoglab.com

 

'iOS > iOS' 카테고리의 다른 글

KVO [ Key Value Observing ]  (0) 2022.03.14
tableView, collectionView  (0) 2022.03.12
CS 이론 : 절차형 프로그래밍 vs 선언형 프로그래밍  (0) 2022.03.10
동기/비동기, 직렬/동시  (0) 2022.03.09
오버로딩 VS 오버라이딩  (0) 2022.03.08

댓글