개발 일지
-
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..
-
[대만 가오슝 여행] 넷째 날, 컨딩에 전기 스쿠터로 바이샤완, 관샨, 국립해양박물관을 둘러보다여행/대만 가오슝 여행 2020. 1. 26. 01:36
대만 가오슝 여행 4일 차 일지 여행 넷째 날, 컨딩에 전기 스쿠터로 바이샤완, 관샨, 국립해양박물관을 둘러보다 1. 컨딩에 남아 두 번째 스쿠터 계획을 결심하다 컨딩에서의 두번째 숙박날이다. 가오슝 귀환 후 하이난행이 본래 계획이었다. 그러기엔 컨딩이 아쉽도록 화창했다. 계획을 전면 수정해서 컨딩에서 하루 더 전기스쿠터를 타고 관광을 하기로 했다. 컨딩에서 가오슝으로 가는 마지막 버스는 밤 7시에 있다. 그걸 놓치면 귀국 계산이 좀 복잡해진다. 보통 나는 느긋한 여행을 좋아하기 때문에, 이렇게 시간 제한을 둔 관광을 한번도 해보지 않았다. 그보다는 다음 여행지로 이동하고 그곳에서 관광을 하고, 1박이든 2박이든 하는 식이었다. 내 기준에서 4박 5일의 여행 일정은 짧은 편이었다. 촉박한 일정이 아쉽게 ..
-
[대만 가오슝 여행] 셋째 날, 컨딩에 전기 스쿠터로 촨판스, 어롼비 공원, 롱판 공원을 둘러보다여행/대만 가오슝 여행 2020. 1. 25. 11:51
대만 가오슝 여행 3일 차 일지 여행 셋째 날, 컨딩에 전기 스쿠터로 촨판스, 어롼비 공원, 롱판 공원을 둘러보다 1. 가오슝 여행을 마치고 호텔에서 체크아웃하다 가오슝을 5박 동안 관광하기에는 너무 시간이 넉넉하다. 그래서 보통 여행 코스로 타이난이나 컨딩을 둘러본다. 타이난은 대만의 남서부에 있는 대도시로서, 명승고적들이 많다. 컨딩은 대만의 최남단에 있는 인기 관광지로서, 바다와 육지가 모두 국립공원으로 지정되었다. 가오슝보다는 컨딩 쪽이 더 끌렸다. 한국에서 컨딩의 저렴한 게스트하우스를 이미 예약해 두었다 이전 포스트에서 언급했듯이, 컨딩으로 가는 길을 공항 안내대에서 확인했다. 컨딩으로 가는 방법은 세 가지가 있다. 미려도(메이리다오) 역 버스터미널을 타거나, 공항에서 직통 컨딩행을 타거나, 줘..