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;
基礎安裝略過.
方法:
首先新建JNI的接口類, 包含使用的靜態方法. 位置: 項目->src->[package]->JniClient.java
/**
*
*/
package com.example.hellomyjni;
/**
* @author Administrator
*
*/
public class JniClient {
static public native String sayName();
}
進入項目文件夾, 生成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