한 번의 지불로 광고를 제거 할 수 있도록 게임에 "광고 없음"서비스를 추가하고 싶습니다. 이것을 올바르게 구현하려면 어떻게해야합니까?
서비스가 장치에서 로컬로 지불되었다는 사실을 저장하면 사용자가 응용 프로그램의 데이터를 지우면 다시 지불해야합니다.
한 번의 지불로 광고를 제거 할 수 있도록 게임에 "광고 없음"서비스를 추가하고 싶습니다. 이것을 올바르게 구현하려면 어떻게해야합니까?
서비스가 장치에서 로컬로 지불되었다는 사실을 저장하면 사용자가 응용 프로그램의 데이터를 지우면 다시 지불해야합니다.
답변:
Google Play의 인앱 구매 API 를 사용하여 '비활성화 된 광고'구매를 구현하는 경우 기본적으로 처리됩니다. 사용자가 구입할 수있는 소모품 이 아닌 제품 을 만들고 싶을 것 입니다. 비 소모품은 본질적으로 영구적 인 이익 또는 잠금 해제를 나타냅니다. 이러한 구매는 사용자가 초기화 / 청소 / 새 전화로 복원 할 수 있으므로 광고 비활성화를 다시 구매할 필요가 없습니다.
이 페이지 에는 게임과 IAP API 통합에 대한 자세한 지침 이 포함되어 있습니다. 단계는 기본적으로 다음과 같습니다.
IInAppBillingService
서비스 연결 을 통해 바인딩 합니다.getSkuDetails
사용 가능한 제품 목록을 얻 getBuyIntent
거나 구매 트랜잭션을 시작하는 등).또한을 통해 getPurchases
사용자가 '광고 사용 중지'항목을 구매했는지 (그리고 실제로는 광고를 사용 중지했는지) 테스트해야합니다 .
Google Play 개발자 콘솔에서 실제 '광고 사용 중지'구매 가능 항목을 만듭니다.
Josh의 답변에서와 같이 Google Play 도구를 사용하지 않는 경우에도 해당 도구를 사용하는 것이 좋습니다. 이 정보를 직접 관리해야합니다.
사용자 기기에 로컬로 무언가를 저장하지 않으려 고합니다. 사용자는 기기 또는 설치마다 광고를 제거하기 위해 비용을 지불하지 않아도됩니다.
지불 한 사용자와 데이터베이스를 유지 관리해야합니다. 시작시 (다른 장치에서 광고 제거를 구매할 때마다) 응용 프로그램은 데이터베이스를 확인하고 사용자 계정이 발견되면 해당 설치에 대해 광고를 영구적으로 비활성화합니다. 사용자 계정 정보는 사용자에게 고유해야하며, 이상적으로는 광고 제거를 구매할 때 사용한 Google 계정이어야합니다.
사용자가 광고 제거를 구매하면 계정 정보를 데이터베이스에 추가하고 광고를 비활성화합니다.