gdx-pay:“包com.badlogic.gdx.pay不存在”

时间:2015-06-15 17:40:21

标签: java android gradle libgdx

我正在尝试在我的libgdx项目中实现gdx-pay。所以我跟着libgdx维基的Integration example with resolvers

我在我的核心项目中创建了一个类PlatformResolver,在我的android项目中创建了一个类AndroidResolver(如在wiki中)。这两个类都导入com.badlogic.gdx.pay.PurchaseManagerConfig,但对于我的AndroidResolver,我收到编译错误:

Error:(6, 28) error: package com.badlogic.gdx.pay does not exist

我已将gdx-pay-0.4.0-library.jar(包括com.badlogic.gdx.pay.PurchaseManagerConfig)导入我的核心项目,并gdx-pay-android-openiab-0.4.0-library.jargdx-pay-android-0.4.0-library.jargdx-pay-android-ouya-0.4.0-library.jar导入我的android项目。

由于android项目也编译核心项目,PurchaseManagerConfig也应该可用于android项目,不应该吗?

project(":android") {
    apply plugin: "android"

    configurations { natives }

    dependencies {
        compile project(":core")
        // ...
        compile fileTree(dir: 'libs', include: '*.jar')
    }
}

任何想法出了什么问题?

编辑:

当我在android项目(文件夹android / lib)中添加gdx-pay-0.4.0-library.jar时,一切都编译好(仍然不知道为什么它是必要的)。但是,由于

,我永远无法恢复或购买物品
I/ERROR﹕ gdx-pay: requestPurchaseRestore(): purchaseManager == null

但这似乎是一个ProGuard问题。没有ProGuard,我得到:

I/IAP﹕ IAP: gdx-pay successfully instantiated.
I/﹕ gdx-pay: installed manager: OpenIAB/null

虽然我的项目现在编译,但是如果有人能解释我为什么必须两次添加jar文件,我会很高兴,因为这可以帮助我理解其他一些gradle问题。

1 个答案:

答案 0 :(得分:2)

试试这个:

在build.gradle中:

project(":android") {
apply plugin: "android"

configurations { natives }

dependencies {
    ***
    compile "com.badlogicgames.gdxpay:gdx-pay-android:0.9.2"
    compile "com.badlogicgames.gdxpay:gdx-pay-android-openiab:0.9.2:library"
    compile "com.badlogicgames.gdxpay:gdx-pay-android-ouya:0.9.2:library"
}

}