android studio 中的NDK开发(1)

来源:互联网 发布:数据采集器 编辑:程序博客网 时间:2024/05/18 03:03

1.首先设置三个External Tools

  设置路径:Settings->Tools->External Tools

(1)头文件生成工具
Name: javah

Program:  $JDKPath$/bin/javah

Parameters: -d jni -jni -classpath ..\..\build\intermediates\classes\debug $FileClass$

Working directory: $ModuleFileDir$\src\main

  (2) ndk-build

Name: ndk-build

Program:  E:\soft\android-ndk-r10e\ndk-build.cmd

Parameters: 

Working directory: $ModuleFileDir$\src\main

  (3) ndk-build clean

Name: ndk-build clean

Program:  E:\soft\android-ndk-r10e\ndk-build.cmd

Parameters:  clean

Working directory: $ModuleFileDir$\src\main


2.写一个java类 生成native方法

public class NdkTest{    static {        System.loadLibrary("NdkTest");    }    public static native String getString();}


3.根据生成的本地方法类NdkTest,使用头文件生成工具生成头文件


/* DO NOT EDIT THIS FILE - it is machine generated */#include <jni.h>#ifndef _Included_com_sm_android_ndkdemo_NdkTest#define _Included_com_sm_android_ndkdemo_NdkTest#ifdef __cplusplusextern "C" {#endifJNIEXPORT jstring JNICALL Java_com_sm_android_ndkdemo_NdkTest_getString  (JNIEnv *, jclass);#ifdef __cplusplus}#endif#endif

4.根据头文件创建cpp类

JNIEXPORT jstring JNICALL Java_com_sm_android_ndkdemo_NdkTest_getString  (JNIEnv * env, jclass jc){       return env->NewStringUTF("Hello word !!!");  }

5.设置Android.mk

LOCAL_PATH := $(call my-dir)include $(CLEAR_VARS)LOCAL_MODULE := NdkTestLOCAL_SRC_FILES := NdkTest.cppinclude $(BUILD_SHARED_LIBRARY)


6.设置Application.mk

APP_MODULES := NdkTestAPP_ABI := all

7.执行ndk-build工具生成so库就可以执行本地方法了,返回

Hello word !!!



0 0
原创粉丝点击