如何关闭cocos2dx js 调试调试时输出的log

主题 : 求教怎么在android的Logcat中输出日志啊
级别: 新手上路
可可豆: 34 CB
威望: 34 点
在线时间: 6(时)
发自: Web Page
来源于&&分类
求教怎么在android的Logcat中输出日志啊&&&
用log或CCLog或CCLOG都无法在logcat中输出日志啊,这个应该怎么做才正确?我用的cocos2d-x-3.1.1,步骤如下:1、配置好环境,使用cocos new -l cpp -d C:\ TestLog创建一个新工程2、修改C:\TestLog\Classes\AppDelegate.cpp,在AppDelegate::applicationDidFinishLaunching()方法中添加log(&Hello, Logger!&);3、使用命令行编译cd C:\TestLogcocos compile -p android 之后放到真机上运行,可是用logcat看不到Hello, Logger的信息,有人知道是怎么回事吗,我少做了什么,还是哪里错了?
级别: 骑士
可可豆: 1391 CB
威望: 1391 点
在线时间: 659(时)
发自: Web Page
我跟你你一样,遇到同样的问题。。。
级别: 新手上路
可可豆: 59 CB
威望: 59 点
在线时间: 6(时)
发自: Web Page
在console里也没嘛?
级别: 侠客
UID: 325305
可可豆: 802 CB
威望: 795 点
在线时间: 302(时)
发自: Web Page
是不是忘了加LOCAL_CFLAGS += -DCOCOS2D_DEBUG=1
级别: 新手上路
可可豆: 34 CB
威望: 34 点
在线时间: 6(时)
发自: Web Page
换了个手机就可以了。之前用的测试机是华为的P6,死活不输出LOG,换其他的android手机就好了。
级别: 新手上路
可可豆: 53 CB
威望: 54 点
在线时间: 46(时)
发自: Web Page
LOCAL_MODULE := cocos2dcpp_sharedLOCAL_CFLAGS += -DCOCOS2D_DEBUG=1LOCAL_MODULE_FILENAME := libcocos2dcppLOCAL_SRC_FILES := hellocpp/main.cpp \加了也看不到,求帮忙,能看到系统输出的log,但是我自己的死活看不到
级别: 新手上路
可可豆: 189 CB
威望: 189 点
在线时间: 59(时)
发自: Web Page
回 4楼(sawesio) 的帖子
现在到华为 P8了,logcat里还是看不到log。
级别: 新手上路
可可豆: 189 CB
威望: 189 点
在线时间: 59(时)
发自: Web Page
回 4楼(sawesio) 的帖子
华为系列手机默认是关闭了日志输出的,需要人工打开。方法如下:进入拨号界面输入:*#*#2846579#*#*依次选择ProjectMenu---后台设置----LOG设置---LOG开关,勾选&CP日志“即可。
级别: 新手上路
可可豆: 24 CB
威望: 24 点
在线时间: 8(时)
发自: Web Page
我也遇到这样的情况,之前的机子是输出的,但换了华为不输出了..我不使用CCLOG换成使用__android_log_print(ANDROID_LOG_DEBUG, &cocos2d-x debug info&,&&buf);这样又输出了.不知道为什么.....--------------------------------------人工打开的方式还没试...
关注本帖(如果有新回复会站内信通知您)
苹果公司现任CEO是谁?2字 正确答案:库克
发帖、回帖都会得到可观的积分奖励。
按"Ctrl+Enter"直接提交
关注CocoaChina
关注微信 每日推荐
扫一扫 浏览移动版3493人阅读
软件调试(19)
& & & 今天说一下手机游戏开发的调试问题吧。不得不说的是和PC平台游戏、软件开发相比,手机上开发游戏和软件要困难的多。原因是多方面的,比如说开发环境比较复杂,工具软件不够人性化等等。
& & & cocos2dx的出现解决了一个很大的问题,因为他是跨平台的,相对来说windows的软件开发环境比较友好,对中国程序员来说更熟悉。这样可以在windows进行日常开发和调试,然后在发布到其它平台的时候进行少量的处理就好了。
& & & cocos2dx程序的调试,在windows下和端游类似,可以在后台窗口进行打印,也可以直接在vs中挂断点进行跟踪。相对还是比较容易。唯一需要优化的是把后台打印日志导出,以方便根据日志进行分析。
& & & 但是在windows环境OK之后,需要发布到Android平台的时候,就有些麻烦了,顺利运行还好,一旦在运行的过程中出现问题,那再来调试就相当的麻烦了,模拟器满如蜗牛,Esclipe本身支持也不够强大。有时候可能只是一句脚本报错,但是要发现问题缺要费九牛二虎之力。要是在真机上运行出错,那就更加不好跟踪问题了,还需要用到USB调试功能。今天的主要话题就是针对这种情况,提供几个好的方法来方便我们进行游戏开发。
& & & 1、后台打印日志的优化。
& & & windows下已经有后台日志查看功能,但是大家可能会发现一个问题,后台显示有行数的限制,超过多少行之后就看不到了,但是cocos2dx的输出是相当多的。怎么办?解决方案就是输出log文件。把后台显示的内容输出后,我们可以直接分析log文件。下面提供lua的解决代码,用C++的同学可以自己改造。
& & & 首先,封装一下lua的文件处理功能,比较简单,而且后面的方法可能也需要使用。
--file.lua
--定义lua文件操作的方法
--打开文件:参数(文件名,打开模式),返回文件句柄或nil
function openFile(filename, mode)
local f = io.open(filename,mode)
return nil
--读取文件全部内容:参数(文件句柄),返回一个string
function readAllFile(f)
return f:read(&*all&)
--读取文件一行内容:参数(文件句柄),返回一个string
function readLineFile(f)
return f:read(&*line&)
--写文件内容:参数(文件句柄,字符串)
function writeFile(f, ...)
local arg = {...}
f:write(unpack(arg))
--关闭文件,参数(文件句柄()
function closeFile(f)
& & &&然后,我们要改写print函数和cclog函数,将这些内容输出到文件。
local print_raw = print
print = function(...)
require &base.file&
print_raw(string.format(...))
local file = openFile(&client.log&, &a&)
if file then
writeFile(file, string.format(...)..&\n&)
closeFile(file)
cclog = function(...)
print(string.format(...))
-- for CCLuaEngine traceback
function __G__TRACKBACK__(msg)
print(&----------------------------------------&)
print(&LUA ERROR: & .. tostring(msg) .. &\n&)
print(debug.traceback())
print(&----------------------------------------&)
end& & &&这样,所有在lua里面的打印信息都会输出到日志文件方便我们分析了。
& & & 2、上面这个方法已经能够让我们分享日志,那还有没有更好的方法呢?如果我是在安卓手机上运行,我要查看日志是不是很不方便呢?
& & & &那我们就更进一步,我们不是把日志输出到文件了吗?那我们直接在游戏里面查看日志不是更方便?所以我们的思路是,在游戏中写一个日志显示界面,然后把日志文件内容一行一行读出来,让他显示在一个RichText控件里面。这样是不是更方便呢?这个方法我暂时没时间写,不过肯定没问题的,有时间写好后补上代码。
& & & 3、方法2已经能够及时的看到日志了,我们还可以使用更强大一点的方法,我们可以建一个日志服务器,客户端在输出日志的时候就发送到日志服务器,这样真机测试就很方便了,和在windows开发很相似了,不过这个方案有点重了,大家使用第二点应该就可以了。
& & & 好了,上面推荐的这三种方案应该能够解决大部分的调试问题了,再也不用为了看日志去启动麻烦的模拟器了。
& & & 一直没时间,今天才抽出时间来完善这个功能并将之加入到开发过程中。实现核心代码如下:& & &&
--日志控件
self._richText = ui.RichTextUI:create()
self._richText:setSize(cc.size(winSize.width - 60, winSize.height - 110))
self._richText:setAnchorPoint(cc.p(0, 0))
self._richText:setPosition(cc.p(30, 30))
self._widget:addChild(self._richText)
local fHandle = openFile(&client.log&, &rb&)
if fHandle then
local idx = 0
local lineStr = readLineFile(fHandle)
while lineStr do
if idx &= self._index then
local elem = ui.RichItemText:create(0, Color3B.WHITE, 255, strg2u(lineStr), DEFAULT_FONT_TTF, 20)
self._richText:insertElement(elem)
self._richText:insertNewLine()
idx = idx + 1
lineStr = readLineFile(fHandle)
self._index = idx
end& & & 下面看看实际的效果吧,对于真机测试来说,这个效果是不是已经很好了呢?
& & & 转载请注明出处:帘卷西风的专栏(http://blog.csdn.net/ljxfblog)
参考知识库
* 以上用户言论只代表其个人观点,不代表CSDN网站的观点或立场
访问:203127次
积分:2841
积分:2841
排名:第9726名
原创:59篇
评论:253条
文章:25篇
阅读:82840
文章:17篇
阅读:74133
(3)(1)(1)(2)(3)(1)(2)(6)(2)(5)(3)(2)(1)(2)(5)(2)(3)(1)(2)(1)(4)(7)(1)中级会员, 积分 486, 距离下一级还需 314 积分
主题帖子社区积分
机&&&&&&&型:魅族 PRO 5版&&&&&&&本:6.6.12.7 daily总签到数:92
轻松注册,让你轻松玩转Flyme社区
才可以下载或查看,没有帐号?
如题,偶然看到开发者选项中还有这个设定,不明觉厉,希望能替我解答下此设定的具体功能。手机系统看左边头像下面。有图有真相。
2015纪念勋章2015年度评选纪念
PRO 5拥有PRO 5
魅蓝note拥有魅蓝note
关注微信已关注官方微信
熊猫骑士熊猫骑士
MX3拥有MX3}

我要回帖

更多关于 android 关闭log输出 的文章

更多推荐

版权声明:文章内容来源于网络,版权归原作者所有,如有侵权请点击这里与我们联系,我们将及时删除。

点击添加站长微信