【问题标题】:Trouble instantiating gdx-pay purchaseManager in my game在我的游戏中实例化 gdx-pay purchaseManager 时遇到问题
【发布时间】:2019-06-12 20:34:05
【问题描述】:

我正在尝试在我的游戏中设置 gdx-pay。我已按照官方自述文件 (https://github.com/libgdx/gdx-pay/),但似乎无法在我的 AndroidLauncher 中实例化 PurchaseManager。

我已经设置了一个处理 PurchaseManager 安装的类,但每次我尝试在 AndroidLauncher 中实例化它时都会收到此错误:

“java.lang.RuntimeException:无法启动活动 ComponentInfo{appPackage.AndroidLauncher}:java.lang.IllegalArgumentException:必须启用对待处理购买的支持。通过在 BillingClientBuilder 上调用 'enablePendingPurchases()' 启用此功能。”

自述文件说要将此添加到 AndroidLauncher onCreate game.purchaseManager = new PurchaseManagerGoogleBilling(this); 问题是我必须添加这个 ProjectName.purchaseManager = new PurchaseManagerGoogleBilling(this); 这给了我一个错误,说我必须在我的 ProjectName 类中将 purchaseManager 设为静态 当我这样做时,我得到了上面提到的 RuntimeException。
示例 gdx-pay 项目使用此代码实例化 PurchaseManager

public class AndroidLauncher extends GenericAndroidLauncher {
    @Override
    protected void initFlavor(GdxPayApp game) {
        super.initFlavor(game);
        game.purchaseManager = new PurchaseManagerGoogleBilling(this);
    }
}

当我尝试这个时,@Override 无效并且 initFlavor 不存在。我尝试在 gdx-pay 文件中寻找 initFlavor,但没有找到任何东西...... 感谢您抽出宝贵时间提供帮助

【问题讨论】:

    标签: android libgdx gdx-pay


    【解决方案1】:

    事实证明,我的 android gradle 中的以下行是问题

    implementation 'com.android.billingclient:billing:2.0.1'

    Gdx-pay 自动处理此问题并使用客户端 1.1 将 billingclient 设置为 2.0.1 是问题所在。我能够通过删除该行来修复它。非常感谢 libGdx 不和谐的家伙!

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2016-02-23
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多