Android调用JNI方法 及 代码


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 发布下载

最简单的Ubuntu Touch & Android 双系统安装方式

在Nexus上实现Ubuntu和Android 4.4.2 双启动

Ubuntu 14.04 配置 Android SDK 开发环境

64位Ubuntu 11.10下Android开发环境的搭建(JDK+Eclipse+ADT+Android SDK详细)

Ubuntu 14.04 x64配置Android 4.4 kitkat编译环境的方法

Ubuntu 12.10 x64 安装 Android SDK

更多详情见请继续阅读下一页的精彩内容:

  • 1
  • 2
  • 下一页

相关内容