【问题标题】:How to add native android code to LibGDX?如何将原生 android 代码添加到 LibGDX?
【发布时间】:2016-03-10 13:52:55
【问题描述】:

我想为我的 Android 应用编写本机代码。我跟着 this tutorial 将 CPP 文件添加到我的项目中。它可以编译,但与 LibGDX 冲突。

如何将它与 LibGDX 结合使用?

我想知道如何添加一个简单的 CPP 文件,其中包含一个将从我的 Android 游戏中调用的函数。

我正在使用 Android Studio。

当我将 jni 路径添加到我的 Android gradle 时,LibGDX 停止工作:

sourceSets {
    main {
        jni.srcDirs = 'cppsrc'
        jniLibs.srcDirs = ['libs']
    }
}

【问题讨论】:

  • 你使用接口并在启动器上实现它们,你说它与 libgdx 冲突?如何?没有理由会发生这种情况,你能给我们看看日志吗???
  • @Hllink 它给出了这个错误Caused by: com.badlogic.gdx.utils.GdxRuntimeException: Couldn't load shared library 'gdx' for target: Linux, 32-bit
  • libgdx.so 没有被复制到 android 项目的 lib 文件夹中的任何 armeabi、armeabi-v7a 或 x86 文件夹中。复制这些文件,然后调用您的项目 static { System.loadLibrary("gdx");},如果您不想手动执行此链接,请点击此链接,以便 android studio 正确打包您的 apk:imgur.com/a/IBFIV
  • @Hllink 我更新了我的问题。 LibGDX 正在工作或我的本机代码
  • 尝试将 libGDX.so 放在不同的目录中,例如libgdx/armeabilibgdx/armeabi-v7a 以及 build.gradle 更改 jniLib.srcDirs=['libs','libgdx']

标签: java android c++ android-ndk libgdx


【解决方案1】:

你试过jnigen吗? jnigen 是一个小型库,可以与或不与 libgdx 一起使用,它允许将 C/C++ 代码与 Java 源代码内联编写。请从 LibGDX 网站 JNIGEN

阅读此内容

【讨论】:

    【解决方案2】:

    当你生成 LibGDX 项目时,会有一些单独的项目目录。核心、桌面、Android、IOS、HTML。 您可以在 Android 项目目录中添加 Android 代码,显然使用 java。我已经做到了,而且很容易做到。就像以LibGDX游戏类为视图编写Android程序一样。

    【讨论】:

    • 很抱歉,但这并不能回答我的问题。
    猜你喜欢
    • 1970-01-01
    • 2015-03-31
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2019-03-20
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多