Eclipse JNI Demo --【Linux】

目录

1、建工程

2、建java类

3、生成头文件

4、CPP实现

 5、配置及编译

 6、验证


1、建工程

先创建一个android标准工程:

2、建java类

com.phuket.tour.studio包下,建立一个Java文件Mp3Encoder.java,并且在文件中新增一个方法encode(),如下图:

 3、生成头文件

打开终端,进入到android工程目录下面的bin\classes目录,

 

 执行下面的命令生成JNI接口文件:

javah -jni com.phuket.tour.studio.Mp3Encoder

4、CPP实现

把生成的头文件复制到android工程的jni目录下,编写一个Mp3Encoder.cpp来实现该接口文件:

                                                                                                                                         

#define LOGI(...) __android_log_print(ANDROID_LOG_INFO,LOG_TAG,__VA_ARGS__)

JNIEXPORT void JNICALL Java_com_phuket_tour_studio_Mp3Encoder_encode(
		JNIEnv * env,jobject obj){
	LOGI("encoder encode");

};

 5、配置及编译

在jni目录下新建一个Android.mk文件,并键入以下内容:

LOCAL_PATH := $(call my-dir)
include $(CLEAR_VARS)
LOCAL_SRC_FILES = ./Mp3Encoder.cpp
LOCAL_LDLIBS := -L$(SYSROOT)/usr/lib -llog
LOCAL_MODULE := libaudioencoder
include $(BUILD_SHARED_LIBRARY)

然后执行如下命令生成.so文件:

ndk-build

生成的文件如下图:

 

 6、验证

在MainActivity中写入一个静态代码块,如下:

static {
		System.loadLibrary("audioencoder");
	}

在onCreate()方法中调用Mp3Encoder类的encode()方法。

	@Override
	protected void onCreate(Bundle savedInstanceState) {
		super.onCreate(savedInstanceState);
		setContentView(R.layout.activity_main);
		
		Mp3Encoder mMp3Encoder = new Mp3Encoder();
		mMp3Encoder.encode();
		
	}

最后在Logcat中查看打印的日志~~~~ end.

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 1
    评论
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

andrew_style

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值