【发布时间】:2012-01-07 17:31:01
【问题描述】:
我开始学习 java 的 JNI 以与 android 设备一起使用。
正如我在某处读到的,您必须为 C++ 部分准备一些“胶水”才能通过 JNI 加载。
我的问题是:是否可以在 C 语言中使用 run() 函数和 JNI 的胶水来运行真正的应用程序并仅将 java 作为入口点? 因为我不知道当通过 JNI 调用该 run() 函数时,如果该函数调用另一个函数等可能会导致问题。 感谢您的提示!
编辑:我想使用 ndk 用 C++ 编写代码,并试图避免用 java 编写代码。因此,我想知道a)我是否可以使用ndk在本机中编译和运行,或者b)我是否只能使用java来调用我的应用程序,例如:调用woth jni之类的app->run()并让它执行所有东西而不是java。那么,java 将仅充当入口点。
【问题讨论】:
-
不太清楚您希望实现什么,您能否将其分解为您希望使用 JNI 实现什么的高级概述?
-
我编辑了原始帖子以澄清它。
-
你想做什么?为什么不想用java?
-
不想使用Java,因为我不喜欢它(也因为我也不太了解它)。
-
您可以使用 C++ 代码运行计算并执行后台操作,但您需要使用 Java 启动应用程序并通过 Activity 和 Application 生命周期之后的活动创建 UI。跨度>
标签: java android java-native-interface