首页 > 移动平台 > 详细

android jni

时间:2016-06-06 13:45:03      阅读:195      评论:0      收藏:0      [点我收藏+]

java.lang.UnsatisfiedLinkError: Native method not found 三种可能解决方案

        so文件编译生成后,运行时,有时候会遇到java.lang.UnsatisfiedLinkError: Native method not found问题,有可能是以下三种因素:

一、Jni方法头部大小写问题     

在C++中,方法名:Java_com_XXX,而不是java_com_XXX。建议直接从生成的.h头文件直接复制方法名到C或者C++文件中。

二、C++文件问题

        如果是C++文件(.cpp或者.cc),要使用extern "C" {   } 把本地方法括进去。

三、往Jni方法中传值问题

         如,调用native方法sendSomeThing(Object object),如果传入的object为null,有可能会报上面错误。

上面是我在网上看到的

我自己遇到这个情况与上面三个都不一样,查看之后发现是要将jni的目录下的c程序用ndk-build.cmd编译一下,如果有改动过,则要重新编译

android jni

原文:http://www.cnblogs.com/ebarui/p/5563430.html

(0)
(0)
   
举报
评论 一句话评论(0
关于我们 - 联系我们 - 留言反馈 - 联系我们:wmxa8@hotmail.com
© 2014 bubuko.com 版权所有
打开技术之扣,分享程序人生!