요즘(요즘이라기 보단.. 오래되었지만.. 쿨럭) 뭔가를 대충 쓰기 보다는 제대로 알고 써보고 싶다는 생각이 많아진다.
그래서 공부도 하고 레퍼런스도 남길겸, 글들을 정리해서 써보기로 마음먹었다.
"CocoaPods은 Swift와 Objective-C 코코아 프로젝트를 관리하는데 의존적으로 사용된다. 7만8천개 이상의 라이브러리가 존재하며, 이를 통해 만들어진 앱은 3백만개 이상이다. 코코아팟(CocoaPods)는 당신의 프로젝트를 우아하게 만드는데 도움이 될것이다."라고 코코아팟 사이트에서는 알려주고 있다.
뭘 먼저 해봐야 할가? 설치 아니겠는가?
설치를 해보자.
sudo gem install cocoapods
뭐 명령어 한줄만 치면 자연스럽게 설치가 이루어진다.
이제 iOS 프로젝트 위치로 이동을 해주고 pod을 install해준다.
('당신의 프로젝트명'.xcodeproj 파일이 존재하는 위치여야 한다.)
cd /Users/magpiebros/Documents/dev/iOS/SampleRxSwift/SampleRxSwift
pod init
pod을 init하고 나면, Podfile이 생성된다.
아래와 같은 모양의 파일이 생성되었을 것이다.
# Uncomment the next line to define a global platform for your project
# platform :ios, '9.0'
target 'SampleRxSwift' do
# Comment the next line if you don't want to use dynamic frameworks
use_frameworks!
# Pods for SampleRxSwift
target 'SampleRxSwiftTests' do
inherit! :search_paths
# Pods for testing
end
target 'SampleRxSwiftUITests' do
# Pods for testing
end
end
이제 # Pods for SampleRxSwift 등의 위치에 원하는 Pod을 설정해주고 install만 해주면 모든 준비가 끝이난다.
난 RxSwift를 설치할것이기 때문에 https://cocoapods.org/pods/RxSwift 에서 가이드 문서를 한번 읽어보고 진행할것이다.
다음과 같이 설정하면, 샘플앱에서 동작하는것이 모두 동작한다고 하니, 다음과 같이 설정해놓고 진행해보겠다.
(각 라이브러리마다 사용법은 다를수 있으니, 가이드 문서를 참고해야 한다.)
# Podfile
use_frameworks!
target 'YOUR_TARGET_NAME' do
pod 'RxSwift', '6.0.0-rc.1'
pod 'RxCocoa', '6.0.0-rc.1'
end
# RxTest and RxBlocking make the most sense in the context of unit/integration tests
target 'YOUR_TESTING_TARGET' do
pod 'RxBlocking', '6.0.0-rc.1'
pod 'RxTest', '6.0.0-rc.1'
end
이제 내 프로젝트에 있는 Podfile을 변경해보자.
# Uncomment the next line to define a global platform for your project
platform :ios, '9.0'
target 'SampleRxSwift' do
# Comment the next line if you don't want to use dynamic frameworks
use_frameworks!
# Pods for SampleRxSwift
pod 'RxSwift', '6.0.0-rc.1'
pod 'RxCocoa', '6.0.0-rc.1'
target 'SampleRxSwiftTests' do
inherit! :search_paths
# Pods for testing
pod 'RxBlocking', '6.0.0-rc.1'
pod 'RxTest', '6.0.0-rc.1'
end
target 'SampleRxSwiftUITests' do
# Pods for testing
pod 'RxBlocking', '6.0.0-rc.1'
pod 'RxTest', '6.0.0-rc.1'
end
end
그리고 pod install을 하면 모든 준비는 끝이난다.
몇가지 경고들이 나타나는데, ALWAYS_EMBED_SWIFT_STANDARD_LIBRARIES 관련 에러등이 생긴다.
하지만 사용에는 무리가 없으니, 차차 더 깊은 Pod사용법을 정리해보겠다.
아.. 아직 RxSwift는 뭘 써야 좋을지를 정하지 못한 상태다.
한번 길을 잘못가면 되돌아 오기도 쉽지 않으니, 자세히 알아보고 시작하겠다.
- 참고 사이트
- https://cocoapods.org
- https://cocoapods.org/pods/RxSwift