전체 글
-
SWIFT 질문들iOS 2020. 3. 14. 01:19
class와 struct의 차이 상속 됨 / 안 됨 힙이냐 스택이냐. 속도는 struct 가 더 빠름. 프로토콜은 둘다 준수 가능. class A와 class B에 동일한 함수가 있다면 어떻게 바꿀 수 있나? 이건 뭔소린지 모르겠음. enum / function / closure 각각 value type 인가 reference type 인가? https://developer.apple.com/swift/blog/?id=10 struct, enum, tuple: 값 타입 closures, function: 참조 타입 탈출 클로저 펑션에 인자로 들어갔지만 펑션 리턴 후에 실행되는 클로저 https://docs.swift.org/swift-book/LanguageGuide/Closures.html#ID104 ..
-
iOS 13에서 리뉴얼된 위치 정보 변경 필독 사항 2 - 위치정보 한 번 허용iOS 2020. 3. 7. 15:43
이전 포스트와 이어집니다. https://sesang06.tistory.com/174 iOS 13에서 리뉴얼된 위치 정보 변경 필독 사항 1 - 위치정보 지연된 항상 허용 iOS 13에서는 위치정보 요청이 복잡하게 변경되었습니다. 이번 포스트에는 "항상 허용"의 변화에 대해서 살펴보겠습니다. 시작 앱의 위치 정보 권한을 상태를 나타내는 enum CLAuthorizationStatus 에는 다섯 가지.. sesang06.tistory.com 시작 iOS 13에서 위치 정보 권한을 요청하면, 한 번 허용 이라는 선지가 새로 등장합니다. 한 번 허용을 누르고, func locationManager( _ manager: CLLocationManager, didChangeAuthorization status: C..
-
iOS 13에서 리뉴얼된 위치 정보 변경 필독 사항 1 - 위치정보 지연된 항상 허용iOS 2020. 3. 7. 15:08
iOS 13에서는 위치정보 요청이 복잡하게 변경되었습니다. 이번 포스트에는 "항상 허용"의 변화에 대해서 살펴보겠습니다. 시작 앱의 위치 정보 권한을 상태를 나타내는 enum CLAuthorizationStatus 에는 다섯 가지가 있습니다. notDetermined : 위치 권한을 요청받지 않음 restrict : 기기 설정에서 유저가 모든 앱이 위치 설정을 사용할 수 없게 꺼 버림 denied : 유저가 위치 정보를 이 앱이 접근하는 것을 거부함 authorizedAlways : 유저가 이 앱이 백그라운드에서도 위치 정보에 접근할 수 있도록 허용함 authorizedWhenInUse : 유저가 이 앱이 포그라운드에서 위치 정보에 접근할 수 있도록 허용함 이 중 authorizedAlways 권한을 얻..
-
크롬에서 다크 모드로 편하게 보자카테고리 없음 2020. 2. 29. 20:14
컴퓨터 오래하다보면 흰색배경만큼 눈아픈 게 없죠 요즘 들어 다크모드가 유행메타라서 왠만한 휴대폰 기기에는 다크모드를 해서 피로도를 줄이는편입니다만 인터넷창(크롬) 같은 경우에도 다크모드를 할 수 있는 방법이 있습니다. 적용하면 이런식으로 되는데 이정도라도 훌륭하죠 https://chrome.google.com/webstore/category/extensions?hl=ko Chrome 웹 스토어 브라우저에 새로운 기능을 추가하고 인터넷 탐색 환경을 맞춤설정할 수 있는 소규모 프로그램입니다. chrome.google.com 크롬 확장 프로그램에서 dark reader 라고 검색합니다 나오는 걸 설치하면 끝
-
UIWebView 를 WKWebView 로 이전할 때 반드시 알아야 하는 7가지 주의 사항iOS 2020. 2. 28. 03:17
작년 9월경부터, 앱을 테스트플라이트에 올리면 메일로 이런 메일이 오기 시작했습니다. Dear Developer, We identified one or more issues with a recent delivery for your app. Your delivery was successful, but you may wish to correct the following issues in your next delivery: ITMS-90809: Deprecated API Usage - Apple will stop accepting submissions of apps that use UIWebView APIs starting from December 2020 . See https://developer.apple..
-
UICollectionViewDiffableDataSource, UITableViewDiffableDataSource 로 깔끔한 콜렉션 뷰 데이터 관리하기iOS 2020. 2. 26. 01:36
서문 iOS 13 이상에서는 'UITableViewDiffableDataSource, UICollectionViewDiffableDataSource'이 새로 생겼습니다. https://developer.apple.com/documentation/uikit/uitableviewdiffabledatasource 기존에 테이블뷰와 콜렉션뷰의 데이터는 적당한 NSObject 클래스에, UICollectionViewDataSource 을 설정해 주는 방식으로 구현하고 있었습니다. 데이터가 바뀌면, 어느 indexPath 가 바뀌었는지 개발자가 판단하여 insertItems(at:) 등의 적절한 함수를 호출하곤 했습니다. 그런데 만약, 개발자가 판단한 데이터의 변동과, 실제 변동의 값이 다르다면... 이런 식으로,..
-
iOS, Android WebView 와 네이티브간의 유용한 통신 방법 - Javascript Interface, Webkit MessagingiOS 2020. 2. 20. 00:30
개발하고 있는 프로젝트에서 웹뷰는 상당한 레거시로 내려들어왔습니다. 하이브리드로 앱이 개발되었을 시절에 생긴 클라이언트와 백엔드, 웹프론트의 레거시란 레거시가 모두 집약되어 나타나 있습니다. 현재 프로젝트에서 웹뷰와 네이티브가 서로 통신할 때에는 window.location = "sample://action?argument1=2&argument2=2" 형식의 url 을 프론트에서 실행하면, 웹뷰에서 받아서 적절한 네이티브 액션을 실행시키는 것으로 유지보수되어 있습니다. 이 방법은 자주 쓰였지만, 아래와 같은 문제를 가지고 있었습니다. 자바스크립트 로딩을 할 때, window.location 의 실행을 항상 보장하지 않는다. 제가 자바스크립트를 정확히 아는 것은 아니지만, 프론트엔드 개발자 분들의 말에 따..
-
백준 3015번 분할 정복식 풀이백준 2020. 2. 4. 23:03
https://www.acmicpc.net/problem/3015 3015번: 오아시스 재결합 문제 오아시스의 재결합 공연에 N명이 한 줄로 서서 기다리고 있다. 이 역사적인 순간을 맞이하기 위해 줄에서서 기다리고 있던 백준이는 갑자기 자기가 볼 수 있는 사람의 수가 궁금해 졌다. 두 사람 A와 B가 서로 볼 수 있으려면, 두 사람 사이에 A 또는 B보다 키가 큰 사람이 없어야 한다. 줄에 서있는 사람의 키가 주어졌을 때, 서로 볼 수 있는 쌍의 수를 구하는 프로그램을 작성하시오. 입력 첫째 줄에 줄에서 기다리고 있는 사람의 수 N이 주어진다. ( www.acmicpc.net 본질적으로 히스토그램 문제 (https://www.acmicpc.net/blog/view/12) 와 동일한 알고리즘이다. 스택 O..