构建配置和Android NDK

时间:2012-10-24 00:29:25

标签: android eclipse android-ndk buildconfiguration

我花了最近几天的时间努力让系统启动并运行以构建Android NDK应用程序的多个配置。我能够很好地建立图书馆;我遇到的问题通常源于在更改构建配置时保持这些库的最新状态。

我需要一个大部分完全自动化的系统:用户应该只更改构建配置,只需工作

您是如何解决构建配置以及库未正确重建的问题?

我已经尝试了很多不同的方法,但它们似乎最终都出现了我手中的问题。

最初,我们只输出一个具有相同名称的共享对象文件,而不管构建配置(例如game.so)。 问题是,更改构建配置不会触发要重建的库;你必须对源代码或构建脚本进行更改。所以人们从Debug变为Release,运行应用程序,并且在不知不觉中实际上仍然链接到Debug版本。

然后我们尝试根据构建配置将库输出到唯一的共享对象。例如,调试版本是gamed.so。发布版本是gamer.so。 问题是,Java代码没有构建配置的概念,那么我们如何知道要加载哪个版本的库(由Java完成)?

好吧,为了解决这个问题,我们在试图加载它们的库的所有可能版本中进行try / catch循环。当我们找到存在的那个时,加载它! 问题在将新配置部署到手机时,不会删除旧版本的库。因此,如果您已经构建并运行了Debug和Release,那么这两个库现在都在手机上了!你首先要求的是它,它会找到并加载。

所以无论如何,这似乎已经解决了必须的问题,但我在网上找到了很少的信息。没有什么能满足我的需求。

我的问题是:您是如何解决构建配置以及库未正确重建的问题?

1 个答案:

答案 0 :(得分:1)

这实际上很奇怪。我一直看到install -r刷新/data/data/app.pack.age/lib目录。您使用哪种设备进行开发?