Android库没有在Lib GDX上制作项目

时间:2018-05-25 01:21:20

标签: android libgdx android-gradle android-library android-studio-3.0

我使用GDX设置来创建我的项目结构,其中包含了库alredy但是在我尝试从Android库调用Intent后,我注意到它甚至找不到类路径。看看那个screnshot:

Android-library-error.png

然后我开始使用Android Studio本身的一个新项目,并且非常有效:

Intent-working.png

您可以看到它看起来像gradle问题设置。然后我试着自己解决它,但我不能。

我知道要添加一个我们需要编写一些依赖项的库,即使我删除GDX依赖它也会导致相同的错误。但是Android必须不需要添加,然后我不知道如何添加,如果可以工作。

GDX依赖在这里写:

    project(":core") {
apply plugin: "java"


dependencies {
    compile "com.badlogicgames.gdx:gdx:$gdxVersion"
    // If I remove that line it will causes same error
} [...]

我在GDX和Android Studio之间做了一些比较:

GDX制作:

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

    configurations { natives }

    dependencies {

        compile project(":core")
        compile "com.badlogicgames.gdx:gdx-backend-android:$gdxVersion"
        natives "com.badlogicgames.gdx:gdx-platform:$gdxVersion:natives-armeabi"
        natives "com.badlogicgames.gdx:gdx-platform:$gdxVersion:natives-armeabi-v7a"
        natives "com.badlogicgames.gdx:gdx-platform:$gdxVersion:natives-arm64-v8a"
        natives "com.badlogicgames.gdx:gdx-platform:$gdxVersion:natives-x86"
        natives "com.badlogicgames.gdx:gdx-platform:$gdxVersion:natives-x86_64"
    }
}

Android Studio制作:

dependencies {
    compile fileTree(dir: 'libs', include: ['*.jar'])
    compile 'com.android.support:appcompat-v7:23.3.0'
    compile 'com.android.support:support-v4:23.3.0'
    compile 'com.android.support:design:23.3.0'
    compile 'com.android.support.constraint:constraint-layout:1.0.2'
    testCompile 'junit:junit:4.12'
}

我使用的是3.0.1 Android Studio版本。

1 个答案:

答案 0 :(得分:1)

您缺少libGDX的一个核心方面作为跨平台解决方案。您无法从核心模块调用特定于平台的代码,因为它对Android等特定平台一无所知。

很高兴看到核心模块中没有包含特定于Android的特定库,那就是故意。

   project(":core") {
    apply plugin: "java"
    dependencies {
    compile "com.badlogicgames.gdx:gdx:$gdxVersion"
   } 


正如您在这里看到的那样,包括特定于Android平台的库和代码模块的包含。

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

  configurations { natives }

  dependencies {

    compile project(":core")
    compile "com.badlogicgames.gdx:gdx-backend-android:$gdxVersion"
    natives "com.badlogicgames.gdx:gdx-platform:$gdxVersion:natives-armeabi"
    natives "com.badlogicgames.gdx:gdx-platform:$gdxVersion:natives-armeabi-v7a"
    natives "com.badlogicgames.gdx:gdx-platform:$gdxVersion:natives-arm64-v8a"
    natives "com.badlogicgames.gdx:gdx-platform:$gdxVersion:natives-x86"
    natives "com.badlogicgames.gdx:gdx-platform:$gdxVersion:natives-x86_64"
  }
}

这意味着:
- Android可以访问核心模块中的所有内容以及其自己的模块中的所有内容 - Core只能访问自己模块中的所有内容,上面没有任何内容

Click herehere告知您自己如何处理您的情况。