ICSD3

구글애드센스


Apple App Store Distribution

열심히 만든 iOS앱을 애플 앱스토어에 배포하기란 여간 귀찮고 힘든일이 아니다. 개인적으로 안드로이드앱을 구글플레이에 배포하는 과정에 비하면 딱 열 배쯤 힘들지 않을까 생각한다. ^^;;

하지만, 한 가지 좋은 소식은 과거(7-8년 전)에 비해 등록 및 심사 절차가 조금은 쉽고 빨라진 듯 하다. 앞으로 더욱 쉽고 간편해질 것이라 기대해본다.



<사진 1>


<사진 2>




<사진 3>



<사진 4>


<사진 5>



<사진 1>은 애플 개발자 프로그램등록이 정상적으로 완료되고 개발자사이트에 로그인하면 첫 화면이다. 가장 오른쪽에 있는 "iTunes Connect"를 누르면 <사진 2>의 화면이 보이고 여기서 다시 "Go to iTunes Connect"버튼을 누르면 <사진 4> 화면이 보이고 좌측 상단 "+"버튼을 누르면 나오는 메뉴의 "신규 앱"을 누른다. 그럼 <사진 5>와 같이 "iOS 앱에 사용할 수 있는 번들 ID가 없습니다."라는 대화창이 뜬다. "여기에서 등록하십시오."를 누른다.



<사진 6>


<사진 6>과 같이 "iOS Certificates"라는 화면이 보이는데 나중에 앱을 등록하기 위해서 인증서가 필요한데 지금은 넘어가고 좌측 메뉴의 "Identifiers > App IDs"를 누른다. 인증서를 요청하는 방법은 두 가지 방법이 있다. 하나는 Xcode에서 요청하는 것이고 다른 하나는 <사진 6> 화면의 "Certificate Signing Request"를 눌러서 수동으로 진행하는 방법이다. Xcode를 통해서 진행하는 것이 더 편할것 같다.



<사진 7>


<사진 8>


<사진 9>


<사진 10>



<사진 7>부터 <사진 10>까지는 번들 ID를 등록하는 화면이다. 입력할 내용은 딱 두 가지이다. <사진 8>의 앱이름과 <사진 9>의 번들 ID이다. 앱이름은 영문으로 등록하고자 하는 앱의 이름을 적으면 되고 Bundle ID는 도메인을 역순으로 표기하는 방식을 추천하는데 어찌되었든 앱을 개발할때 사용한 "Bundle Identifier"를 입력하면 된다. <사진 10>의 "App Service"는 기본적으로 Game Center와 In-App Purchase가 선택되어 있는데 Push Notifications 등 앱에 포함된 서비스를 선택하고 "Continue" 버튼을 누른다. 그럼 <사진 11>과 <사진 12>처럼 입력한 번들 ID 정보를 확인하는 화면이 보이고 "Register"버튼을 누르면 등록이 완료된다.




<사진 11>


<사진 12>




<사진 13>



번들 ID등록이 완료되었으면 다시 <사진 4>의 "+ > 신규 앱"을 누르면 <사진 13>의 신규 앱 등록 대화창이 뜬다. 플랫폼, 회사 이름 등 각 항목을 입력하면 되는데 익숙지 않은 2가지 항목이 보인다. "전자 상거래 등록번호"와 "SKU"인데 전자 상거래 등록번호는 통신판매업신고번호이고 SKU는 앱스토어에는 노출되지 않는 앱의 고유번호라고 설명하므로 그냥 내부적으로 관리하는 앱의 고유 ID쯤으로 생각하고 적당한 일련번호를 입력하면 된다. 이제 "생성"버튼을 누르면 <사진 14>부터 <사진 20>까지의 앱 정보 화면을 볼수 있다. 앱정보는 필수항목과 선택항목이 뒤 섞여 있고 천천히 도움말을 읽어가면 각 항목을 입력하는데 크게 어려움은 없을 것이다. 다만, "앱 미리보기 및 스크린샷"과 "빌드"는 조금 성가신 작업이 필요하다. 앱 미리보기는 앱을 간략히 소개하는 짧은 동영상을 등록하면 되는데 선택사항이다. 스크린샷은 <사진 15>와 같이 3개의 탭이 있는데 이중 iPhone 5.5" 디스플레이가 필수이고 앱이 iPad용이거나 Universal로 설정되어 있다면 필수이다.


<사진 17>의 빌드는 Xcode 또는 Application Loader에서 업로드할 수 있는데 역시나 Xcode가 쉽고 편할 것이다. 모든 필수항목을 입력했다면 우측 상단의 "저장"버튼을 눌러서 저장하고 Xcode에서 빌드를 업로드 한다.



<사진 14>


<사진 15>


<사진 16>


<사진 17>


<사진 18>


<사진 19>


<사진 20>






<사진 21>



<사진 22>



<사진 23>



<사진 21>부터 <사진 23>까지는 iOS Certificate를 등록하는 방법인데 이것은 iOS앱을 개발용 디바이스에 설치하거나 앱스토어에 배포할 때 필요한 것으로 이것 또한 Xcode를 통해서 하는 방법이 가장 쉽다고 설명하고 있다.



<사진 24>


<사진 25>



<사진 26>



<사진 27>


<사진 28>



<사진 24>에서 <사진 28> 까지는 iOS Provisioning Profile을 등록하는 과정인데 마찬가지로 Xcode가 가장 쉬운방법이라고 한다. Provisioning Profile은 지금까지 등록하고 생성하고 설치한 것들(Signing Certificate, Device Identifier, App ID)을 모아서 하나로 묶고 앱을 개발하는동안 빌드와 설치하는데 사용되고 앱을 앱스토어에 등록 및 베타테스터들에게 배포하는데 사용된다.



<사진 29>



Xcode 메뉴에서 "Product > Archive"를 누르고 <사진 30>의 화면에서 우측 상단의 "Upload to App Store..."버튼을 누르면 대화상자가 열리는데 "Next" 버튼을 누른다.



<사진 30>




<사진 31>



<사진 31> 대화상자에서 Team, Distribution certificate, Provisioning Profile을 선택하고 "Next"버튼을 누른다.




<사진 32>



<사진 32> Review ipa content 화면에서 내용을 확인하고 "Upload"버튼을 누르면 조금 시간이 걸리지만 <사진 33> "Uploading to App Store"라는 메시지와 프로그렌스바가 올라가면서 업로드가 진행된다. 업로드가 완료되면 <사진 34> "Upload Successful" 메시지와 함께 모두 끝난다.


<사진 33>


<사진 34>




<사진 35>


<사진 36>



<사진 35>의 iTunes Connect > 나의 앱 > 활동내역 > 모든빌드 화면에서 보면 업로드된 버전 1.0의 빌드가 보이고 "처리중"으로 표시된다. 약 5 ~ 10분 가량 시간이 지나면 처리가 끝나고 이후 <사진 17>의 빌드정보를 보면 업로드된 빌드의 앱아이콘이 보일 것이다. 해당 빌드를 선택하고 우측 상단의 "심사를 위해 제출" 버튼을 누르면 등록한 입력항목들이 모두 이상 없다면 <사진 36>의 화면을 만나게 된다. 수출규정, 콘텐츠 권한, 광고 식별자라는 항목을 다시 선택해줘야 하는데 지금 당장은 그렇게 중요한 내용같지않다. 모두 아니오를 선택하고 "저장"을 누르면 진짜 끝난다. 심사대기중으로 상태가 변경되고 잠시후 애플로부터 안내메일이 도착한다.

평균적으로 50% 정도는 24시간 안에 90% 이상이 48시간 안에 심사가 끝난다고 한다. 사실인지는 이틀정도 지나봐야 알겠지만 과거에 비하면 엄청나게 빨라진 심사기간이다.


애플 개발자 프로그램 등록

애플 개발자 프로그램 등록은 구글에 비해 상당히 까다롭다. 절차가 복잡하고 시간이 오래 걸리기 때문에 최소 2주 정도는 예상하고 진행하는 것이 정신건강에 좋다. 물론 더 빨리 끝날수도 있고 더 걸릴수도 있는데 2주 이상 걸린다면 애플 개발자 프로그램 지원팀에 이메일 또는 전화로 문의를 하는 것이 가장 빠른 길이다. 애플 개발자 프로그램 지원팀 전화번호는... » 내용보기

구글블로그 네이버웹마스터도구 등록

구글블로그를 개설하고나서 각 검색엔진에 색인이 잘 되도록 최적화하기 위해서 검색엔진에서 제공하는 웹마스터도구에 직접 사이트를 등록하고 설정하는 방법을 알아보자.여기서 중요한 것은 색인과 노출은 다르다는 것을 알아야 한다. 색인은 내 사이트의 공개된 페이지들을 검색엔진봇이 수집을 하고 수집된 페이지들을 검증/정제를 하여 검색엔진 데이터베이스에 저장을 하는... » 내용보기

안드로이드 스튜디오 업데이트 후 AAPT2 에러

오늘 AS(Android Studio)를 아무 생각없이 업데이트했더니 다음과 같은 에러가 발생했다.AAPT2 error: check logs for detailsError: java.util.concurrent.ExecutionException: com.android.builder.internal.aapt.v2.Aapt2Exception: AAPT2 e... » 내용보기

2018시즌 첫 쏘가리 출조

지난 금요일 퇴근 후 전 회사동료와 함께 홍천 북방면 굴지리주변 홍천강으로 올해 첫 쏘가리 출조를 다녀왔다. 경계심이 강한 쏘가리는 보름달이 뜨면 잘 움직이지 않는다고 하던데 모처럼 출조하는 오늘이 보름달 이틀전이다.첫 포인트에 진입하여 미노우로 쏘가리를 열심히 꼬셔보지만 이렇다 할 반응이 없어 두 번째 포인트로 이동을 결정하고 이동한다. 이동... » 내용보기