我正在使用从 GitHub 签出的最新代码。(0.13.0 测试版)
我正在使用 Eclipse 为 Android 开发。我确实在 Android.mk 中添加了 *COCOS2D_DEBUG*。我检查并确保 COCOS2D_DEBUG 确实定义为 1。
问题:CCLog 不会向 LogCat 打印任何内容。同时,CCMessageBox 运行良好。
(然后我在 iOS 上测试了同一组代码,CCLog 和 CCMessageBox 都运行良好。)
我在这里想念什么?
我正在使用从 GitHub 签出的最新代码。(0.13.0 测试版)
我正在使用 Eclipse 为 Android 开发。我确实在 Android.mk 中添加了 *COCOS2D_DEBUG*。我检查并确保 COCOS2D_DEBUG 确实定义为 1。
问题:CCLog 不会向 LogCat 打印任何内容。同时,CCMessageBox 运行良好。
(然后我在 iOS 上测试了同一组代码,CCLog 和 CCMessageBox 都运行良好。)
我在这里想念什么?
只是想知道两件事:1.您使用的是CCLog还是CCLOG(都是大案子)?
你放了吗
#define COCOS2D_DEBUG 1
在您要调试的 cpp 文件中的真正顶部(高于任何#include)?
使用 CCLOG("Test String"),全部大写,就可以了。CCLog("Hello") 在 Eclipse 日志猫中不起作用。
我自己关于如何使用 CCLOG 在 Eclipse 的 LogCat 中打印信息的经验:
在 Eclipse 中,您的项目打开 jni 文件夹,在 Application.mk 文件中添加 -DCCOCOS2D_DEBUG=1,如下所示:
APP_CPPFLAGS := -frtti -DCC_ENABLE_CHIPMUNK_INTEGRATION=1 -std=c++1 -fsigned-char -DCCOCOS2D_DEBUG=1
所有这些功能CCLOG CCLog日志,工作,所以只使用主要的CCLOG ...
笔记:
我评论过
//#define COCOS2D_DEBUG 1
在我的项目中,确保没有这样的其他行,我仍然可以在 Visual Studio 2013 中打印出我的 CCLOG,并在 Windows 7 上打印出 Eclipse 的 Logcat:
如果你想使用 "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");
我添加了同样的问题: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
从 cocos2dx 版本 3 开始,至少在 Application.mk 中 COCOS2D_DEBUG 是基于标准 NDK 标志 NDK_DEBUG=1 有条件地设置的。所以只需调用你的构建传递
ndk-build NDK_DEBUG=1
这也确保为调试构建生成适当的符号。您将希望使用宏“CCLOG”而不是已弃用的函数调用 CCLog,因为前者将在发布模式下扩展为空,并且在构建发布时不会产生任何性能开销。