Биллинг в Google Play – Как проверить уже приобретенную пользователем подписку на второе открытие приложения?

Я следовал руководству из документа разработчика Google: https://developer.android.com/google/play/billing/integrate?hl=vi

Завершенный шаг: обработка потока покупки, обработка результата покупки и обработка ответа на подтверждение покупки. На этом этапе я могу определить успех покупки пользователя или нет.

И в настоящее время у меня нет серверной части для выполнения следующего шага руководства: https://developer.android.com/google/play/billing/backend?hl=vi

Как при повторном запуске приложения определить, что пользователь уже приобрел подписку (без повторной обработки процесса покупки)? А как определить подписку пользователя при смене устройства?

это можно сделать с помощью queryPurchasesAsync

MinhNV 30.04.2024 15:27
0
1
77
1
Перейти к ответу Данный вопрос помечен как решенный

Ответы 1

Ответ принят как подходящий

это можно сделать с помощью queryPurchasesAsync

    void QueryPurchase(){
        QueryPurchasesParams queryPurchasesParams = QueryPurchasesParams.newBuilder().setProductType(BillingClient.ProductType.SUBS).build();
        billingClient.queryPurchasesAsync(queryPurchasesParams, new PurchasesResponseListener() {
            @Override
            public void onQueryPurchasesResponse(@NonNull BillingResult billingResult, @NonNull List<Purchase> list) {
                if (list==null){
                    return;
                }
                Log.d(TAG, "onQueryPurchasesResponse, list.size = "+String.valueOf(list.size()));
                for(Purchase purchase: list){
                    boolean bIsAutoRenewing = purchase.isAutoRenewing();
                    Log.d(TAG, "bIsAutoRenewing = "+String.valueOf(bIsAutoRenewing));
                }
            }
        });
    }

тогда это можно определить с помощью bIsAutoRenewing

Другие вопросы по теме