android - 将 ObjectBox 与 Libgdx 一起使用

标签 android libgdx objectbox

更新:已解决!阅读我自己接受的答案!

原帖:

我正在尝试在我的 Libgdx Android 项目中使用 ObjectBox。

但是,当我按照 Android 指南操作时,我的应用程序崩溃了

Caused by: com.badlogic.gdx.utils.GdxRuntimeException: Couldn't load shared library 'gdx' for target: Linux, 32-bit

我看到有一个桌面 gradle 设置,你认为我应该使用它吗?由于 Libgdx 并不是真正的 Android 项目,它是 LWJGL 中的纯 Java,仅位于一个空的 Activity 中。

有人成功了吗?

(我知道这是一个利基市场,而且希望渺茫...)

编辑:

我做了更多挖掘并查看了 lib 文件夹下的 apk,在使用 ObjectBox 的 apk 上,我有 4 个文件夹

arm64-v8a
armeabi
armeabi-v7a
x86

在没有 ObjectBox 的 apk 上(有效)我​​有

armeabi
armeabi-v7a
x86

在 arm64-v8a 文件夹中没有 libgdx 的内容。鉴于我的设备是那种类型,我认为它正在寻找它但什么也没找到。等等,这给了我一个想法......

最佳答案

因为 ObjectBox 为 arm64-v8a 的附加现代文件夹创建了 .so 文件,而我的 libgdx 设置没有这些行

natives "com.badlogicgames.gdx:gdx-platform:$gdxVersion:natives-arm64-v8a"

file("libs/arm64-v8a/").mkdirs();
if (jar.name.endsWith("natives-arm64-v8a.jar")) outputDir = file("libs/arm64-v8a")

因为我的手机使用了那个文件夹(如果可以的话),它没有找到任何要使用的 gdx 文件。

将以上行添加到我的 gradle 文件后,一切正常。

我的手机 (Samsung S8) 使用 arm64-v8a,所以它会使用该文件夹(如果存在)。我只能假设该文件夹是否丢失,它默认为 diff 文件夹,但一旦找到它,它就会在那里搜索,而不会在其他任何地方搜索。

感谢 Xiao 让我走上了正确的道路。

关于android - 将 ObjectBox 与 Libgdx 一起使用,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/46840146/

相关文章:

android - 是否可以在 ObjectBox 中使用查询观察仅获取更改的数据?

android - 如何使用 ObjectBox 存储货币值 (BigDecimal)?

java - 将 diffrenet runnables 或消息传递到 android 中的单个预定义线程

java - Android 游戏上的自动保存和自动加载游戏概念以及内部保存与保存。外部(又称 SD 卡)

android - 从 Greendao3 迁移到对象框

java - 在 libgdx 中加载大背景的最佳方式

java - 在libgdx中绘制大背景

android - 同步两个ListView位置

android - Android 中的 MVVM 存储库

android - 带有自定义 View 的多项选择列表?