Android JNI编译问题汇总

1. javah 命令生成 .h文件生成问题.

正确的使用方法是: 使用IDE正确编译后到.\bin目录下去.

使用javah -classpath . -jni 包名.类名 

例如javah -classpath . -jni com.test.testjni.TestJNI

其中bin目录下面应该是com文件夹的根目录.

特殊情况: 如果该类名使用了除Java以外的代码如Activiy类.该命令会出现Class Not found如下所示:

错误: 无法访问android.app.Activity
  找不到android.app.Activity的类文件

原因是编译时, Classpath没有包括Android的Class文件目录.  解决方法是:

然后就进去sdk里面Platform的 Android-16目录下,把android.jar复制,改名为android.rar,然后解压为一个名叫android的文件夹,删掉android.rar,进去android文件夹,把目录复制,到classpath里面加上去,ok了


最终成功代码如下:javah -classpath D:\android-sdk\platforms\android-16\;.  -jni com.xxxx.xxxx.android.plugin.natives.simi.utils.AQConfig


  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值