Bri*_*n D 5 android android-ndk
java.lang.UnsatisfiedLinkError中
我使用的是HELLO-JNI例子,不管是什么原因,我得到一个java.lang.UnsatisfiedLinkError中,当我尝试致电HELLO-JNI库.有什么想法吗?我必须在某处设置路径吗?
在HelloJni.java中:
public native String stringFromJNI();
Run Code Online (Sandbox Code Playgroud)
和
static {
System.loadLibrary("hello-jni");
}
Run Code Online (Sandbox Code Playgroud)
在hello-jni.c中:
jstring
Java_com_bdunlay_hellojni_HelloJni_stringFromJNI( JNIEnv* env,
jobject thiz )
{
return (*env)->NewStringUTF(env, "Hello from JNI !");
}
Run Code Online (Sandbox Code Playgroud)

.so文件是... project_root/libs/armeabi/libhello-jni.so
你的家乡没有JNIEXPORT.它通常在头文件中声明函数声明.
我们将使用javah -jni生成标头
小智 5
有关更多详细信息,请参阅 android-ndk-r8b/documentation.html。
默认情况下,该示例不包含 Application.mk 文件(位于 /jni/ 文件夹中)。我通过将此文件添加到我的项目中并添加以下单个条目来纠正该问题,该条目允许为多种 CPU 类型构建构建文件(在我的情况下专门寻找 x86):
APP_ABI := armeabi armeabi-v7a x86
Run Code Online (Sandbox Code Playgroud)
添加该文件后,您可以再次运行 ndk-build 来生成所需的文件,然后正常构建您的 APK。
| 归档时间: |
|
| 查看次数: |
10858 次 |
| 最近记录: |