2011.11.22——— android jni简单用法
参考:http://www.eoeandroid.com/thread-114412-1-1.html
http://www.androidzz.com/2011/08/android-jni/
http://my.unix-center.net/~Simon_fu/?p=833
http://topic.csdn.net/u/20110711/09/7b2bb12b-be4b-4eed-b995-7c0b6d2ea068.html

首先 先说一下 我遇到的问题

1、System.loadLibrary的参数
沿袭Linux传统,lib<something>.so是类库文件名称的格式,但在Java的System.loadLibrary(“ something ”)方法中指定库名称时,不能包括 前缀—— lib,以及后缀——.so

比如说 你的so文件名字为libhello.so

这时 你应该写
System.loadLibrary(hello);


2、javah命令问题
刚开始 我是这样的
C:\Program Files\Java\jdk1.6.0_20\bin>javah E:\workspace\TestJNI\src\com\lp\jni\FirstJNI

我是指向了java文件 就报错 如下
javadoc: 错误 - 非法的软件包名称:"E:\workspace\TestJNI\src\com\lp\jni\FirstJNI"


然后 我指向class文件

C:\Program Files\Java\jdk1.6.0_20\bin>javah E:\workspace\TestJNI\bin\classes\com\lp\jni\FirstJNI

错误依然
javadoc: 错误 - 非法的软件包名称:"E:\workspace\TestJNI\bin\classes\com\lp\jni\FirstJNI"


后来 查了 说不能直接指向文件 而应该知道bin根目录 带包命运行
C:\Program Files\Java\jdk1.6.0_20\bin>javah E:\workspace\TestJNI\bin\classes\ com.lp.jni.FirstJNI

错误仍然存在
javadoc: 错误 - 非法的软件包名称:"E:\workspace\TestJNI\bin\classes\"


咳,然后 需要加上-classpath参数 才可以
如下
C:\Program Files\Java\jdk1.6.0_20\bin>javah -classpath E:\workspace\TestJNI\bin\classes\ com.lp.jni.FirstJNI


这下 终于大功告成了 呵呵



更多相关文章

  1. Android(安卓)记录一个智障错误
  2. Android中attrs.xml文件的使用详解
  3. Mac下发布Unity3d中Android平台下出现“android (invokation fai
  4. android错误分析集锦
  5. android 量产软件改动信息(持续更新)
  6. android开发文档中的一个小错误
  7. Android常见错误处理
  8. Android(安卓)模拟器 HAXM硬件加速安装
  9. 个人对android中项目命名规则的整理

随机推荐

  1. 如何学习Android开发编程-初学者的5个步
  2. 在你的android设备运行java web应用程序
  3. Android(安卓)BaiduAi 人脸识别 集成教学
  4. android 左右切换对话框 dialog
  5. 开发一个android app需要的技术
  6. 一个使用FFmpeg库读取3gp视频的例子-Andr
  7. Android客户端与PC服务器实现Socket通信
  8. Android(安卓)资源(resource)学习小结
  9. 【原创】Android锁定横竖屏、splash,全屏
  10. Android(安卓)Provision (Setup Wizard)