Android和Java的JNI

时间:2012-01-07 17:31:02

标签: java android java-native-interface

我开始学习用于Android设备的java的JNI。

当我在某处阅读时,您必须为C ++部分添加一些“粘合剂”才能通过JNI加载。

我的问题是:在C中使用run()函数是否可行,JNI的粘合剂是运行真实应用程序并且只有入口点的java? 因为我不知道当通过JNI调用run()函数时,如果该函数调用另一个函数等,它可能会导致问题。 谢谢你的提示!

编辑:我想使用ndk在C ++中编码并尝试避免在java中编码。因此,我想知道是否a)如果我可以使用ndk编译和运行本机或b)如果我只能使用java来调用我的应用程序,例如:调用woth jni类似app-> run()并让它做所有的东西而不是java。那么,java将仅作为入口点。

2 个答案:

答案 0 :(得分:1)

我在以下帖子中逐步指导:How to create dll using android如果你不了解某些内容,你可以阅读并提出问题。

答案 1 :(得分:1)

如果你想用C / C ++(无Java) AND 开发Android,你可以考虑使用NativeActivity来定位更新的设备(Gingerbread,android-9 app平台)。

请参阅NDK包$NDK/docs/NATIVE-ACTIVITY.HTML中的http://developer.android.com/reference/android/app/NativeActivity.html和文件夹以及示例代码$NDK/samples/native-activity

祝你好运!