2

https://github.com/serso/android-checkout lib から com.android.billingclient.api への移行に取り組んでいます。Checkout API を使用すると、開発ペイロードをパラメーターとして提供することで購入フローを開始できました。以下のように

    /**
     * @see #startPurchaseFlow(String, String, String, RequestListener)
     */
    public void startPurchaseFlow(Sku sku, @Nullable String payload, RequestListener<Purchase> listener) {
        startPurchaseFlow(sku, payload, null, listener);
    }

後で、購入履歴を取得しながら、同じ開発者ペイロードを取得できます。

com.android.billingclient.api を使用して、開発者のペイロードを提供できることがわかりました。コードを見ると、com.android.billingclient.api クラスの BillingClientImpl で、ペイロードが単に null 値として提供されていることがわかります。

futureBuyIntentBundle =
          executeAsync(
              new Callable<Bundle>() {
                @Override
                public Bundle call() throws Exception {
                  return mService.getBuyIntent(
                      /* apiVersion */ 3,
                      mApplicationContext.getPackageName(),
                      newSku,
                      skuType,
                      /* developerPayload */ null);
                }
              });

バグなのか、それとも開発者のペイロードを購入記録に保存する別の方法があるのか​​ 疑問に思っています。

4

1 に答える 1