렌파이에는 고급 인앱 구매 시스템 제작틀이 있습니다. 이 틀은 현재 애플 앱 스토어, 구글 플레이와 아마존 앱스토어용 잠금 해제 스타일의 구매 형태만 지원합니다.
이 틀을 사용하는 방법은 꽤 간단하며 다음과 같은 기능으로 이루어져있습니다.
iap.register()
함수를 사용해 사용할 수 있는 구매 항목을 모두 등록합니다.iap.has_purchased()
함수를 사용해 구매가 이루어졌는지 확인합니다.iap.purchase()
함수나
iap.Purchase()
액션을 사용해 사용자가 아이템을 구매할 수 있도록 합니다.iap.restore()
함수나 iap.Restore()
액션을
사용해 다른 기기에서 구매 내역을 복원할 수 있도록 합니다.인앱 구매 시스템을 제공하려면 여러 마켓에서 판매할 구매 항목(및 해당 항목 가격)이 반드시 설정되어야 합니다. 빌드를 만들 때 렌파이는 패키지 설정 시 이용하려는 마켓이 무엇인지 물을 것입니다.
iap.
get_price
(product)¶product 가격이 사용자의 지역 통화 단위로 적힌 문자열을 반환한다. product 가격을 알 수 없으면 None을 반환한다. 참고로 이는 구매할 수 없는 `product`를 의미한다.
iap.
get_store_name
()¶인앱구매 시스템이 활성화된 스토어 이름을 반환한다. 현재는 "amazon", "google", "ios" 또는 설정된 스토어가 없는 경우에 None을 반환한다.
iap.
has_purchased
(product)¶사용자가 과거에 product 를 구매했다면 True 를 반환하며 아니면 False를 반환한다.
iap.
is_deferred
(product)¶사용자가 product 구매를 요청하면 True 를 반환한다. 그러나 해당 요청은 부모나 보호자 같은 제 삼자의 승낙을 받은 것이어야 한다.
iap.
purchase
(product, interact=True)¶이 함수는 product 구매를 요청한다.
과거에 구매에 성공했거나 현재 구매에 성공하면 True 를 반환하며 아니면 False를 반환한다.
iap.
register
(product, identifier=None, amazon=None, google=None, ios=None)¶인앱 구매 시스템으로 제품을 등록한다.
iap.purchase()
, iap.Purchase()
,
iap.has_purchased()
에 전달된다.내부에서 상품을 식별할 때 사용하는 문자열. 일단 상품을 대표하여 사용되고 나면 이 값은 절대 바뀌어서는 안 된다. 이 문자열은 일반적으로 "com.domain.game.product" 과 같은 형태이다.
None이라면, 기본값은 product 의 값을 따른다.
iap.
restore
(interact=True)¶스토어에 접촉해 사라진 상품을 복원한다.