본문 바로가기
300x250

iOS115

Alamofire timeout set(Swift5) 참고: https://alamofire.github.io/Alamofire/Classes/SessionDelegate.html https://moonggi-dev-story.tistory.com/7 Alamofire 라이브러리에 timeout 을 달아보자 iOS 대표 라이브러리라 불리는 Alamofire 에 대해 timeout 셋팅을 하고싶었다.. 테스트 결과 기본적으로 1분정도 timeout이 셋팅 되어 있는거 같다. 현재 ARS 같은경우 1분을 훌쩍넘는 시간동안 인증을 한 moonggi-dev-story.tistory.com sessionManager 기본적으로 제공되는 alamofire의 sessionManager의 속성을 커스텀하고 싶을 때 configuration을 이용한다. 네크워크 통신 중 .. 2022. 8. 25.
화면 캡처 방지 안드로이드는 코드 몇 줄이면 스크린의 캡처를 허용할지 말지를 설정해줄 수 있는 반면, iOS는 캡처 방지 설정을 지원 해주지 않는다. 그래서 캡처 되는 순간 다른 화면으로 대체 하여 캡처 되도록 우회 하는 방식을 사용하거나 솔루션을 구입하여 방지 할 수 있다. (솔루션 사용 시 보통 한대당 100 ~ 300만원 정도 책정하는 듯.. 너무 비싸다...) 참고 사이트 1. https://github.com/joonHyoung/preventScreenCapture GitHub - joonHyoung/preventScreenCapture Contribute to joonHyoung/preventScreenCapture development by creating an account on GitHub. github.. 2022. 8. 19.
stored property에 'available' 사용하기 스택오버플로우 발췌 - https://stackoverflow.com/questions/41904724/using-available-with-stored-properties Here is one potential solution (thanks to blog post). The idea is to use a stored property with a type of Any and then create a computed property that will cast the stored property (and instantiate it if necessary). private var _selectionFeedbackGenerator: Any? = nil @available(iOS 10.0, *) filepriva.. 2022. 8. 16.
카카오 SDK 설정 https://developers.kakao.com/docs/latest/ko/getting-started/sdk-ios [Kakao Developers 카카오 API를 활용하여 다양한 어플리케이션을 개발해보세요. 카카오 로그인, 메시지 보내기, 친구 API, 인공지능 API 등을 제공합니다. developers.kakao.com](https://developers.kakao.com/docs/latest/ko/getting-started/sdk-ios) 카카오 SDK 설치 (Cocoapods 이용한 방법) 1. Podfile에 작성 후 pod install # 전체 추가 pod 'KakaoSDK' # or # 필요한 모듈 추가 pod 'KakaoSDKCommon' # 필수 요소를 담은 공통 모듈 pod .. 2022. 8. 9.
Objectice-C to Swift Migration AppDelegate.swift 생성 1. project - target - Build Setting - Define Module - YES 2. AppDelegate.swift 파일 생성 3. .swift 파일 생성시 프로젝트명-Bridging-Header 생성 옵션창이 같이 뜨니 생성해줄것 4. AppDelegate.h와 .m 파일에 있는 내용을 생성한 swift 파일에 swift문법으로 고쳐 작성 5. AppDelegate class 앞에 @objc 붙여주기 (Objective - C 에서 swift 객체를 인식하기 위함) 6. class 위에 @UIApplicationMain 을 붙여서 AppDelegate.swift 가 main임을 명시 7. 기존의 AppDelegate.h/.m 파일과 main.. 2022. 8. 3.
PCH 파일 Pre Compile Header? 컴파일을 빠르게 할 수 이도록 해준다. 같은 헤더파일을 반복해서 컴파일 하지 않고 미리 한 번 컴파일 한다. pch 파일 생성하기 1. new file 2. template 중에서 "header file" 또는 "PCH file"을 선택한다. 3. Project - Target - build setting - 'Apple Clang - Language' - Prefix Header -> $(SRCROOT)/$(PROJECT_NAME)/생성한 prefix파일명.pch 2022. 7. 29.
웹 페이지의 자바스크립트 통신(JS <-> Swift) 웹페이지의 객체에 대한 동작을 네이티브에서 작업 해야한다면 , 자바스크립트의 messageHandler에서 네이티브에서 사용할 이름을 넣어주고 네이티브에서는 이 이름을 이용하여 해당 객체에 대한 동작을 구현 해줄 수 있다. 네이티브에 웹 연결 1. 'WKScriptMessageHandler'를 채택해준다. class ViewController: WKScriptMessageHandler 2. 이 프로토콜 채택하게 되면 필수적으로 구현해주어야 하는 함수를 추가해준다. func userContentController( _userContentController: WKUserContentController, didReceive message: WKScriptMessage) { // 웹 페이지의 작업을 처리하는 곳.. 2022. 7. 13.
ViewController present (VC1위에 VC2 present) 만약, 현재 화면에 다른 ViewController를 present 하고 싶고 아래와 같이 새로운 ViewController가 보이더라도 현재 화면이 투명하게 보이는 화면을 만들고 싶다면! 1) 방법 1 현재 화면을 캡처하여 새로운 화면에 이미지로 세팅 해주는 방식 imgView와 coverView의 오토레이아웃은 화면 전체(safeArea까지 덮는 superView)로 잡고 // 현재 화면을 캡처하는 기능을 extension으로 추가 extension UIView { func viewToImage() -> UIImage { let renderer = UIGraphicsImageRenderer(bounds: bounds) return renderer.image(actions: { rendererConte.. 2022. 7. 5.
Date calendar와 date 시간차이 date는 0시 기준 calendar는 +9시간 기준 따라서, 9시간의 차이를 가지고 원하는 날짜를 뽑아오면 됨 Calendar weekdaySymbols (lldb) po calendar.weekdaySymbols ▿ 7 elements - 0 : "Sunday" - 1 : "Monday" - 2 : "Tuesday" - 3 : "Wednesday" - 4 : "Thursday" - 5 : "Friday" - 6 : "Saturday" (lldb) po calendar.shortWeekdaySymbols ▿ 7 elements - 0 : "Sun" - 1 : "Mon" - 2 : "Tue" - 3 : "Wed" - 4 : "Thu" - 5 : "Fri" - 6 : ".. 2022. 6. 10.
300x250