-
[비공개] UIWebView가 포함된 빌드를 올리면 앱스토어에서 오류가 발생합니다
오랜만에 아이폰 빌드를 앱스토어에 올렸는데 애플에게서 다음과 같은 경고 메일을 받았습니다. ITMS-90809:DeprecatedAPIUsage-ApplewillstopacceptingsubmissionsofappsthatuseUIWebViewAPIs.Seehttps://developer.apple.com/documentation/uikit/uiwebviewformoreinformation. 아직은 단순 경고라서 빌드를 계속 사용할수 있지만, 조만간에는 리젝을 하지 않을까 싶습니다. UIWebViewInappsthatruniniOS8andlater,usetheWKWebViewclassinsteadofusingUIWebView.Additionally,considersettingtheWKPreferencespropertyjavaScriptEnabledtofalseifyourenderfilesthatarenotsupposedtorunJavaScript. 물론 UIWebView를 걷어내고 WKWebView로 바꾸면 오류가 발생하지 않습니다. 그런데 문제는 서드파티 라이브러리인데요 제가 올린 앱에도 uiwebview를 전혀사용하고 있지 않았음에도 저 메세지가 나오고 있어서 누가 문제인지 찾아보았습니다 프로젝트 폴더에서 # grep -r "UI..추천 -
[비공개] facebook accountkit 대신에 firebase 전화번호인..
AccountKitisbeingdeprecated: OnSeptember9,2019,nonewappswillbeabletointegrateAccountKit,butexistingintegrationswillcontinuetofunction. OnDecember9,2019,thedailySMSlimitwillbereducedto1,000messagesperappIDperday.Allotherchannels(includingWhatsApp)willcontinuetofunctionwithoutrestrictions. OnMarch9,2020,AccountKitwillbedeprecatedandwillnolongerfunction. Youwillbeabletoretrieveyourapp'suserdatafor90afterdeprecation,throughJune9,2020. 페이스북이 안타까운 소식을 전해왔습니다. 이전에 페이스북 어카운트킷을 통해 무료로 문자인증서비스를 쓰는 방법을 소개해드렸었는데요 2018/12/21 - [페이스북] - 돈 1원도 안쓰고 공짜로 폰번호 문자 인증 서비스 만들기 페이스북이 어카운킷을 접는다고 합니다. 아직 2020년 5월 9일까지는 시간이 남았긴하지만 안타까운 마음을 지울수 없네요. 하지만 우리에겐 다행히 구글이 있습니다. 구글도 유사한 서비스를 제..추천 -
[비공개] android 8이상에서 fcm이 정상적으로 동작하는지 확인해보세요
안드로이드 앱의 targetSdkVersion이 25이거나이보다작을때는안드로이드7.1처럼작동하지만 26이상인데채널을지정하지않는경우노티가나타나지않습니다 요즘 최신기종이 android 9를 탑재하고 있으니 기존에 만든 앱이 최신버전의 안드로이드에서 푸시 알림을 제대로 받고 있는지 테스트를 해보시는 것이 좋을것 같습니다. 안드로이드8.0(APIlevel26)부터는모든notification은반드시channel에소속되어있어야합니다. 개발자입장에서는 채널이라고 부르지만 사용자 입장에서는 카테고리라고 불리는 기능이 추가되었는데요 사용자는각각의채널에대해서 노티에 대한 세부적인설정이가능합니다. 그러니깐 한개의 앱이 여러종류의 채널을 가지고 있을때 사용자는 그 앱의 각 채널별로 노티피케이션 수신 설정을 커스텀하게 할수 있습니다 공지사항 채널은 사운드..추천 -
[비공개] 맥북 키보드 무상 교체 프로그램으로 교체받았어요
https://support.apple.com/ko-kr/keyboard-service-program-for-mac-notebooks MacBook, MacBook Air 및 MacBook Pro용 키보드 서비스 프로그램 - Apple 지원 국가 또는 지역을 선택하십시오 Asia Australia België Belgique Brasil България Canada (English) Canada (Français) Česko 中国大陆 Danmark Deutschland Eesti EMEA España Ελλάδα France Hong Kong (English) 香港 India Indonesia Ireland Italia 日本 Κύπρος 대한민국 Latin America América Lat support.apple.com MacBook(Retina,12-inch,Early2015) MacBook(Retina,12-inch,Early2016) MacBook(Retina,12-inch,2017) MacBookAir(Retina,13-inch,2018) MacBookAir(Retina,13-inch,2019) MacBookPro(13-inch,2016,Thunderbolt3포트2개) MacBookPro(13-inch,2017,Thunderbolt3포트2개) MacBookPro(13-inch,2019,Thunderbolt3포트2개) MacBookPro(13-inch,2016,Thunderbolt3포트4개) MacBookPro(13-inch..추천 -
[비공개] angualrjs 1.x 학습하기
사실상 지금은 vue랑 react가 양분하고, 이제 angularjs는 2강 축에 못끼는 3위같은데 그래도 angularjs가 가장 잘나가던 시절이 1.x 버전일때가 아닐까 싶네요 그래서 그런지 당시로서는 핫한 스택이었던 angular 1.x 를 써서 개발했던 서비스들이 있는데요 막상 구버전을 유지보수 하려니 자료가 찾기 쉽지 않습니다 역시나 이럴땐 공홈 도큐먼트만한게 없네요 https://docs.angularjs.org/tutorial/step_00추천 -
[비공개] 페이스북 비즈니스관리자 계정 초대 수락시 오류가 발생하면
저도 삽질만하다가 다른분의 포스팅을 통해서 도움받았는데 저처럼 고생하실 다른분들을 위해서 널리 퍼뜨리고자 포스팅합니다.비즈니스 관리자에 초대를 받게되면 링크가 담긴 메일을 받게되는데요해당 링크를 클릭하면 위의 화면과 같은 화면으로 이동해서 수락프로세스를 진행하게 되는데요이상하게 이름을 넣어도 계속 버튼이 활성화되지 않는 문제가 있었는데알고보니 성과 이름을 띄어쓰기해야만 계속 버튼이 활성화되어서 수락을 할수가 있더라고요(왜 띄어쓰기하라고 안알려주는거니 페이스북아... ㅠ)추천 -
[비공개] 구글홈 미니 유투브 프리미엄 쿠폰 등록하기
구글홈이나 구글홈미니를 구매하면 유투브 프리미엄 6개월 쿠폰을 받을 수 있는데요.그 쿠폰이 종이쿠폰으로 동봉되어 제공되는것도 아니고,그렇다고 우리가 흔히 알고 있는 쿠폰번호가 포함되어있는 것도아닙니다.구글 홈을 셋업할때내 구글계정으로 로그인해서 세팅을 진행하게 되는데요.이때 음악서비스로 유투브를 선택하면 자동으로 해당 계정에 프리미엄 6개월 체험이 적용되는 방식입니다.반드시 주의해야할점은 결제정보가 없으면 14일 무료체험이고결제정보까지 등록을 완료해야 6개월 체험으로 적용된다는것입니다.그런데 혹시 이 단계에서 프리미엄 적용을 받지 않고 이미 구글홈을 세팅해서 잘 사용하고 있는 경우라면 어떻게 하냐구요?제가 열심히 찾아봤는데 다른 방법이 없더라고요.구글 홈을 공장초기화 시킨후에 다시 세팅을 해서..추천 -
[비공개] 골치아픈 백그라운드 프로세스 관리 workmanager로 한방에 해결..
이번에 소개해볼 구성요소는 Android Jetpack의 WorkManager 입니다비동기적으로 특정 작업에 대한 스케줄링이 필요할때 사용되는 구성요소 입니다.이미 존재하고 있는 JobScheduler, AlarmManager의 상위호환 버전입니다.백그라운드 프로세스를 만들때는 꽤나 염두해두어야할것들이 있습니다.이 프로세스가 동작하게될 OS가 어느버전인지, 앱이 실행중인지 아닌지 등등 말이죠WorkManager는 백그라운드 태스크를 수행할때가장 적절한 방법을 찾아서 그 작업을 수행합니다.개발자의 입장에서는 이 백그라운드 태스크가 실행될 환경이나 상황은 고려하지 않고실제로 동작해야할 코드에만 집중하면 됩니다.코드의 동작은 WorkManager가 보장하니깐요백그라운드에서 코드가 실행될수 있는 가장 적합한 시간이나 장소, 위치는 WorkManager가 고르게 됩니다.개발자가 직접 동작해..추천 -
[비공개] 골치아픈 백그라운드 프로세스 관리 workmanager로 한방에 해결..
이번에 소개해볼 구성요소는 Android Jetpack의 WorkManager 입니다비동기적으로 특정 작업에 대한 스케줄링이 필요할때 사용되는 구성요소 입니다.이미 존재하고 있는 JobScheduler, AlarmManager의 상위호환 버전입니다.백그라운드 프로세스를 만들때는 꽤나 염두해두어야할것들이 있습니다.이 프로세스가 동작하게될 OS가 어느버전인지, 앱이 실행중인지 아닌지 등등 말이죠WorkManager는 백그라운드 태스크를 수행할때가장 적절한 방법을 찾아서 그 작업을 수행합니다.개발자의 입장에서는 이 백그라운드 태스크가 실행될 환경이나 상황은 고려하지 않고실제로 동작해야할 코드에만 집중하면 됩니다.코드의 동작은 WorkManager가 보장하니깐요백그라운드에서 코드가 실행될수 있는 가장 적합한 시간이나 장소, 위치는 WorkManager가 고르게 됩니다.개발자가 직접 동작해..추천 -
[비공개] Android Jetpack 구성요소 Navigation 알파버전을 ..
안드로이드가 jetpack이라는 이름으로 안드로이드 앱 개발에 도움을 주는 android 구성요소 콜렉션을 소개했습니다.구성요소 하나하나가 다 흥미로운 녀석이었지만그중에서도 Navigation은 저에게 꽤 끌리는 항목입니다.당장 적용하고 싶을만큼요.Navigation을 통해서 안드로이드도 iOS에서 하던것처럼 스토리보드라는것의 작성이 가능해졌거든요iOS는 이미 아주 오래전부터 제공된 스토리보드를 통해서개별화면의 UI를 작성할수 있을뿐만 아니라 앱의 전체적인 흐름까지 비주얼하게 볼 수가 있었습니다.이 화면에서 저 화면으로 어떠한 액션으로 이동되는지 볼 수가 있었죠.안드로이드는 개별화면의 편집만 가능한 layout editor는 있었는데아쉽게도 스토리보드 기능까지는 지원하지 않았습니다.그런데 이번 navigation 의 추가로 스토리보드라는것을 그릴수 있게 되..추천