App thinning에 대해서 설명하시오.

seuhong·2024년 1월 23일
0

iOS interview Question

목록 보기
5/11
post-thumbnail
  • 애플리케이션이 디바이스에 설치될 때, 앱 스토어와 운영체제가 디바이스의 특성에 맞게 설치되도록 하는
    설치 최적화 기술
  • 슬라이싱, 비트코드, 주문형 리소스가 있음
  • 슬라이싱(slicing)

앱이 지원하는 여러 디바이스에 대해 각각 조각 어플리케이션 번들을 생성하고, 해당 디바이스에 가장 적합한 조각을 전달하는 기술.

개발자가 App Store Connect에 업로드하면, 앱 스토어에서 디바이스 특성에 따라 다양한 버전의 조각들을 생성하고 사용자가 그 조각들 중에서 가장 알맞은 조각(app variant)을 다운로드 받는것을 말함
  • 비트코드(bitcode)

    • 비트코드는 기계어로 번역되기 이전단계의 중간표현을 말함.
    • iOS에서는 옵션이나 기본 설정으로 되어있으며, 개발자가 프로젝트 옵션으로 선택할 수 있음
    • 비트코드를 사용하여 업로드하면, 애플리케이션을 재컴파일 하여 앱바이너리(app binary)를 생성
    • 비트코드를 사용하지 않으면, 모든 경우의 디바이스의 경우에 따라 바이너리로 생성하여 합쳐져서 (fat binary)라는 것이 업로드됨
    • bitcode를 사용하면 경우에 따라 재컴파일 하므로 여기에서 최적화를 할 수 있음
  • 주문형 리소스(on-demand resource)

    • 필요할 때 다운로드를 받는다는 개념
    • 예를 들어, 사용자가 게임을 할 때 현재 레벨보다 상위레벨은 필요하지 않으므로 갖고 있을 필요가 없음. → 상위레벨 데이터를 !!사용자의 레벨이 필요할 때 다운로드를 받는다!!!
    • 또한 [인 앱 구매]를 예로 들 수 있음. 사용자의 선택에 따라 다운로드를 받는다는 개념과 일치함.
profile
완씨의 개발기록

0개의 댓글