如何正确使用querySkuDetailsAsync?

问题描述 投票:0回答:1

我正在尝试使用计费库,并且正在从Android开发人员官方网站here获取信息。但是我发现很多麻烦。主要是编译问题。看来文件还没有完成。当我开始逐步进行操作时,我不得不搜索很多额外的信息。现在我被困在尝试执行querySkuDetailsAsync()这是我的代码:

    billingClient = BillingClient.newBuilder(this).enablePendingPurchases().setListener(this).build();
    billingClient.startConnection(new BillingClientStateListener() {
        @Override
        public void onBillingSetupFinished(BillingResult billingResult) {
            if (billingResult.getResponseCode() == BillingClient.BillingResponseCode.OK) {
                // The BillingClient is ready. You can query purchases here.
                List<String> skuList = new ArrayList<> ();
                skuList.add("sp_hide_ads_year_01");
                SkuDetailsParams.Builder params = SkuDetailsParams.newBuilder();
                params.setSkusList(skuList).setType(BillingClient.SkuType.SUBS);

                billingClient.querySkuDetailsAsync(params.build(),
                        new SkuDetailsResponseListener() {
                            @Override
                            public void onSkuDetailsResponse(BillingResult billingResult, List<SkuDetails> skuDetailsList) {
                                //*** I want to Continue here ***
                            }
                        });
            }
        }
        @Override
        public void onBillingServiceDisconnected() {
            // Try to restart the connection on the next request to
            // Google Play by calling the startConnection() method.
        }
    });

编译器(Android Studio)说:

'onSkuDetailsResponse(BillingResult,List)'在'匿名派生自com.android.billingclient.api.SkuDetailsResponseListener与发生冲突中的“ onSkuDetailsResponse(BillingResult,List)”'com.android.billingclient.api.SkuDetailsResponseListener';都方法可以擦除,但是都不能覆盖另一个方法

我不知道这是什么意思。这里有什么帮助吗?

顺便说一句,我使用

实现'com.android.billingclient:billing:2.1.0'

android in-app-billing
1个回答
0
投票

我更改了线路:

public void onSkuDetailsResponse(BillingResult billingResult, List<SkuDetails> skuDetailsList) 

为此,所有内容已编译:

public void onSkuDetailsResponse(BillingResult billingResult, List<com.android.billingclient.api.SkuDetails> skuDetailsList)
© www.soinside.com 2019 - 2024. All rights reserved.