본문 바로가기

iOS

(5)
Swift Custom Framework 만들기(3) - Private Cocoapods Swift Custom Framework 만들기(2)에서 만들었던 라이브러리를 추가하여 사용해 보겠습니다. 임의의 프로젝트를 만든후 해당 폴더에서 아래 커맨드를 입력해줍니다. pod init pod install 그리고 [프로젝트명].xcworkspace 를 실행시켜줍니다. 이제 pod 파일에 이전에 만든 라이브러리를 추가해주는데 명령어에 git 주소와 tag 버전도 추가해줍니다. pod "프로젝트명", :git => '깃주소', :tag => '버전' 그 다음 다시 pod install을 하면 pod install 설치된 것을 확인할 수 있습니다. 이제 pod 을 활용하여 라이브러리에 이미지도 추가도 해보고, 업데이트도 진행해보겠습니다. 먼저, pod lib의 폴더로 이동한 후 _Pods.xcodepr..
Swift Custom Framework 만들기(2) - Private Cocoapods 대부분의 cocoapod 용도는 공개 라이브러리, 프레임워크가 필요할 때 주로 사용하는데 사내에서 많이 사용하는 공통 소스들을 라이브러리로 만들어 사용하기에도 유용합니다. 때문에 cocoapod을 이용한 라이브러리/프레임워크용 private 프로젝트를 정리해 보겠습니다. 우선 소스를 관리할 git 프로젝트를 생성합니다. 저는 'YGLib'명의 Private프로젝트를 생성했습니다. (Git도 Private로 제공해주니 좋네요^^, 보통 회사에서 사용한다면 GitLab이나 Bitbucket을 사용할텐데 비슷하게 프로젝트를 만들어주면 됩니다) 그리고 소스의 링크를 저장해 두세요. 저의 테스트용 프로젝트가 저장될 git주소는( https://github.com/daddy73e/YGLib.git ) 입니다. 다음..
Swift Custom Framework 만들기(1) 회사에서 개발을 하다보면 비슷한 프로젝트에는 비슷한 중복코드가 들어 간 것을 확인할 수 있었습니다. 이런 부분은 Framework로 만들어 관리하면 좀더 효율적으로 관리할 수 있습니다. 그리고 (2)에서는 Framework를 cocoapod 에 올려서 코드를 공유하는 것 까지 해보겠습니다. 우선 기본 프로젝트를 만들고 프레임워크를 테스트할 버튼을 만듭니다. 그리고 새로운 프레임워크 프로젝트를 생성합니다. (SampleFramework 명의 프로젝트를 생성하였습니다.) 그리고 Framework내 뷰컨트롤러 클래스 (SampleViewController.swift) 와 오브젝트 SampleObj.swift를 생성하였습니다. 외부에서 호출될 클래스이므로 'open' 키워드를 넣어 생성하였습니다. import ..
CocoaPod, use_modular_headers 부분 수정 최근 신규프로젝트에서 Alamofire , Firebase/Firestore 를 같이 사용할때 Firebase/Firestore 는 use_modular_headers 사용하면 Error ! Alamofire 는 use_frameworks 를 사용하면 Error가 나는 일이 발생했다. 스택오버 플로우에서 확인했을때 CocoaPods가 1.5이상으로 업데이트 되면서 개발자는 더 이상 use_frameworks를 지정할 수 없다고 한다 그렇다면 use_modular_headers로 사용하는게 맞는데.. use_modular_headers 를 사용했을때 firebase 라이브러리 관련 "BoringSSL-GRPC modulemap not found" 라는 에러 메세지 발생.. 멘붕하여 버전 변경 및 이런저런 ..
Swift5 Xib활용, CustomView 만들기 하나의 뷰 컨트롤러에서 모든 View를 만들면 소스가 길어지고 관리가 어려워집니다. 그럴땐 부분별로 뷰를 독립적으로 만들어 놓는다면 !! 재활용하기도 편하고 관리하기도 편해질 수 있습니다. 프로젝트 생성후 CustomView를 만들어 보겠습니다 그리고 해당 뷰에서 발생할 이벤트를 다룰 델리게이트를 미리 만들어 두겠습니다. protocol CustomViewDelegate { func eventCustomView() } 해당 CustomView의 UI를 그릴 Xib파일을 만들고 File's Owner에 클래스 이름을 넣어주겠습니다. 해당뷰의 스타일을 변경해 보겠습니다. 커스텀 뷰로 사용할거라 safe layout을 안쓰고, 시뮬레이션 사이즈도 사용하지 않도록 설정했습니다. CustomView의 스타일을 변..