앱 내 구매
Mac App Store의 앱 내 구매 기능.
프로세스: Main
이벤트
inAppPurchase
모듈은 다음과 같은 이벤트를 발생시킨다:
이벤트: 'transactions-updated'
하나 이상의 트랜잭션이 업데이트되었을 때 발생한다.
반환값:
event
Eventtransactions
Transaction[] - Transaction 객체의 배열
메서드
inAppPurchase
모듈은 다음과 같은 메서드를 제공한다:
inAppPurchase.purchaseProduct(productID[, opts])
productID
string - 구매할 제품의 IDopts
Integer | Object (선택 사항) - 정수로 지정할 경우, 구매 수량을 정의한다.quantity
Integer (선택 사항) - 사용자가 구매하려는 아이템의 수량username
string (선택 사항) - 서비스(애플리케이션) 내 사용자 계정과 트랜잭션을 연결하는 문자열
반환값: Promise<boolean>
- 제품이 유효하고 결제 대기열에 추가되면 true
를 반환한다.
transactions-updated
이벤트를 가능한 한 빨리, 그리고 purchaseProduct
를 호출하기 전에 반드시 수신 대기해야 한다.
inAppPurchase.getProducts(productIDs)
productIDs
string[] - 가져올 제품의 식별자 배열
Returns Promise<Product[]>
- Product 객체 배열로 이행되는 Promise
제품 설명 정보를 가져온다.
inAppPurchase.canMakePayments()
boolean
값을 반환한다. 사용자가 결제를 진행할 수 있는지 여부를 나타낸다.
inAppPurchase.restoreCompletedTransactions()
완료된 트랜잭션을 복원한다. 이 메서드는 추가 기기에 구매 내역을 설치하거나, 사용자가 삭제 후 재설치한 애플리케이션의 구매 내역을 복원할 때 호출할 수 있다.
결제 큐는 복원 가능한 이전에 완료된 각 트랜잭션에 대해 새로운 트랜잭션을 전달한다. 각 트랜잭션에는 원본 트랜잭션의 복사본이 포함된다.
inAppPurchase.getReceiptURL()
는 영수증 경로를 나타내는 문자열을 반환한다.
inAppPurchase.finishAllTransactions()
보류 중인 모든 트랜잭션을 완료한다.
inAppPurchase.finishTransactionByDate(date)
date
string - 완료할 트랜잭션의 ISO 형식 날짜
지정한 날짜에 해당하는 보류 중인 트랜잭션을 완료한다.