我尝试着将一款游戏移植到Android上,但它是基于C语言,而Android也支持Java,但我相信一定有一种方法能够将C应用带到Android上,有人知道如何实现这一目标吗?


当前回答

看看谷歌ndk组,它看起来很有前途,ndk的第一个版本将在2009年上半年发布。

更新: 它发布于http://android-developers.blogspot.com/2009/06/introducing-android-15-ndk-release-1.html

其他回答

自2009年以来,这一问题有了进展。 用于Android的Qt(c++框架) 视频开始。

对于任何通过谷歌来了解这一点的人,请注意,从SDK 1.6开始,Android现在有一个官方的原生SDK。

你可以从这里下载Android NDK (Native Development Kit): https://developer.android.com/ndk/downloads/index.html

还有一篇关于NDK的博文: http://android-developers.blogspot.com/2009/06/introducing-android-15-ndk-release-1.html

我不确定NDK是否提供了官方Java API的全部覆盖。

来自http://developer.android.com/sdk/ndk/index.html#overview:

请注意,NDK没有 允许您只开发本机 应用程序。Android的主 运行时仍然是Dalvik虚拟的 机器。

Android NDK是一个工具集,允许您使用C和c++等语言在本地代码中实现应用程序的部分内容。对于某些类型的应用程序,这可以帮助您重用用这些语言编写的代码库。

有关如何开始本地开发的更多信息,请点击此链接。

示例应用程序可以在这里找到。

这三个步骤是很好的,并储存在这篇文章。

1)如何将原生c代码移植到android上

2) http://www.integratingstuff.com/2010/12/12/calling-native-c-code-through-jni-in-android-applications/

3) http://mindtherobot.com/blog/452/android-beginners-ndk-setup-step-by-step/