개발자 페이로드

개발자 페이로드는 과거에 사기를 예방하고 올바른 사용자에게 구매를 제공하는 등 다양한 목적으로 사용되었습니다. 이전에 개발자 페이로드에 의존하도록 의도된 사용 사례가 Google Play 결제 라이브러리 버전 2.2에서는 이제 라이브러리의 다른 부분에서 완전히 지원됩니다.

이러한 지원이 제공되는 가운데 Google Play 결제 라이브러리 버전 2.2부터 개발자 페이로드는 지원이 중단됩니다. 개발자 페이로드와 연결된 메서드는 지원이 중단되며 향후 출시되는 라이브러리에서 삭제됩니다. 앱은 라이브러리의 이전 버전 또는 AIDL을 사용하여 발생한 구매의 개발자 페이로드를 계속 가져올 수 있습니다.

자세한 변경사항 목록은 Google Play 결제 라이브러리 2.2 출시 노트를 참조하세요.

구매 확인

구매가 신뢰할 수 있고, 위조되거나 재생되지 않았다는 것을 보장하기 위해 Google Play Developer API와 함께 구매 토큰(Purchase 객체의 getPurchaseToken() 메서드에서 가져옴)을 사용하여 구매가 신뢰할 수 있는지 확인하는 것이 좋습니다. 자세한 내용은 사기 및 악용 방지를 참조하세요.

구매 기여 분석

많은 앱, 특히 게임은 구매를 시작한 인게임 캐릭터/아바타 또는 인앱 사용자 프로필에 구매가 올바르게 기여되었는지 확인해야 합니다. Google Play 결제 라이브러리 2.2부터 앱은 구매 대화상자를 시작할 때 Google에 난독화된 계정과 프로필 식별자를 전달하고 구매를 회수할 때 반환하도록 할 수 있습니다.

BillingFlowParamssetObfuscatedAccountId()setObfuscatedProfileId() 매개변수를 사용하고 Purchase 객체에서 getAccountIdentifiers() 메서드를 사용하여 회수합니다.

메타데이터를 구매에 연결

구매에 관한 메타데이터는 개발자가 유지하는 안전한 백엔드 서버에 저장하는 것이 좋습니다. 이러한 구매 메타데이터는 Purchase 객체의 getPurchaseToken 메서드를 사용하여 가져온 구매 토큰과 연결되어야 합니다. 구매가 성공적으로 이루어진 후에 PurchasesUpdatedListener가 호출될 때 구매 토큰과 메타데이터를 백엔드에 전달하여 이 데이터를 유지할 수 있습니다.

구매 흐름에 방해가 있을 때 메타데이터의 연결을 보장하려면 구매 대화상자를 실행하고 메타데이터를 사용자의 계정 ID, 구매 중인 SKU 및 현재 타임스탬프와 연결하기 전에 개발자의 백엔드 서버에 저장하는 것이 좋습니다.

PurchasesUpdatedListener가 호출되기 전에 구매 흐름이 중단되면 앱이 다시 시작되어 BillingClient.queryPurchases()를 호출할 때 구매를 감지합니다. 그런 다음 Purchase 객체의 getPurchaseTime(), getSku()getPurchaseToken() 메서드에서 가져온 값을 백엔드 서버에 전송하여 메타데이터를 조회하고 구매 토큰과 연결하여 구매를 계속 처리할 수 있습니다.