我对这个示例有点困惑,我知道本机方法有两种在 JNI 中注册的方式。如果您使用静态签名,则需要生成签名,例如* .h,并将其包含在您的本机文件中。显然,hello-jni 不使用动态的。代码如下所示:
#include <string.h>
#include <jni.h>
/* This is a trivial JNI example where we use a native method
* to return a new VM String. See the corresponding Java source
* file located at:
*
* apps/samples/hello-jni/project/src/com/example/hellojni/HelloJni.java
*/
jstring
Java_com_example_hellojni_HelloJni_stringFromJNI( JNIEnv* env,
jobject thiz )
{
return (*env)->NewStringUTF(env, "Hello from JNI !");
}
和java
public native String stringFromJNI();
我在谷歌上搜索过,发现了一些关于 JVM 的线索,我对 JVM 知之甚少,有人能帮忙吗?