반응형

전체 글 416

[iOS] CocoaPods 'Oh no, an error occurred.' 해결 방법

M1 아이맥에서 CocoaPods Install 또는 Update 시 아래와 같은 오류가 발생한다. ――― TEMPLATE END ―――――――――――――――――――――――――――――――――――――――――――――――――――――――――――――――― [!] Oh no, an error occurred. Search for existing GitHub issues similar to yours: https://github.com/CocoaPods/CocoaPods/search?q=dlopen%28%2FLibrary%2FRuby%2FGems%2F2.6.0%2Fgems%2Fffi-1.15.5%2Flib%2Fffi_c.bundle%2C+0x0009%29%3A+tried%3A+%27%2FLibrary%2FRuby%2..

iOS/오류 해결 2022.09.20

[Swift] UITabBarController 이미지 설정

UITabBarController에서 tabBarItem에 이미지를 적용시킬 경우 아래와 같이 설정한다. navigationController.tabBarItem.image = UIImage(named: "image.png") navigationController.tabBarItem.selectedImage = UIImage(named: "selectedImage.png") 위와 같이 진행할 경우, 이미지가 tntColor로 모두 채워지는 문제가 있는데, 그럴 때는 아래와 같이 renderingMode를 alwaysOriginal로 설정해준다. navigationController.tabBarItem.image = UIImage(named: "image.png")?.withRenderingMode(.al..

[Swift] FileManager로 디바이스에 파일 저장하기 (Document)

FileManager 사용하여 디바이스에 파일 저장하기 (Document) 아이폰에 기본적으로 있는 '파일' 앱에 파일을 저장하는 방법입니다. 목차 사용 방법 저장된 파일 확인 참고사항 사용 방법 1. 코드 작성 설명은 주석을 확인해주세요. let fileManager = FileManager.default // 도큐먼트 URL let documentURL = fileManager.urls(for: .documentDirectory, in: .userDomainMask).first! // 도큐먼트 URL에 생성할 폴더명 let directoryURL = documentURL.appendingPathComponent("FolderName") do { // 폴더 생성 try fileManager.create..

[iOS] Binary operator '+' cannot be applied to operands of type 'DispatchTime' 해결 방법

Binary operator '+' cannot be applied to operands of type 'DispatchTime' and 'Int' 오류 해결 방법 DispatchQueue.main.async 호출 시 deadline(DispatchTime)에 아래와 같이 Int 입력 시 오류가 발생한다. DispatchQueue.main.asyncAfter(deadline: .now() + 1) {// 오류 // code } 발생 오류 Binary operator '+' cannot be applied to operands of type 'DispatchTime' and 'Int' 해결 방법 let afterTime = DispatchTimeInterval.seconds(1) DispatchQueue...

iOS/오류 해결 2022.07.01

[MAC] Apple에서 악성 소프트웨어가 있는지 확인할 수 없기 때문에 열 수 없습니다. 문제 해결

간혹 MAC에서 출처를 알 수 없는(?) 소프트웨어(앱)를 사용하려고 할 때 아래와 같은 오류가 발생하며 실행할 수 없다. Apple에서 악성 소프트웨어가 있는지 확인할 수 없기 때문에 열 수 없습니다. 해당 오류를 해결하는 방법은 아래와 같다. 1. 시스템 환경설정 앱 실행 후 '보안 및 개인 정보 보호'로 이동 2. '일반' 탭으로 이동 후 하단에 소프트웨어명 확인 후 오른쪽 '확인 없이 열기' 클릭 '확인 없이 열기' 버튼을 클릭하면 아래처럼 안내 영역이 사라진다. 3. 소프트웨어를 다시 열어서 '열기' 클릭 이제부터 문제없이 소프트웨어 사용이 가능하다!

iOS/기타 2022.06.30

[HTTP] 상태 코드 (Status Code)

HTTP 상태 코드1XX~5XX 설명 1XX : Information 서버가 요청을 받았으며, 처리 중인 경우 현재 거의 사용하지 않음 2XX : Successful 200 OK 요청 성공 201 Created 요청 성공하여 새로운 리소스가 생성됨 202 Accepted 요청을 수신했지만 응하여 처리하지 못함 203 Non-Authoritative Information 돌려받은 메타 정보 세트가 오리진 서버의 것과 일치하지 않지만 로컬이나 서드파티 복사본에 모아졌음을 의미 204 No Content 요청 성공했지만, 응답 페이로드 분몬에 보낼 데이터가 없음. 헤더는 의미 있을 수 있음 3XX : Redirection 3XX 응답의 결과에 Location 헤더가 있으면 Location 위치로 자동 이동함(..

IT/HTTP 웹 2022.06.22

[Objective-c] SQL Cipher 사용하여 db 암호화하는 방법

iOS에서 SQL Cipher 사용하는 방법 SQL Cipher는 database 전체를 암호화해주는 오픈소스 라이브러리이다. 목차 1. SQL Cipher 사용 방법 2. 암호화 적용되었는지 실제 기기에서 확인하는 방법 1. SQL Cipher 사용 방법 1. framework 추가 Project > TARGETS > General > Frameworks, Libraries, and Embedded Content 이동 후 Security.framework 추가 2. CocoaPod 추가 pod 'SQLCipher', '~>4.0' 추가 # Uncomment the next line to define a global platform for your project # platform :ios, '9.0' ..

[SQLite] SQLite 주요 API

SQLite 주요 API Objective-C에서 사용하는 API 위주로 설명한다. sqlite3_open() 데이터베이스 파일이 있다면 파일을 열고, 없다면 생성 후 연다. 성공 시 SQLITE_OK 리턴한다. int sqlite3_open( const char *filename, /* Database filename (UTF-8) */ sqlite3 **ppDb /* OUT: SQLite db handle */ ); * 데이터베이스 파일 open, close의 경우는 상황에 따라 처리한다. - 많은 양을 빠르게 작업할 때 작업 시작 시 open, 완료 후 close 진행 - 적은 양을 처리할 때, 작업 별로 open, close 진행 sqlite3_close() 데이터베이스 파일을 닫는다. 성공 시 ..

IT/기타 2022.06.16

[Swift / Obejctive-c] UIView를 UIImage로 변환하기 (render UIView to UIImage)

Swift, Objective-C에서 UIImage를 UIImage로 변환하는 방법 (render UIView to UIImage) Swift func viewToImage(view: UIView) -> UIImage { let renderer = UIGraphicsImageRenderer(size: view.bounds.size) let image = renderer.image { context in view.drawHierarchy(in: view.bounds, afterScreenUpdates: true) } return image } Objective-c - (UIImage*)viewToImage:(UIView*)view { UIGraphicsImageRenderer *renderer = [[UI..

반응형