您的位置:首页 > 移动开发 > Android开发

Android调用JNI方法 及 代码

2015-07-13 09:26 531 查看

Android调用JNI方法 及 代码

JNI: Java Native Interface, 实现Java和C/C++的互通.

Android上使用JNI的方法.
时间:2014.9.3

环境:
必须
使用标准Eclipse,
安装Android的环境, 才可以使用NDT插件.

Eclipse Standard/SDK Version: Luna Release (4.4.0);

Android: ADT-23.0.3.zip; NDT: GNU Make 3.81;

基础安装略过.

方法:

1. 创建接口类:

首先新建JNI的接口类, 包含使用的静态方法. 位置:
项目->src->[package]->JniClient.java



/**

*

*/

package com.example.hellomyjni;

/**

* @author Administrator

*

*/

public class JniClient {

static public native String sayName();

}

2. 编译接口类:

进入项目文件夹, 生成JNI的头文件, 使用命令:

"javah -classpath bin/classes -d jni com.example.hellomyjni.JniClient"

命令解析:

javah 生成头文件;

-classpath 使用类的位置(bin/classes), 都是.class文件;

-d jni 需要生成JNI的类(com.example.hellomyjni.JniClient), 包括[package].[classname].



F5刷新项目, 项目会自动生成jni文件夹, 并包含一个头文件"com_example_hellomyjni_JniClient.h".



/* DO NOT EDIT THIS FILE - it is machine generated */

#include <jni.h>

/* Header for class com_example_hellomyjni_JniClient */

#ifndef _Included_com_example_hellomyjni_JniClient

#define _Included_com_example_hellomyjni_JniClient

#ifdef __cplusplus

extern "C" {

#endif

/*

* Class: com_example_hellomyjni_JniClient

* Method: sayName

* Signature: ()Ljava/lang/String;

*/

JNIEXPORT jstring JNICALL Java_com_example_hellomyjni_JniClient_sayName

(JNIEnv *, jclass);

#ifdef __cplusplus

}

#endif

#endif

Android 4.4.4 发布下载 http://www.linuxidc.com/Linux/2014-06/103467.htm
最简单的Ubuntu Touch & Android 双系统安装方式
http://www.linuxidc.com/Linux/2014-01/94881.htm

在Nexus上实现Ubuntu和Android 4.4.2 双启动 http://www.linuxidc.com/Linux/2014-05/101849.htm
Ubuntu 14.04 配置 Android SDK 开发环境 http://www.linuxidc.com/Linux/2014-05/101039.htm
64位Ubuntu 11.10下Android开发环境的搭建(JDK+Eclipse+ADT+Android SDK详细) http://www.linuxidc.com/Linux/2013-06/85303.htm
Ubuntu 14.04 x64配置Android 4.4 kitkat编译环境的方法 http://www.linuxidc.com/Linux/2014-04/101148.htm
Ubuntu 12.10 x64 安装 Android SDK http://www.linuxidc.com/Linux/2013-03/82005.htm
更多详情见请继续阅读下一页的精彩内容http://www.linuxidc.com/Linux/2014-10/107631p2.htm
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: