无论如何我可以为Android编写100%的原生C代码吗?我知道有很多方法可以在Java代码中编写一些C代码,但我不知道任何Java,我讨厌Java。
无论如何我可以编写将在Android下运行的纯C代码吗?
答案 0 :(得分:10)
从Android 2.3开始:NativeActivity
。但是你无法访问Android的Java库的任何细节;你在狂野的西部独自一人。这非常适合编写高性能游戏的人。
答案 1 :(得分:2)
可能比它的价值更麻烦,你可以在C代码中编写逻辑并使用extern或external将其导入java(我现在忘记了)然后在java中执行GUI。除非你想真正优化你的逻辑,否则在android中使用直接C是没有意义的。您可以进行的大多数调用都会被包装,因此您必须进行这些调用才能访问Android设备上的某些内容。长话短说:除非你需要更快的逻辑,否则不是一个好主意。
答案 2 :(得分:2)
您可以围绕NativeActivity在C中编写大部分应用程序。但是,某些Android功能只能在Java中使用,因此您需要使用JNI而不是纯本机。见官方overview。
答案 3 :(得分:2)
是的,支持编写完全本机活动。您可以查看native-activity示例应用程序。
但是,我不推荐这条路径,因为根据我的经验,NDK代码中很重的应用程序很难调试。我认为Android本机调试体验缺乏。编辑 - 有一点需要注意的是,您仍然会通过JNI充分利用Java。