안드로이드 IAB ..

In-app Billing Overview

In app Billing Service 에서 구글 서버에 요청, 확인 하는 과정 대리함. 금융 거래 데이터를 다룰 필요가 없다.

Product and Purchase Types

먼저 제품을 등록해야 함. 제품 종류, 구입 종류, SKU, 가격, 설명 등

Product Types

두가지 상이한 제품이 있지만, 구입 과정은 동일한 통신모델, 데이터구조, UI 를 갖는다.

In-app products

한번만 구매하는 제품. 기능 언락. 구매하면 반품 윈도우가 없다.  환불 받으려면 개발자에게 직접 연락해야 함.
“managed per user account” 또는 “unmanaged” 를 통해 판매 가능.
항상 ‘하나의’ 앱과 명시적으로 연관되어야 함. 즉, 한 앱은 다른 앱을 위해 발행된 ‘인앱 제품’ 을 구매할 수 없다.
In app products 는 모든 버전의 In-app Billing 에서 지원한다.

Subscriptions

일정 주기로 판매되는 아이템.  유저가 이것을 구입하면 구글 플레이와 그 결재 프로세서가 자동적으로 결재를 한다. 한번 구매하면 구글 플레이는 계정을 승인 요청이나 다른 경고 없이 무한히 계속한다. 사용자는 언제고 구매를 취소할 수 있다.
“managed per user account” 구매 방식에 의해서만 판매 가능. 이것도 리펀드 윈도우 없음. 개발자 직접 연락.  자세한 사항은 더 참조할 것.

Purchase Types

두가지 구매 방식. “유저 계정” 에 따른 것과, “비관리” 되는 것.

Managed per user account : 계정별 관리

한번만 구매하는 제품. 구매 되면 구글 플레이는 영수증을 ‘누가’ 구매 했는지 영원히 보관한다. 이것을 통해 나중에 구글에 쿼리하여 구매한 아이템을 복원 할 수 있다.  이미 구매한 아이템을 구매하려고하면 구글 플레이가 재구매를 박고 “Item already purchased” 에러를 보낸다.
게임 레벨, 기능 등을 팔 때 유용하다. 이 아이템은 일시적인 것이 아니고 앱을 재 설치할 때 복원되어야 한다.

Unmanaged : 비관리 형식

구글 플레이에 저장되지 않는 아이템들. 나중에 쿼리할 수 없다. 개발자가 결재 정보를 관리할 책임이 있다. 구글 플레이가 재구매를 막지 않기때문에 여러번 구매할 수 있으므로 몇 번 구매 가능한 지에 대해서 개발자가 관리해야 한다.
소비성 제품 판매에 적절하고 여러번 구매될 수 있다.

In-app Billing Architecture

기기에 설치된 구글 플레이 앱에 노출된 API 를 이용하여 당신의 앱은  In-app Billing 서비스에 접속한다. 구글 플레이 앱은 비동기 메시지 루프를 통해 구매 요청을 전달하고 앱과 구글 플레이 서버 사이에서 신호를 받는다.
실제로, 당신의 앱은 구글 플레이 서버와 직접 통신하지 않는다. 대신, 니 앱은 구글 플레이 어플에 IPC 로 요청하고 구글 플레이 어플로부터 비동기 브로드캐스트 인텐츠의 형식으로 응답을 받는다.  asynchronous broadcast intents.
니 앱은 어떠한 네트워크 커넥션도 하지 않으며 특별한 안드로이드 플랫폼의 API 를 이용하지도 않는다.

어떤 경우 사설 원격 서버를 사용해서 사진이나 미디어를 전달할 수 도 있다. 또한, 거래 내역을 저장하거나 추가적인 보안 작업을 할 수도 있다. 앱에서 보안관련 처리를 할 수 있지만 서버에서 하는 것이 더 안전하다.

전형적인 in-app billing 구현은 3가지 요소에 달려있다.

>> A Service (BillingService) : 어플로부터 구매 메시지를 처리, 구매 요청을 구글 플레이 서비스에 보냄.

>> A BroadcastReceiver (BillingReceiver) : 구글 플레이 어플로부터 모든 비동기 구매 응답을 받음.

>> A security component (Security) : 보안 관련 작업. signature verification, nonce generation.

추가 가능한 다른 두 요소.

>> A response Handler : 구매 노티, 에러, 상태 메시지 등.
>> An observer : 니 어플에 콜백을 보내는 일 담당.

이 외에 어플에서는 사용자 구매를 저장할 방법을 제공해야 하고, 구매 관련 유아이가 있어야 함. 체크아웃 UI 는 불필요. 사용자가 구매를 시작할 때, 구글 플레이 어플은 UI 를 제공한다. 유저가 체크아웃을 완료하면 어플이 재개 됨.

Advertisements

답글 남기기

아래 항목을 채우거나 오른쪽 아이콘 중 하나를 클릭하여 로그 인 하세요:

WordPress.com 로고

WordPress.com의 계정을 사용하여 댓글을 남깁니다. 로그아웃 / 변경 )

Twitter 사진

Twitter의 계정을 사용하여 댓글을 남깁니다. 로그아웃 / 변경 )

Facebook 사진

Facebook의 계정을 사용하여 댓글을 남깁니다. 로그아웃 / 변경 )

Google+ photo

Google+의 계정을 사용하여 댓글을 남깁니다. 로그아웃 / 변경 )

%s에 연결하는 중