728x90

iOS 28

Alternative App Icon으로 앱 실행 중에 앱 아이콘 변경하기

안녕하세요. Alternative App Icon이란 것을 사용하면 런타임 때 앱 아이콘을 바꿀 수 있습니다. 왜 난 몰랐지..;; 한번 알아볼게용 # 앱 아이콘 변경 방법1) Assets에 기본 아이콘과 함께 대체할 다른 앱 아이콘을 추가합니다. 2) (Optional) 만약 화면에서 앱 아이콘 이미지를 보여주고 싶으면 Assets에 Image Set으로 추가해 주세요. [참고] iOS 18에서는 UIImage(named:)를 사용해 앱 아이콘 이미지를 가져올 경우 nil이 반환되기 때문 3) 'Build Settings > Alternate App Icon Sets' 설정에 대체될 앱 아이콘 이름을 추가합니다. 4) alternateIconName으로 현재 앱 아이콘 이름을 가져오고, setAlter..

iOS 2024.10.29

Framework 프로젝트의 ObjC 클래스에서 Swift Public 클래스 사용하기

안녕하세요. 이번엔 framework 프로젝트 안에 있는 Objective-C 클래스가 Swift 코드를 사용할 수 있는 방법을 간단하게 정리해 볼까 해요. # 필수 설정Objective-C에서 Swift 모듈을 사용하려면, Swift는 반드시 NSObject를 상속받은 클래스여야 하며, 클래스에 @objc 또는 @objecMembers 속성이 있어야 합니다.  # Swift Public 클래스의 Public 메서드, 프로퍼티 사용하는 방법1) public 메서드 또는 프로퍼티에 @objc 설정 추가  2) {Framework}-Swift.h 헤더를 import 후 사용  # Swift Public 클래스의 Internal 메서드, 프로퍼티 사용하는 방법Framework 환경에선 Bridging Hea..

iOS 2024.10.27

shell script로 '[CP] Copy Pods Resources' 항목 제거

안녕하세요. CocoaPods을 사용하면, 프로젝트 Build Phases에 '[CP] Copy Pods Resources' 항목이 들어가는데요. 이 항목을 제거하는 shell script 공유합니다. 수동으로 지울 수는 있는데 pod install 또는 pod update 할 때마다 다시 추가되더라구요. 저처럼.. 자동화 필요하신 분들은 shell script 사용하는 것을 추천합니다! (shell script 말고 더 좋은 방법 아시는 분 있으면 공유해 주세요ㅠㅠ 꼭...) 우선 xcodeproj 모듈 설치하고sudo gem install xcodeproj   아래 스크립트 실행해주세요. 이번 글은 여기서 마무리.

iOS 2024.09.29

Verifying the origin of your XCFrameworks

안녕하세요. xcframework 검증과 관련된 공식 문서를 읽고 정리할게요. # 1. Code Signing Identity xcframework를 선택하면 Xcode 15 이상 Inspector에서 code signing(서명) 상태를 볼 수 있어요. 만약 자체 code signing identity로 서명한 경우, Inspector에서 서명에 대한 SHA-256 fingerprint를 볼 수 있습니다. # 2. Code Signature 변경 xcframework의 서명은 변경될 수 있어요. 예시 1) 기존 SDK 제공 업체가 SDK의 소유권을 다른 조직에 양도하고, 해당 조직의 팀 ID로 서명된 새 버전을 배포하는 경우 예시 2) 배포된 xcframework를 직접 빌드하고 사명하는 경우 Ins..

iOS 2024.02.08

.a static library를 xcframework로 만드는 방법

안녕하세요. .a 형태로 된 static library로 제공되는 몇몇 라이브러리들이 있어요. (ex. Weibo iOS SDK, C++로 제작된 라이브러리 등) 이러한 라이브러리를 Swift에서 사용하려면 modulemap이 필요합니다. 그런데 아쉽게도 몇몇 라이브러리는 개발자가 지원을 해주고 있지 않아요.... 이런 경우 해결방법이 있습니다!! 바로 직접 modulemap을 추가하는 것이죠ㅎㅎ static library에 modulemap을 추가하면서 동시에 xcframework로 만드는 방법이 있습니다. 방법은 아래 문서 참고해 주세요!! (이번엔 링크로 대체할게요.) [Answers]-How can I wrap a static library (C++) into an XCFramework for ..

iOS 2023.12.31

Lookin 맛보기

안녕하세요. 이번에 회사님의 도움을 받아 Let's Swift 2023에 참석했어요!! 행사에서 많은 것을 배우고 느낄 수 있었는데, 그 중에서도 Lookin이라는 것을 처음 알게 되어 가볍게 알아보려고 합니다ㅎㅎ # Lookin이 뭐야? 쉽게 말해서, Lookin은 Xcode의 View hierarchy 창과 비슷한 UI를 제공하면서 런타임 중에 UI 속성을 수정할 수 있게 도와줍니다. # 사용법 1) Lookin 홈페이지에서 Download 버튼을 눌러서 Lookin macOS 앱을 설치합니다. 2) Xcode 프로젝트에 CocoaPods으로 Lookin iOS Framework를 추가합니다. (SPM도 지원하지만 CocoaPods 사용을 권장한다고 해요!) [주의] Lookin 모듈을 Release..

iOS 2023.10.16

Certificate, Provisioning Profile

안녕하세요. 그동안 iOS 개발하면서 매번 써왔지만 대충 넘겼었던 Certificate(인증서)와 Provisioning Profile(프로비저닝 프로파일)에 대해서 잘 설명되어 있는 유튜브 영상을 하나 발견했어요. 까먹지 않기 위해 가볍게 정리하려고 합니다. ## Certificate (인증서) 애플에서 인증서를 발급받을 수 있고, 이 인증서를 통해 개발자임을 증명하는 것. 키체인에서 Certificate Signing Request(CSR) 파일을 생성할 수 있습니다. 이 CSR 파일은 인증서 발급을 위해 필요한 정보를 담고 있는 데이터 파일입니다. (CSR 파일에 공개키가 포함되어 있음.) 이렇게 생성한 CSR 파일을 Apple Developer 콘솔에 등록하면 애플 인증서를 발급받을 수 있어요. ..

iOS 2023.09.25

Signing xcframework

안녕하세요. 이번엔 xcframework를 signing(서명)하는 것이 뭔지, 또 하는 방법에 대해 알아볼게요. # Signing? xcframework를 서명한다는 것은 누가 framework를 개발하고 배포했으며 서명한 이후에 framework가 변경되지 않았음을 증명하는 것입니다. # xcframework signing(서명) 방법 아래 명령어로 xcframework를 서명할 수 있어요. codesign --timestamp -s 예를 들어서, "Apple Distribution: Philip Chung (xxx)"란 인증서로 MyFramework.xcframework를 서명하고 싶으면 이렇게 쓰면 됩니다. codesign --timestamp -s "Apple Distribution: Phili..

iOS 2023.08.14