转载请注明出处:http://blog.csdn.net/l1028386804/article/details/47425073

这篇文章给大家介绍一下在JNI中如何为C语言配置打印Logcat信息。首先,这篇文章是在博文《Android之——JNI初探》基础上完善的,所以,请大家先阅读博文《Android之——JNI初探》。好了,我们直接进入主题吧。

一、实现

1、修改Android.mk文件。

在这个配置文件中我们加入如下一行代码:

LOCAL_LDLIBS += -llog
注意:这行代码一定要加载include $(BUILD_SHARED_LIBRARY)之前。

具体如下图:

此时Android.mk文件文件的配置如下:

LOCAL_PATH := $(call my-dir)include $(CLEAR_VARS)LOCAL_MODULE    := helloLOCAL_SRC_FILES := hello.cLOCAL_LDLIBS += -lloginclude $(BUILD_SHARED_LIBRARY)

2、修改hello.c文件

在这个文件中导入以下头文件:

#include <android/log.h>#define LOG_TAG "System.out"#define LOGD(...) __android_log_print(ANDROID_LOG_DEBUG, LOG_TAG, __VA_ARGS__)#define LOGI(...) __android_log_print(ANDROID_LOG_INFO, LOG_TAG, __VA_ARGS__)

然后在C方法中利用LOGI方法打印Log,

具体如下:

LOGI(" ......From C.....");

修改的配置如图:

hello.c完整代码如下:

#include <stdio.h>#include <jni.h>#include "com_lyz_hdk_helloworld_MainActivity.h"#include <android/log.h>#define LOG_TAG "System.out"#define LOGD(...) __android_log_print(ANDROID_LOG_DEBUG, LOG_TAG, __VA_ARGS__)#define LOGI(...) __android_log_print(ANDROID_LOG_INFO, LOG_TAG, __VA_ARGS__)JNIEXPORT jstring JNICALL Java_com_lyz_hdk_helloworld_MainActivity_helloFromC(JNIEnv *env , jobject obj){LOGI(" ......From C.....");char *str = "hello from c";jstring jstr = (**env).NewStringUTF(env, str);return jstr;}

二、运行效果

三、温馨提示

大家可以到链接http://download.csdn.net/detail/l1028386804/8992313下载完整的JNI配置C语言打印Logcat信息示例源代码。

本实例中,为了方面,我把一些文字直接写在了布局文件中和相关的类中,大家在真实的项目中要把这些文字写在string.xml文件中,在外部引用这些资源,切记,这是作为一个Android程序员最基本的开发常识和规范,我在这里只是为了方便直接写在了类和布局文件中

更多相关文章

  1. NPM 和webpack 的基础使用
  2. 【阿里云镜像】使用阿里巴巴DNS镜像源——DNS配置教程
  3. eclipse android 设置及修改生成apk的签名文件
  4. Android刷Recovery
  5. 使用html,javascript,css,phonegap创建开发android应用程序
  6. 跟Google学习Android开发-工具篇-Android(安卓)Studio入门
  7. 在android studio 中修改versioncode 和versionname
  8. Android(安卓)解析XML文件方法
  9. Android(安卓)Environment.getExternalStorageState使用

随机推荐

  1. Android(安卓)面试的重点要点题,快来了解
  2. android中图片色调识别探究
  3. Android多进程间采用AIDL方式进行通信简
  4. android api code 学习之FaceDetector
  5. Android(安卓)TV开发总结(二)构建一个TV Me
  6. Android(安卓)四大组件之 Service
  7. Smobiler如何实现.net一键开发,ios和andr
  8. Android(安卓)OpenGLES2.0(十一)——利用Op
  9. android程序打包apk(签名的作用)
  10. Android(安卓)NDK——使用Android(安卓)S