Notice
Recent Posts
Recent Comments
Link
일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | 2 | |||||
3 | 4 | 5 | 6 | 7 | 8 | 9 |
10 | 11 | 12 | 13 | 14 | 15 | 16 |
17 | 18 | 19 | 20 | 21 | 22 | 23 |
24 | 25 | 26 | 27 | 28 | 29 | 30 |
Tags
- 리팩토링
- Refactoring
- clean architecture
- ribs
- SWIFT
- HIG
- Clean Code
- Xcode
- Observable
- MVVM
- swiftUI
- 애니메이션
- UICollectionView
- combine
- collectionview
- 클린 코드
- Protocol
- rxswift
- RxCocoa
- map
- uitableview
- 스위프트
- swift documentation
- 리펙터링
- tableView
- UITextView
- ios
- 리펙토링
- Human interface guide
- uiscrollview
Archives
- Today
- Total
김종권의 iOS 앱 개발 알아가기
[Xcode] 하나의 프로젝트에 여러 프레임워크 설정, 프로젝트 파일 구성 (Main / Domain / CommonExtension / Pods) 본문
Git, CocoaPods, Xcode, Shell
[Xcode] 하나의 프로젝트에 여러 프레임워크 설정, 프로젝트 파일 구성 (Main / Domain / CommonExtension / Pods)
jake-kim 2020. 11. 14. 09:54하나의 Project에 프레임워크와 pods추가 방법
- 구성: 메인 앱은 MyApp이고 나머지는 framework로 추가
MyApp.xcworkspace를 만들고, 하위에 MyApp.xcodeproj파일, Domain프레임워크, pods프레임워크 추가 - 프로젝트의 루트가 될 폴더 추가
- 주 프로젝트 파일이 될 ".xcworkspace"파일 생성: 아무 프로젝트 실행 -> "ctrl + cmd + N"하여 생성 (이름은 위 루트 폴더와 동일하게 할 것)
- 위 파일 실행: 아래처럼 비어있는 .xcworkspace파일 확인
- 메인 프로젝트가 될 .xcdeproj파일 생성(이름은 위에서 정한 이름과 동일하게 할 것): "shift + cmd + N"
단, 아래 2번 째 사진과 같이 Add to와 Group설정을 해야되는 것을 잊지 말것
- 생성된 프로젝트 확인
- 프레임워크 추가: Domain.xcworkspace
"shift + cmd + N" -> "framework"클릭 후 Next
단, 아래 3번 째 사진과 같이 Add to와 Group설정에 주의
- Main프로젝트에 (MyApp) 위에서 만든 Domain 프레임워크 추가
- 메인 프로젝트 MyApp에서 Domain프레임워크가 import되는지 확인
프로젝트 별 Cocoapod의존성 관리
- 프로젝트 root로 가서 아래 코드 실행
$ touch podfile
- podfile을 열어서 아래와 같이 작성
주의: 상단에 workspace, project 패스를 기입해줘야 함
- 의존성 설치 (단, bundler를 이용해서 cocoapods을 사용하려면 pod install x)
$ pod install
- MyApp.xcworkspace파일을 열어서 import하여 설치 되었는지 확인
- Configuration을 나눌 경우 (debug, alpha, release)주의: alpha를 메인 프로젝트에 추가하는 경우, Domain, CommonExtension모두 alpha를 추가해누어야 나중에 빌드오류가 발생하지 않음
bitcode오류 방지
- cocoapods으로 받은 프레임워크 중에 bitcode를 지원하지 않는 것이 존재하면, acrive 시 오류 발생
- 프로젝트, 프레임워크 모두 "Enable Bitcode"를 No라고 설정하는 것이 안전한 방법
* 프로젝트에서 archive하는 경우 아래 화면에서도 설정 가능 "Rebuild from Bitcode"
'Git, CocoaPods, Xcode, Shell' 카테고리의 다른 글
ruby, gem install bundler 에러 "(Gem::FilePermissionError)", global로 설정하여 해결 (0) | 2020.12.29 |
---|---|
[Cocoa pod 세팅] 여러개의 프레임워크에 cocoa pod 의존성 관리 (target, do, def) (0) | 2020.11.14 |
[Git] Merge Conflict 해결 방법 (0) | 2020.11.01 |
[gRPC] gRPC(google Remote Procedure Call) 사용방법 [미완성] (0) | 2020.06.30 |
[iOS - Swift] GCD(Grand Central Dispatch) (0) | 2020.06.29 |
Comments