5

我正在使用从 GitHub 签出的最新代码。(0.13.0 测试版)

我正在使用 Eclipse 为 Android 开发。我确实在 Android.mk 中添加了 *COCOS2D_DEBUG*。我检查并确保 COCOS2D_DEBUG 确实定义为 1。

问题:CCLog 不会向 LogCat 打印任何内容。同时,CCMessageBox 运行良好。

(然后我在 iOS 上测试了同一组代码,CCLog 和 CCMessageBox 都运行良好。)

我在这里想念什么?

4

6 回答 6

7

只是想知道两件事:1.您使用的是CCLog还是CCLOG(都是大案子)?

你放了吗

    #define COCOS2D_DEBUG 1

在您要调试的 cpp 文件中的真正顶部(高于任何#include)?

于 2012-05-29T10:48:08.580 回答
5

使用 CCLOG("Test String"),全部大写,就可以了。CCLog("Hello") 在 Eclipse 日志猫中不起作用。

于 2012-06-01T12:29:26.813 回答
0

我自己关于如何使用 CCLOG 在 Eclipse 的 LogCat 中打印信息的经验:

  1. 在 Eclipse 中,您的项目打开 jni 文件夹,在 Application.mk 文件中添加 -DCCOCOS2D_DEBUG=1,如下所示:

    APP_CPPFLAGS := -frtti -DCC_ENABLE_CHIPMUNK_INTEGRATION=1 -std=c++1 -fsigned-char -DCCOCOS2D_DEBUG=1

Application.mk 与 -DCCOCOS2D_DEBUG=1

  1. 在你的项目 cpp 文件的某处写 CCLOG 函数: 在此处输入图像描述

所有这些功能CCLOG CCLog日志,工作,所以只使用主要的CCLOG ...

  1. 根据我的经验,Eclipse 的 LogCat 是一个可怕的工具,我非常讨厌它。非常烦人的事情是,在 3-6 次构建后,LogCat 停止工作,新行停止出现,所以我必须重新启动 Eclipse,然后 LogCat 继续工作...当我在 LogCat 中按 Clear Log 按钮时,所有日志都会消失,新日志不会出现...
    无论如何,要查看日志首先添加一个过滤器,名称无关紧要,并在标签行中写入: debug info ,然后 CCLOG 将显示: LogCat CCLOG

笔记:

我评论过

//#define COCOS2D_DEBUG 1 

在我的项目中,确保没有这样的其他行,我仍然可以在 Visual Studio 2013 中打印出我的 CCLOG,并在 Windows 7 上打印出 Eclipse 的 Logcat:

visual studio2013 COCOS2D_DEBUG 注释掉了

于 2014-10-10T08:05:53.873 回答
0

如果你想使用 "CCLog()" 那么不需要设置 #define COCOS2D_DEBUG 1 如果你想使用 CCLOG() 那么你必须设置 #define COCOS2D_DEBUG 1

前 CCLog

CClog("Hi this is CCLog");

CCLOG 的示例代码

CCLOG ("Characters: %c %c \n", 'a', 65);

CCLOG ("Decimals: %d %ld\n", 1977, 650000L);

CCLOG ("Preceding with blanks: %10d \n", 1977);

CCLOG ("Preceding with zeros: %010d \n", 1977);

CCLOG ("Some different radixes: %d %x %o %#x %#o \n", 100, 100, 100, 100, 100);

CCLOG ("floats: %4.2f %+.0e %E \n", 3.1416, 3.1416, 3.1416);

CCLOG ("Width trick: %*d \n", 5, 10);

CCLOG ("%s \n", "A string");
于 2013-11-09T07:11:48.887 回答
0

我添加了同样的问题:logcat 没有显示我的 cocos2dx 日志。然后我明白我的应用程序总是以发布模式构建的。

Make sure to activate debug mode in Eclipse for your project:

- Right-click your project
- Choose "Build Configurations" \ "Set Active" \ "Debug"

无需修改您的 application.mk,因为已经在那里设置了一个指令用于调试或运行发布版本......之后在 logcat 窗口中获取日志,

- Create a new LogCat's filter and in the "by log tag" type
"cocos2d-x debug info"   (without quotes)

运行应用程序时,在 LogCat 中选择过滤器以查看所有内容。顺便说一句:使用 cocos2dx 日志时使用 CCLOG 宏:

CCLOG("Year is %d",2015);      // don't use CCLog
于 2015-01-30T13:22:11.717 回答
0

从 cocos2dx 版本 3 开始,至少在 Application.mk 中 COCOS2D_DEBUG 是基于标准 NDK 标志 NDK_DEBUG=1 有条件地设置的。所以只需调用你的构建传递

ndk-build NDK_DEBUG=1

这也确保为调试构建生成适当的符号。您将希望使用宏“CCLOG”而不是已弃用的函数调用 CCLog,因为前者将在发布模式下扩展为空,并且在构建发布时不会产生任何性能开销。

于 2016-02-07T05:35:11.010 回答