所以我有一个LibGdx游戏,我想添加Google Play服务。我正在使用android studio但我找不到任何好的教程。
我在游戏的根目录中有BaseGameUtils。我的settings.gradle文件看起来像
include 'android', 'ios', 'core', 'BaseGameUtils'
我将编译项目(':BaseGameUtils')添加到我的build.gradle文件的android依赖项中工作正常,我可以使用android项目中的类。但是我无法访问核心项目中的类,我想将GameHandler传递给游戏,以便我可以使用成就和排行榜。
所以我尝试将相同的行添加到gradle文件的核心部分,使其看起来像
project(":core") {
apply plugin: "java"
dependencies {
compile "com.badlogicgames.gdx:gdx:$gdxVersion"
compile "com.badlogicgames.gdx:gdx-box2d:$gdxVersion"
compile "com.badlogicgames.gdx:gdx-freetype:$gdxVersion"
compile fileTree(dir: '../libs', include: '*.jar')
compile project(':BaseGameUtils')
}
}
但这会导致错误。
Android工作室给我这个核心取决于库但不是库本身错误
答案 0 :(得分:2)
您无法在 core 中编译 BaseGameUtils ,因为 BaseGameUtils 源需要Android库。
如果您查看这些教程(Fortheloss Games以及libGDX Wiki上提供的其他教程),您必须将 AndroidLauncher 课程传递给游戏 class。然后,由于除了Android之外没有其他平台可以使用Google库,因此桌面,HTML和iOS目标将使用实际上没有做任何事情的虚假方法。
此外,您可能遇到的错误(或者您已经遇到过), BaseGameUtils 和libGDX的Android API版本不同,因此您可能需要进入BaseGameUtils并更改其 AndroidManifest.xml 文件。
希望这有帮助!