Android调用jni全过程,方便以后操作。
2012-12-21 15:00
357 查看
原文:Android调用jni全过程,方便以后操作。
个人记录下调用jni全过程,省的自己忘记了。哎。
有些需要准备的地方,ndk环境,ndk源码一份,cygwin要装好,配好profile。java要配好环境变量。
1.首先新建一个工程,建个类对调用native的方法进行声明。
package com.stay.jni;
public class CallNative {
public CallNative() {
}
static {//导入的lib名去掉前面的lib
System.loadLibrary("skytech");
}
public native byte[] readCmd(String path);
public native int writeCmd(byte[] cmd, String path);
}
2.build下项目,打开cmd,cd到该工程bin目录下,
D:\>cd D:\android\rayn\TestJni\bin
D:\android\rayn\TestJni\bin>javah -jni com.stay.jni.CallNative
然后在bin目录下会出现一个.h文件这是声明的头文件
3.我们要的是里面声明的方法,把我们要写的c文件改成相同的方法名就可以了。(我做了一件非常挫的事,把实现写到.h文件里了,一直拿.h文件去编译。。= =)
4.在工程里建个jni目录,将改好的c文件和mk文件(随便copy一个,改下路径和lib名就好啦)copy进去
5.然后按照NDK说的方法来编译:
Place your native sources under
Create
Optional: Create
Build your native code by running the 'ndk-build' script from your project's directory. It is located in the top-level NDK directory:
The build tools copy the stripped, shared libraries needed by your application to the proper location in the application's
个人记录下调用jni全过程,省的自己忘记了。哎。
有些需要准备的地方,ndk环境,ndk源码一份,cygwin要装好,配好profile。java要配好环境变量。
1.首先新建一个工程,建个类对调用native的方法进行声明。
package com.stay.jni;
public class CallNative {
public CallNative() {
}
static {//导入的lib名去掉前面的lib
System.loadLibrary("skytech");
}
public native byte[] readCmd(String path);
public native int writeCmd(byte[] cmd, String path);
}
2.build下项目,打开cmd,cd到该工程bin目录下,
D:\>cd D:\android\rayn\TestJni\bin
D:\android\rayn\TestJni\bin>javah -jni com.stay.jni.CallNative
然后在bin目录下会出现一个.h文件这是声明的头文件
3.我们要的是里面声明的方法,把我们要写的c文件改成相同的方法名就可以了。(我做了一件非常挫的事,把实现写到.h文件里了,一直拿.h文件去编译。。= =)
4.在工程里建个jni目录,将改好的c文件和mk文件(随便copy一个,改下路径和lib名就好啦)copy进去
5.然后按照NDK说的方法来编译:
Place your native sources under
<project>/jni/...
Create
<project>/jni/Android.mkto describe your native sources to the NDK build system
Optional: Create
<project>/jni/Application.mk.
Build your native code by running the 'ndk-build' script from your project's directory. It is located in the top-level NDK directory:
cd <project> <ndk>/ndk-build
The build tools copy the stripped, shared libraries needed by your application to the proper location in the application's
![](http://images.cnblogs.com/cnblogs_com/stay/25.png)
相关文章推荐
- Android调用jni全过程,方便以后操作
- Android调用jni全过程,方便以后操作。
- Android调用jni全过程,方便以后操作。
- Android调用jni全过程,方便以后操作。
- Android 调用Jni的全过程
- Linux下JNI调用简单实例操作全过程
- DM3730上。android2.3源码编译过程,问题解析。(方便以后自己用)
- 【转】Android开发:安装NDK,移植OpenCV2.3.1,JNI调用OpenCV全过程
- Android开发:安装NDK,移植OpenCV2.3.1,JNI调用OpenCV全过程
- Android开发:安装NDK,移植OpenCV2.3.1,JNI调用OpenCV全过程
- Android调用jni全过程
- Android调用jni全过程示例
- Android开发:安装NDK,移植OpenCV2.3.1,JNI调用OpenCV全过程
- Android JNI的调用过程
- Android调用jni全过程
- Android jni的调用过程
- Linux下JNI调用简单实例操作全过程
- Android中JNI调用过程简述
- android JNI调用过程中的方法签名规则
- android 串口通讯2-对JNI封装JAVA的类,方便别人的调用