반응형
단순 호기심에 해보는 Dynamic Framework Embed, 버전 테스트
테스트
중첩 Embed 하여 사용하는 프레임워크의 버전이 다른 경우, 어떤 버전을 사용하는지?
구성
- A 프레임워크 : 일반 프레임워크
- B 프레임워크 : A 프레임워크를 Embed 하는 프레임워크
- C 프로젝트 : A 프레임워크와 B 프레임워크를 Embed 하여 사용하는 iOS 응용 프로그램 (앱)
테스트
상황 1
- B 프레임워크 : A 프레임워크 버전 1 Embed
- C 프로젝트 : A 프레임워크 버전 2 Embed + B 프레임워크 Embed
Q. C 프로젝트에서 A 프레임워크 사용 시 어떤 버전의 A 프레임워크를 사용할까?
A. C 프로젝트에 있는 버전 2 사용
Q. C 프로젝트에서 B 프레임워크를 통해 A 프레임워크 사용 시 어떤 버전의 A 프레임워크를 사용할까? (C 프로젝트에서 B 프레임워크를 호출하고, B 프레임워크에서 A 프레임워크를 호출하는 경우)
A. C 프로젝트에 있는 버전 2 사용
상황 2
- B 프레임워크 : A 프레임워크 버전 2 Embed
- C 프로젝트 : A 프레임워크 버전 1 Embed + B 프레임워크 Embed
Q. C 프로젝트에서 A 프레임워크 사용 시 어떤 버전의 A 프레임워크를 사용할까?
A. C 프로젝트에 있는 버전 1 사용
Q. C 프로젝트에서 B 프레임워크를 통해 A 프레임워크 사용 시 어떤 버전의 A 프레임워크를 사용할까? (C 프로젝트에서 B 프레임워크를 호출하고, B 프레임워크에서 A 프레임워크를 호출하는 경우)
A. C 프로젝트에 있는 버전 1 사용
결론
- 사용하는 프레임워크의 버전이 달라도, 최종적으로 사용하는 C 프로젝트에 있는 프레임워크 버전을 사용한다.
※ Dynamic 프레임워크의 경우 런타임 시 링크하기 때문에 최종적으로 사용하는 프로젝트 버전을 따라가는 게 아닌가 예상한다.
반응형
'iOS > Swift + Objective-c' 카테고리의 다른 글
[Swift / Objective-c] 디바이스 모델명, OS 버전 조회 (Device Model, OS Version, iPhone/iPad/iPod) (3) | 2022.02.23 |
---|---|
[Objective-c] 메일 보내기 (Mail - MFMailComposeViewController) (0) | 2022.01.17 |
[iOS] 상태바 아이콘 색상 변경 방법 (Status Bar Style) (0) | 2022.01.11 |
[iOS] Safe Area Top, Bottom 높이 조회 (status bar height) (2) | 2022.01.10 |
[iOS] 인증 토큰 방식 푸시 알림(APNs) 및 키 생성 방법 (p8 파일) (0) | 2021.12.16 |