android JNI调用SDK底层C方法

如题:因为上层没法去找到方法,只有想办法去调底层C的方法,SDK源码make出来的.so库文件可以用来做jni的调用么? 底层.c文件里面没有申明JNI,我需要如何去申明

http://blog.csdn.net/xnwyd/article/details/7086384
http://www.docin.com/p-281097673.html
http://blog.csdn.net/zdy666888/article/details/18809957

自己再封装一层JNI接口就可以了
JNI其实不复杂,花点时间看一下相关资料就ok

我需要底层C的3个方法
int audio_left_mono(int pid)
{
int ret = -1;
play_para_t *player_para;
codec_para_t *p;

player_para = player_open_pid_data(pid);
if (player_para == NULL) {
    return 0;    /*this data is 0 for default!*/
}

p = get_audio_codec(player_para);
if (p != NULL) {
    ret = codec_left_mono(p);
}
player_close_pid_data(pid);

return ret;

}

int audio_right_mono(int pid)
{
int ret = -1;
play_para_t *player_para;
codec_para_t *p;

player_para = player_open_pid_data(pid);
if (player_para == NULL) {
    return 0;    /*this data is 0 for default!*/
}

p = get_audio_codec(player_para);
if (p != NULL) {
    ret = codec_right_mono(p);
}
player_close_pid_data(pid);

return ret;

}

int audio_stereo(int pid)
{
int ret = -1;
play_para_t *player_para;
codec_para_t *p;

player_para = player_open_pid_data(pid);
if (player_para == NULL) {
    return 0;    /*this data is 0 for default!*/
}

p = get_audio_codec(player_para);
if (p != NULL) {
    ret = codec_stereo(p);
}
player_close_pid_data(pid);

return ret;

}

这三个方法怎么去封装?

你这几个函数的参数,返回值都比较简单,按照JNI的规则,封装导出一下,然后就可以java来调用了

http://www.cnblogs.com/anyanran/archive/2010/11/22/ndk1.html