목록iOS (14)
개발자의 삽질
Firebase를 이용해서 원격으로 푸시 알림을 받아보자! 목차 Firebase 프로젝트 생성 및 iOS 프로젝트에 SDK 적용 Apple Push Services 인증서 생성 iOS 프로젝트에 Firebase Push Notification 을 위한 세팅 테스트를 통해 푸시 정상 확인하기! 1. Firebase 프로젝트 생성 CocoaPods 설치는 개인의 몫으로 두겠습니다. 해당 프로젝트 경로에 가서 CocoaPods을 초기화 한 후에 아래와 같이 Podfile을 수정해 둡니다. 딱 한 줄 추가했습니다. pod 'Firebase/Messaging' 프로젝트에 Pod을 추가하면 최종적으로 아래와 같은 프로젝트 구조가 됩니다. 단순히 추가만 하면 Firebase를 쓸수 있는게 아니라, AppDelegat..
https://developer.apple.com/documentation/security/keychain_services Apple Developer Documentation developer.apple.com 어떤 이유로 키체인에 대해 알아야 했을까? 현재 만들고 있는 앱은 서버에서 제공해준 카카오 OAuth을 통해 로그인하고 token을 받게 된다. 처음에는 이를 UserDefault를 이용해 구현하려 했으나, 이는 보안상 좋은 방법이 아니라는 것을 알게되었고, 따라서 Keychain을 공부하게 되었다. Keychain Services 에 대해서 알아보자 종종 사용자는 비밀 데이터를 안전하게 저장하고 싶어한다. 이 때 Keychain Services API가 도움을 줄 수 있다. 사용자는 자신의 비..
https://www.hackingwithswift.com/example-code/xcode/how-to-use-storyboard-references-to-simplify-your-storyboards How to use storyboard references to simplify your storyboards - free Swift 5.4 example code and tips Was this page useful? Let us know! 1 2 3 4 5 www.hackingwithswift.com 아래의 예시를 보자 탭 바 컨트롤러에 3개의 뷰 컨트롤러가 있다. 그러나 나는 이 뷰 컨트롤러들을 서로 다른 스토리보드에 따로따로 관리하고 싶다!! 이럴 때 아주 좋은 것이 바로 Storyboard Re..
https://www.hackingwithswift.com/example-code/networking/how-to-check-for-internet-connectivity-using-nwpathmonitor How to check for internet connectivity using NWPathMonitor - free Swift 5.4 example code and tips Was this page useful? Let us know! 1 2 3 4 5 www.hackingwithswift.com 이번에는 네트워크 연결 상태를 확인하자! 앱을 개발할 때, 네트워크 연결 상태에 따라 UI 변경을 주는 경우가 있다! 아래는 그 예시이다! 이와 비슷하게 네트워크 상태에 따라 UI 변경을 해보자! 일단 스..
https://developer.apple.com/documentation/foundation/iso8601dateformatter Apple Developer Documentation developer.apple.com 개발을 하다가 데이트 피커에서 날짜를 받아서 문자로 바꾸어줘야 할 일이 있었다. 서버에서 요구하는 포맷이 ISO8601 이었기 때문에 ISO8601DateFormatter 를 사용해보았다. ISO8601DateFormatter 는 Date String 이 모두 가능하지만 여기서는 Date -> String 만 다루겠다. ISO8601DateFormatter 를 이용하기 위해서는 3가지의 변수가 필요하다. Date TimeZone ISO8601DateFormatter.Options 총 1..
https://www.hackingwithswift.com/example-code/language/fixing-class-viewcontroller-has-no-initializers Fixing "Class ViewController has no initializers" - free Swift 5.4 example code and tips Was this page useful? Let us know! 1 2 3 4 5 www.hackingwithswift.com ViewController에 프로퍼티를 두고 싶다! 클래스에 프로퍼티를 담을 때는 초기값을 갖고 있거나 생성자를 통해 초기화 과정을 거쳐야 한다. 그러면 ViewController는 어떻게 할까? 일단 아래의 코드는 에러를 발생한다. class..
https://developer.apple.com/documentation/uikit/uiviewcontroller Apple Developer Documentation developer.apple.com ViewController LifeCycle 에 대해 알아보자! 뷰 컨트롤러의 수명주기는 아래의 그림을 통해 알 수 있다. 총 4개의 과정으로 나뉘어져 있다. Appearing: 뷰가 화면에 나타나는 중 Appeared: 뷰가 화면에 나타난 상태 Disappearing: 뷰가 화면에서 사라지는 중 Disappeared: 뷰가 화면에서 사라진 상태 위 4개의 과정 가운데 호출되는 메서드들이 있다. viewDidLoad() 뷰 컨트롤러의 모든 뷰들이 메모리에 로드됐을 때 호출 메모리에 처음 로드될 때 한 ..
https://developer.apple.com/documentation/uikit/uipickerview Apple Developer Documentation developer.apple.com UIPickerView 는 UITableView와 비슷하게도 UIPickerViewDataSource 와 UIPickerviewDelegate 를 구현해주면 된다. 완전 같진 않지만, UITableView 도 UITableViewDataSource 와 UITableViewDelegate 를 구현하면 보여지는 것과는 같다. 아무튼 글을 쓰기 전에 공식문서는 꼭 확인하고 가자! UIPickerView 먼저 스토리보드에 Picker View 를 추가해주자 그리고 아래의 그림과 같이 PickerView 를 고르면 해..