iOS
-
Xcode 파일 잠김iOS 2025. 5. 12. 22:04
pod install을 하다가, 또는 여러가지 이유로 파일이 잠겨서 수정을 할 수 없는 경우의 해결책입니다. 안내 메세지... is locked for editing and you may not be able to save your changes. Do you want to unlock it?... is currently locked because you are not the owner of the file and do not have write permission. Unlock 버튼을 눌러도 다음과 같이 파일의 오너가 아니기 때문에 쓰기 권한을 부여할 수 없다고 안내 메세지를 보여줍니다. 이 글에서는 Finder를 통해 권한을 부여해 보겠습니다. 1. 파일을 Finder에서 찾아줍니다. 2. 정보 가져..
-
Objective-C 코드에서 Swift 클래스 참조하기iOS 2025. 4. 24. 20:57
우선 Objective-C 코드에서 Swift 클래스를 식별할 수 있도록 @objc 식별자를 추가해줘야 합니다. 클래스뿐만이 아니라 참조할 프로퍼티나 메서드에도 추가해야 합니다.다음은 Swift 5로 작성된 싱글톤 클래스 예시입니다.@objcfinal class MySingleton: NSObject { @objc static let shared = MySingletone() private override init() {} @objc func doSomething() { // ... }} Xcode는 자동으로 {프로젝트 이름}-Swift.h 형식의 브리지 헤더를 만들어 줍니다. 이 헤더를 Objective-C로 작성된 .m 파일에서 import 해줘야 ..
-
iOS 기업 내부 전용 앱(ipa) 배포하기iOS 2024. 4. 2. 22:37
★ Enterprise 계정 필요 순서 개요 1. 앱 Identifier 생성 2. iOS Distribution Certificate 생성 3. Universal Distribution Profile 생성 4. Xcode에서 프로젝트 아카이브, ipa 파일 생성 5. ipa 파일 다운로드 경로가 포함된 manifest.plist 파일과 ipa 파일 서버에 업로드 6. manifest.plist 파일을 불러오면, 파일의 정보를 사용해서 itms-services 프로토콜을 통해 기기에 ipa 다운로드, 애플리케이션 설치 1, 2, 3 내용 생략 ipa 파일 생성 1. Archive 2. Distribute App 클릭 3. Custom(또는 Enterprise) 선택 4. Enterprise 선택 5. D..
-
iOS WKWebView 파일 다운로드iOS 2024. 3. 15. 21:30
웹뷰에서 파일을 다운로드하기위해서 다음과 같은 딜리게이트를 조합해서 사용. ▶︎ WKNavigationDelegate: 웹뷰의 내비게이션 요청을 추적하며, 내비게이션 변화에 대한 허용 또는 거절을 수행하는 기능 제공▶︎ WKDownloadDelegate: 웹뷰 다운로드 및 진행 상황 추적 기능 제공▶︎ UIDocumentInteractionControllerDelegate: 문서 미리보기, 공유 및 '파일'에 저장 기능 제공 WKNavigationDelegateWKNavigationDelegate의 webView:decidePolicyForNavigationAction:preferences:decisionHandler: 메서드를 사용해서 웹뷰에서 내비게이션 시 낚아챌 수 있습니다. 아래와 같이 내비게이션..
-
Apple CertificatesiOS 2024. 2. 14. 15:06
★ 인증서를 사용하려면, Apple Development Program Membership에 가입되어 있어야 합니다.★ Apple Pay, Apple Push Notification, Apple Wallet, Mobile Device Management와 같은 서비스를 사용하려면 Apple Developer 웹의 Account 탭에서 인증서를 만들고, 다운로드 해야합니다. 앱을 빌드하는 과정에서 위의 서비스를 사용하는 등, 필요하다면 Xcode는 서명 인증서를 요구하며, 인증서와 함께 그에 대한 공개-비공개 키쌍을 키체인에 추가합니다. 또한 인증서와 공개키는 developer account에 추가됩니다. 개발-배포 과정에서, 다른 유형의 인증서를 사용하게 됩니다. ▶︎ 앱을 디바이스에서 실행하기 위해서..
-
CLI 없이 Xcode Workspace에 Cordova Custom Plugin 추가하기iOS 2023. 6. 23. 10:16
보통은 아래와 같은 방법으로 커스텀 플러그인을 추가합니다. 하지만 여의치 않은 경우(Cordova-based project가 없거나 플러그인을 배포하지 않은 상황) Command Line Interface 없이 Xcode Workspace에 파일 복사 및 추가 코드를 작성함으로써 플러그인을 포함해야 할 때도 있습니다. $ cordova plugin add 커스텀 플러그인 이름 $ cordova plugin add URL $ cordova plugin add ../path/to/my/plugin/relative/to/project --link config.xml cordova_plugins.js ... // plugin.xml 내용 적용 { "id": "cordova-plugin-custom.CustomP..
-
Swift를 사용해서 Cordova Custom Plugin 만들기 (2)iOS 2023. 5. 25. 17:39
Swift를 사용해서 Cordova Custom Plugin 만들기 (1)에 이어서 clobbers 요소에 대해서 알아보고, iOS 플랫폼의 native view를 띄워보겠습니다. 플러그인 프로젝트의 Swift 코드 @objc(presentModalView:) func presentModalView(_ command: CDVInvokedUrlCommand) { print("presentModalView: called.") let viewController = UIViewController() let label = UILabel() label.translatesAutoresizingMaskIntoConstraints = false label.text = "Hello world!" label.font = ...