android jni开发

遇到的问题如下:

在javah -jni命令的时候会出现找不到类的错误。

这个时候需要加入 javah   -jni classpath参数就可以了.

具体的可以参考连接点击打开链接

还有一个:

LOGD 找不到的问题,这个需要在android.mk下添加  

#include <android/log.h>
#define LOG_TAG "System.out.c"
#define LOGD(...) __android_log_print(ANDROID_LOG_DEBUG, LOG_TAG, __VA_ARGS__)
#define LOGI(...) __android_log_print(ANDROID_LOG_INFO, LOG_TAG, __VA_ARGS__)
是必须添加的,告诉编译器这里需要输出LOG,LOG的TAG标记是“System.out.c”,并且预定义LOGD(...)代表Debug输出,LOGI(...)代表Info输出。然后在C语言主题代码中就可以使用LOGD和LOGI了,传递字符串就可以了,需要注意的是传递的字符串要用英文字符,不支持中文。

3,在Android.mk文件中配置LOG输出

    LOCAL_PATH := $(call my-dir)

    include $(CLEAR_VARS)

    LOCAL_MODULE    := Hello

    LOCAL_SRC_FILES := Hello.c
    
    LOCAL_LDLIBS += -llog

    include $(BUILD_SHARED_LIBRARY)
注意:就一句 LOCAL_LDLIBS += -llog 就行了,但是必须得加在 include $(BUILD_SHARED_LIBRARY) 之前。

4,重新编译代码,运行看看效果


LOCAL_LDLIBS+= -llog 就可以了

下边的连接是代码:

jni demo

生成so也可以用命令:

进入到jni 目录下然后执行: ndk-build既可以了

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值