cocos2d-lua 3.10 开启debug.log写日志 和打开exe控制台输入参数

之前一直想找cocos 打印写log文件日志
因为之前一直都是控制台输出
后来自己也写了一个写log文件日志
公司项目里面也支持安卓写log文件日志

偶然发现quick 3.3 翻金币demo里面有debug.log文件
打开看了一下 发现就是把控制台输出到文件了
觉得挺不错
然后在3.10的框架里面找 没有发现
然后又翻底层
经过反向搜索文件名 发现

string ProjectConfig::getDebugLogFilePath() const
{
    auto path(getProjectDir());
    path.append("debug.log");
    return path;
}

找到ProjectConfig
通过ProjectConfig在3.10的框架里面发现了命令行代码段

3.3代码

void ProjectConfig::parseCommandLine(const vector &args)
{
...
    else if (arg.compare("-write-debug-log") == 0)              //开启写文件日志
    {
        setWriteDebugLogToFile(true);
    }
    else if (arg.compare("-disable-write-debug-log") == 0)      //关闭写文件日志
    {
        setWriteDebugLogToFile(false);
    }
...
}

3.10代码

//使用样例 -write-debug-log debug.log
void ProjectConfig::parseCommandLine(const vector &args)
{
...
    else if (arg.compare("-write-debug-log") == 0)              //支持输入log文件名*it就是文件名
    {
        ++it;
        if (it == args.end()) break;
        setDebugLogFilePath((*it));
        setWriteDebugLogToFile(true);
    }
...
}

发现命令行后 有4种方式可以配置

  1. 设置visul studio下项目的属性了:
    右键项目 -> 属性 -> 配置属性 -> 调试 -> 命令参数 -> 编辑 -> 在后面加入 -write-debug-log $(ProjectDir)debug.log
    然后就ok了注意 要空格哦!看到编辑里面原有的值,你就会豁然开朗……这里设置的这些值就是要传入mian函数的参数了,注意每个参数之间要空格,至于$(ProjectDir)debug.log 这个参数可以自定义,因为cocos代码中第一个字段是开关,然后*(++it)才是路径值.
    这个方法我试过了 在vs里面运行有效 直接运行exe无效
    而且路径需要你自己折腾
    -workdir $(ProjectDir)../../../ -write-debug-log $(OutDir)../../../../simulator/win32/debug.log //输出到 XX/Debug.win32
    -workdir $(ProjectDir)../../../ -write-debug-log $(ProjectDir)debug.log //输出到sln同级目录
    -workdir $(ProjectDir)../../../ -write-debug-log debug.log //输出到exe同级目录

  2. 建立start.bat批处理文件
    文件内容
    START FLuaFrame.exe -write-debug-log debug.log
    其他样例
    START FLuaFrame.exe -workdir %~dp0 -file src/main.lua -size 640x1136 -scale 0.8

  3. 打开控制台 输入exe路径 后面带命令行参数

  4. 创建快捷方式 在快捷方式点击属性 后面带命令行参数

cocos2d-lua 3.10 开启debug.log写日志 和打开exe控制台输入参数_第1张图片
快捷方式带命令行.png
结果1.png
cocos2d-lua 3.10 开启debug.log写日志 和打开exe控制台输入参数_第2张图片
结果2.png

你可能感兴趣的:(cocos2d-lua 3.10 开启debug.log写日志 和打开exe控制台输入参数)