다음을 통해 공유


Xamarin.iOS의 구독 및 보고

비 갱신 구독 정보

비 갱신 구독은 시간 제한이 있는 서비스 판매를 나타내는 제품(예: 탐색 애플리케이션에 대한 1주일 액세스 또는 데이터 아카이브에 대한 시간 제한 액세스)을 위한 것입니다.

비 갱신 구독과 다른 제품 유형 간의 주요 차이점:

  • iTunes 커넥트 제품 정의에는 용어가 포함되지 않습니다. 애플리케이션 코드는 제품 ID에서 유효 기간을 유추할 수 있어야 합니다.
  • 소모성 제품처럼 여러 번 구매할 수 있습니다. 애플리케이션은 구독 기간/만료 및 갱신을 관리하고 사용자가 겹치는 구독을 구입하지 못하도록 해야 합니다.
  • 구매는 StoreKit 복원 함수에서 지원되지 않습니다. 모든 사용자의 디바이스에서 구독을 사용할 수 있어야 하는 경우 애플리케이션은 원격 서버와 함께 이 기능을 디자인하고 구현해야 합니다. 또한 애플리케이션은 디바이스가 백업된 다음 백업에서 복원되는 경우 구독 상태 백업할 책임이 있습니다.
  • 구현 개요
  • 비 갱신 구독은 일반적으로 서버 제공 워크플로를 사용하여 구현되고 소모성 제품처럼 관리되어야 합니다.

무료 구독 정보

무료 구독을 사용하면 개발자가 Newsstand 앱에 무료 콘텐츠를 넣을 수 있습니다(뉴스스탠드가 아닌 앱에서는 사용할 수 없음). 무료 구독이 시작되면 모든 사용자의 디바이스에서 사용할 수 있습니다. 무료 구독은 만료되지 않습니다. 애플리케이션을 제거할 때만 종료됩니다.

구현 개요

무료 구독은 자동 재생 가능 구독과 매우 유사하게 작동합니다. 애플리케이션에는 iTunes 커넥트 '구매'에 사용할 수 있는 무료 구독 제품이 있어야 합니다. 사용자가 구매한 경우 무료 구독 구매는 자동 재생 가능 구독 제품처럼 유효성을 검사해야 합니다. 무료 구독 트랜잭션을 복원할 수 있습니다.

자동 재생 가능 구독 정보

자동 재생 가능 구독은 newsstand 애플리케이션에서 기본 사용됩니다. iTunes 커넥트 구성된 지정된 기간 동안 사용자에게 동적 콘텐츠에 대한 액세스 권한을 부여하는 제품을 나타냅니다(7일에서 1년까지의 기간 설정). 사용자가 옵트아웃하지 않는 한 구독은 자동으로 갱신되어 각 구독 기간이 끝날 때 사용자에게 Apple ID를 청구합니다. 이 제품 유형은 사용자가 구독이 유효한 동안 게시된 각 문제에 액세스할 수 있는 잡지 또는 뉴스 구독에 적합합니다.

구현 개요

자동 재생 가능 구독은 서버 배달 제품 워크플로를 사용하여 구현해야 합니다(영수증 확인 및 서버 배달 제품 섹션 참조).

공유 비밀

서버에서 자동 재생 가능 구독을 확인할 때 앱 내 구매 공유 비밀을 JSON 요청에 사용해야 합니다. 공유 비밀은 iTunes 커넥트 통해 생성/액세스됩니다.

iTunes 커넥트 홈페이지에서 내 앱 선택합니다.

Select My Apps

애플리케이션을 선택하고 앱에서 구매 탭을 클릭합니다.

Click on the In-App Purchases tab

페이지 아래쪽에서 공유 비밀 보기를 선택 하거나 공유 비밀을 생성합니다.

Select View or generate a shared secret

Generate a shared secret

공유 비밀을 사용하려면 다음과 같이 자동 재생 가능 구독에 대한 앱 내 구매 영수증의 유효성을 검사할 때 Apple 서버로 전송되는 JSON 페이로드에 포함합니다.

{
   "receipt-data" : "(receipt bytes here)",
   "password"     : "(shared secret bytes here)"
}

다른 제품 유형과 마찬가지로 구매가 유효한 경우 응답의 상태 필드는 0이 됩니다.

초기 구독 기간 이후 항목 다운로드

구독 제품 제공의 일환으로 코드는 Apple 서버에 대해 알려진 최신 수신을 자주 확인해야 합니다. 마지막 확인 이후 구독이 자동 갱신된 경우 JSON 응답에는 발생한 트랜잭션을 애플리케이션에 알리는 추가 필드가 포함됩니다(구독 유효성을 확장해야 합니다). JSON 응답에는 다음이 포함됩니다.

{
   "status" : 0,
   "receipt" : { (receipt here) },
   "latest_receipt" : "(base-64 encoded receipt here)",
   "latest_receipt_info" : { (latest receipt info here) }
}

상태 0이면 구독이 여전히 유효하고 다른 필드에는 유효한 데이터가 있습니다. 상태 21006이면 구독이 만료됩니다. 다른 오류 코드는 자동 재생 가능 구독 확인 확인 설명서를 참조하세요.

자동 재생 가능 구독 복원

구독이 갱신된 각 기간에 대해 원래 구매 트랜잭션과 별도의 트랜잭션 등 여러 트랜잭션을 다시 가져옵니다. 유효 기간이 무엇인지 이해하려면 시작 날짜 및 용어를 추적해야 합니다.

SKPaymentTransaction 개체는 구독 기간을 포함하지 않습니다. 각 용어에 대해 다른 제품 ID를 사용하고 트랜잭션의 구매 날짜로부터 구독 기간을 추정할 수 있는 코드를 작성해야 합니다.

자동 갱신 테스트

구독을 더 쉽게 테스트할 수 있도록 샌드박스에서 테스트할 때 해당 기간이 압축됩니다. 1주 구독은 3분마다 갱신되며, 1년 구독은 매시간 갱신됩니다. 구독은 샌드박스에서 테스트하는 동안 최대 6회 자동 갱신됩니다.

보고

iTunes 커넥트(itunesconnect.apple.com)는 다음을 제공합니다.

판매 및 추세 – 앱 다운로드, 업데이트 및 앱 내 구매에 대한 세부 정보를 표시합니다.

결제 및 재무 보고서 – 앱에서 얻은 수입과 귀하에게 지급된 금액을 나열하고 지불해야 하는 금액을 자세히 설명합니다.

판매 및 추세 보고서 예제는 다음과 같습니다.

An example Sales and Trends report

ITC 커넥트 Mobile iOS 앱도 있습니다. 사용 가능한 일부 통계에 대한 i전화 스크린샷은 다음과 같습니다.

iPhone screenshots for some of the statistics available