ndk ----hello

第一,建立android 工程

 

package com.ghd.test;

 

public class Hello extends Activity{

 

        static {

              System.loadLibrary("hello");

        }

 

       public natvie stringFromJni();

 

       public void onCreate(Bundle bundle){

 

                   TextView tv  = new TextView(this);

                    tv.setText(stringFromJni());

                    setContentView(tv);

 

              }

 

}

 

第二,javah    -jni 生成头文件

 

进入工程bin目录下,运行javah -jni com.ghd.test.Hello

 

会生成文件com_ghd_test_Hello.h  内容如下:

 

 

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

#include <jni.h>

/* Header for class com_ghd_test_Hello */

 

#ifndef _Included_com_ghd_test_Hello

#define _Included_com_ghd_test_Hello

#ifdef __cplusplus

extern "C" {

#endif

/*

 * Class:     com_ghd_test_Hello

 * Method:    stringFromJni

 * Signature: ()Ljava/lang/String;

 */

JNIEXPORT jstring JNICALL Java_com_ghd_test_Hello_stringFromJni

  (JNIEnv *, jobject);

 

#ifdef __cplusplus

}

#endif

#endif

 

 

 

第三建立目录jni

 

新建文件hello.c

 

 

#include <string.h>

#include <jni.h>

 jstring  Java_com_ghd_test_Hello_stringFromJni

  (JNIEnv *env, jobject thiz)

{

    return (*env)->NewStringUTF(env,"ghd214,first programe for ndk test");

 

 

};

 

新建文件Android.mk

 

 

LOCAL_PATH := $(call my-dir)

 

include $(CLEAR_VARS)

 

LOCAL_MODULE := hello

LOCAL_SRC_FILES := hello.c

 

include $(BUILD_SHARED_LIBRARY)

 

然后在目录jni 下运行命令    ndk-build

 

 

生成目录libs 和obj

 

最后运行Hello 工程。

 

 

 

 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值