Eclipse:JNI代码调试问题

时间:2011-06-08 08:33:54

标签: android eclipse debugging java-native-interface

背景

我正在为Windows编写应用程序,在Windows中使用Eclipse。我正在 JAVA 中实施 C 代码,为此我正在使用 JNI 即可。我有很多功能,我的问题是我想在JNI中 调试函数

问题

我可以调试用C语言编写的JNI代码吗?

1 个答案:

答案 0 :(得分:3)

以下是答案How to start logging for Android NDK

几个星期以来,我一直在研究如何从Android NDK代码中编写Eclipse日志。我在互联网上找到了一些例子,想与你分享。按照以下步骤,您可以开始登录Eclipse。

  1. 将log.h文件包含在Android NDK源文件中

    #include <android/log.h>
    
  2. 将以下行添加到Android.mk制作文件中。

    LOCAL_LDLIBS := -llog
    
  3. 现在您可以开始记录,这两个步骤允许您从Android NDK在Eclipse中编写日志。在Android NDK代码中写下面的行,日志将出现在Eclipse

    __android_log_write(ANDROID_LOG_ERROR,"Tag","Message");
    

    使用以下标志在您想要的列中写入日志。

    typedef enum android_LogPriority {
        ANDROID_LOG_UNKNOWN = 0,
        ANDROID_LOG_DEFAULT,    /* only for SetMinPriority() */
        ANDROID_LOG_VERBOSE,
        ANDROID_LOG_DEBUG,
        ANDROID_LOG_INFO,
        ANDROID_LOG_WARN,
        ANDROID_LOG_ERROR,
        ANDROID_LOG_FATAL,
        ANDROID_LOG_SILENT,     /* only for SetMinPriority(); must be last */
    } android_LogPriority
    

    例如,如果要在“信息”列中书写,则必须编写

    __android_log_write(ANDROID_LOG_INFO,"Tag","Message");
    

    所以,祝你好运!