WEB开发网
开发学院手机开发Android 开发 Android:Ubuntu下Jni学习入门实例 阅读

Android:Ubuntu下Jni学习入门实例

 2010-09-06 08:42:00 来源:WEB开发网   
核心提示:float result1=area(1);tv2.setText("The area(r) result:"+result1);}public native float area(float r);public native float add(float a, float b);static {

float result1=area(1);

tv2.setText("The area(r) result:"+result1);

}

public native float area(float r);

public native float add(float a, float b);

static {

System.loadLibrary("hustlan-jni");

}

}

C代码:hustlan-jni.c

#include

#include

#include <android log.h="">

jfloat

Java_com_sagem_hustlanjni_HustlanJNI_add( JNIEnv* env,

jobject thiz, jfloat a,jfloat b )

{

return (a+b);

}

jfloat

Java_com_sagem_hustlanjni_HustlanJNI_area( JNIEnv* env, jobject thiz, jfloat r)

{

return M_PI*r*r;

}

Makefile: Android.mk

LOCAL_PATH := $(call my-dir)

include $(CLEAR_VARS)

LOCAL_MODULE := hustlan-jni

LOCAL_SRC_FILES := hustlan-jni.c

LOCAL_LDLIBS := -llog

include $(BUILD_SHARED_LIBRARY)

android工程目录下,建立一个名为jni的文件夹,把hustlan-jni.c & android.mk文件拷贝进去,生成.so. windows+cygwin下开发,so要push到模拟器的system/lib中,而linux中开发 SO文件会自动嵌入到android的apk中,具体细节还没搞明白。 TBL

5. 运行结果

上一页  1 2 

Tags:Android Ubuntu Jni

编辑录入:coldstar [复制链接] [打 印]
赞助商链接