본문 바로가기

개발 블로그25

[iOS GCD(Grand Central Dispatch)] 소개 및 멀티스레드 프로그래밍 GCD(Grand Central Dispatch) 란 무엇이냐..? GCD는 작업(task)을 비동기적으로 실행하기 위한 기술 중 하나.! 개발자가 작업할 것은 작업을 정의하고 적당한 디스패치 큐에 추가하면 GCD는 필요한 스레드를 생성하고 각 스레드가 동작할 수 있도록 스케쥴을 처리해줌. DispatchQueue.global().async { /* * 이미지 처리, DB 접근 등의 시간이 오래 걸리는 작업을 합시다. * */ DispatchQueue.main.async { /* * 여기서는 메인 스레드 작업이 들어감. (사용자 인터페이스(UI) 갱신) */ } } DispatchQueue.global().async { } 이 한 줄로 작업을 백그라운드 스레드로 실행해준다. DispatchQueue.ma.. 2019. 12. 19.
[iOS 앱 내 구입] iOS 앱 내 결제 시스템 구현편 먼저 아이템 목록을 가져오는 Flow 이다 미리 AppStore Connect에서 만들어 놓은 아이템들이 있을 것이고 그것을 모두 다 사용해도 되지만 우리는 서버에서 시즌별, 또는 이벤트별 여러 아이템을 미리 만들어 놓았다. 그래서 서버 기반으로 아이템을 보여줄 목록을 받는다. 모바일에서 사용할 아이템 리스트를 결제 페이지에서 받아 온다. 아이템 목록(id와 설명) 을 받아오면 id를 배열로 StoreKit 을 통해서 아이템의 가격과 정보들을 다시 받는다. 우리 서버에서 받은 목록과 StoreKit에서 받은 목록을 모델링해서 유저에게 테이블뷰 리스트로 보여준다. 이렇게 하는 이유가 있다. 처음에 말했지만 아이템 목록을 앱 코드상에서 하드코딩으로 한다면 유연하게 아이템에 대한 이벤트를 하기가 쉽지 않다. .. 2019. 12. 13.
[iOS 앱 내 구입] iOS 앱 내 결제 시스템을 구현하면서 필수 고려할 사항 정리 https://developer.apple.com/kr/in-app-purchase/ 앱 내 구입 - Apple Developer 개요 앱 내 구입을 통해 구독, 새로운 기능 및 서비스를 비롯하여 다양한 콘텐츠를 판매할 수 있습니다. 앱 내 구입은 네 가지의 유형으로 제공할 수 있습니다. 사용자는 iOS, macOS 및 tvOS에서 앱 내 구입을 이용할 수 있습니다. 소모성 사용자는 앱에서 게임을 진행하기 위해 게임 내에서 생명이나 보석과 같은 다양한 소모성 항목을 구입할 수 있습니다. 소모성 앱 내 구입은 일회성입니다. 즉, 한 번 사용하면 소모되므로 다시 구입해야 합니다. 비소모 developer.apple.com 주의 첫 번째 앱 내 구입은 새로운 앱 버전과 함께 제출해야 합니다. 앱 내 구입을 생.. 2019. 12. 4.
[iOS] App Lifecycle( 앱 생명주기) 앱을 개발하다 보면 앱의 생명주기에 따라 어떤 작업을 해야 할 때가 있다. 뭐 기본적으로 앱을 처음 실행시 기본적으로 라이브러리 세팅 등을 해준다. firebase 나 userhabit, ga, 기타..등등 앱의 기본적으로 필요한 세팅 서드파티 라이브러리 세팅 (Firebase, UserHabit, GA) 이런 세팅후 서버 통신을 통해서 앱에 대한 설정값, 또는 version 체크를 통한 강제 업데이트 여부 등을 통해서 정말 이 버전에서 실행을 해도 되는 조건이 맞는지도 체크를 한다. 서버 통신 후 실행 가능한지 여부 체크 서버 통신 후 앱의 기본정보 세팅 Version 체크 (강제 업데이트 여부) 또는 (홈버튼..아 없어졌나..) 하이튼 홈 화면으로 나갔을때 서버에 앱에 대한 정보를 저장해야 할 내용이.. 2019. 11. 27.