Android JNI开发笔记
来源:互联网 发布:js json对象元素个数 编辑:程序博客网 时间:2024/05/18 01:41
1、搭建JNI的开发环境(安装NDK、配置NDK的classpath、在eclipse中增 Android Native Development Tools……(ADT))
2、新建一个Android工程
3、在工程目录下新建一个jni目录
4、在Java代码中声明一个native方法
public native String helloFromC();
5、进入工程的src目录下,进入cmd窗口,运行 javah 报名.类名得到一个.h的头文件(eg:javah com.example.jnihellodemo.MainActivity得到com_example_jnihellodemo_MainActivity.h)
6、在头文件中会有对native方法的声明
JNIEXPORT jstring JNICALL Java_com_example_jnihellodemo_MainActivity_helloFromC (JNIEnv *, jobject);
(返回值 Java_报名_类名_方法名)
7、在步骤3建立的JNI目录下新建一个c文件、实现6中的方法、以返回一个字符串为例
#include <jni.h>#include <stdio.h>#include <stdlib.h>#include <string.h>JNIEXPORT jstring JNICALL Java_com_example_jnihellodemo_MainActivity_helloFromC (JNIEnv *env , jobject obj){return (*env)->NewStringUTF(env, "Hello from JNI ");}8、在JNI目录下新建一个android.mk文件
LOCAL_PATH := $(call my-dir)include $(CLEAR_VARS)#生成的模块名称LOCAL_MODULE := JniHelloDemo#依赖的源文件LOCAL_SRC_FILES := JniHelloDemo.cinclude $(BUILD_SHARED_LIBRARY)9、8、在JNI目录下新建一个application.mk文件
APP_ABI := all表示支持的平台、all表示支持所有的平台
10、在使用native方法的类中添加静态代码块加载.so文件
static{System.loadLibrary("JniHelloDemo");}
JniHelloDemo是android.mk中的LOCAL_MODULE (libJniHelloDemo.so去掉lin和.so)
11、进入工程文件目录下、打开cmd运行ndk-build命令生成对应的库文件
12、运行工程……
------------------------------------------------------------来一个分割线----------------------------------------------------------------------
其他:
1、javah
2、javap
3、eclipse环境配置
4、log打印
0 0
- Android Jni开发笔记
- Android JNI开发笔记
- JNI 开发笔记 - Android JNI Tips
- 学习Android JNI开发笔记
- 【笔记】Android平台下的JNI开发
- Android开发笔记(六十九)JNI实战
- ndk配置+android jni开发笔记
- Android开发笔记之Jni编程
- 学习笔记 android开发之JNI
- JNI笔记 JNI开发流程
- Jni开发与Android NDK开发学习笔记(一)
- JNI 开发笔记 - 基本概念
- JNI 开发笔记 - 数据类型
- JNI 开发笔记
- JNI NDK开发笔记
- Android开发笔记之Jni编程第二弹
- android JNI 学习笔记
- android JNI 学习笔记
- C++构造函数调用规则
- os_tmr.c
- Leetcode 258
- c++中new与delete
- sort c++ double
- Android JNI开发笔记
- 全局函数和成员函数
- 自定义view onMeasure方法的重写
- 淘宝应对"双11"的技术架构分析
- 友元函数与友元类
- 职坐标 选课系统整体框架 参考
- 运算符重载
- Apache配置支持markdown格式
- 继承