cocos2dx 3.9.1 mac模拟器log输出bug修正
今天发现某些情况下mac模拟器会出现不输出log的情况, 跟踪了一下发现问题出现在mac/SimulatorApp.mm文件的handleNotification方法。
NSString *str = [[[NSString alloc] initWithData:data encoding:NSUTF8StringEncoding] autorelease];
这句代码在某些情况下str会为nil值导致模拟器不会输出任何log, 原因可能是data的编码中存在个别字符乱码导致整体不输出的情况。
修改后的代码如下
- (void)handleNotification:(NSNotification *)note
{//NSLog(@"Received notification: %@", note);[_pipeReadHandle readInBackgroundAndNotify] ;NSData *data = [[note userInfo] objectForKey:NSFileHandleNotificationDataItem];NSString *str = [[[NSString alloc] initWithData:data encoding:NSUTF8StringEncoding] autorelease];if (!str){str =[[[NSString alloc]initWithData:data encoding:NSASCIIStringEncoding] autorelease];}if (!str){str = @"encoding NSData to NSString error";}//show log to console[_consoleController trace:str];if(_fileHandle!=nil){[_fileHandle writeData:[str dataUsingEncoding:NSUTF8StringEncoding]];}
}
当用utf8无法正常解码改用asc解码输出,这样就能看见输出了
转载于:https://www.cnblogs.com/ColaZhang/p/5136481.html
cocos2dx 3.9.1 mac模拟器log输出bug修正相关推荐
- 思科模拟器32位_三款另类的68k Mac模拟器
之前说过两个主流的68k Mac模拟器,Mini vMac和BasiliskII.不过它们都没有真正的硬盘模拟,都是通过外置的软驱接口连接的"硬盘".那么这篇文章将介绍三款非主流的 ...
- swift LOG 输出
Log 输出是程序开发中很重要的组成部分,虽然它并不是直接的业务代码,但是却可以忠实地反映我们的程序是如何工作的,以及记录程序运行的过程中发生了什么. 在 Swift 中,最简单的输出方法就是使用 p ...
- android简化log输出方法
android简化版log输出 希望实现的效果: 只需要将类实现ILog接口(不需要进行任何额外的操作),然后就能直接通过printLog进行日志的输出 如下: class A implements ...
- Android中获取WebView加载的html中console.log输出的内容
场景 Android中使用WebView加载本地html并支持运行JS代码和支持缩放: Android中使用WebView加载本地html并支持运行JS代码和支持缩放_BADAO_LIUMANG_QI ...
- linux c打印日志文件,linux c下log输出代码模板示例代码
前言 本文主要介绍了关于linux c下log输出代码模板的相关内容,分享出来供大家参考学习,下面话不多说了,来一起看看详细的介绍吧 模板 模本分为两个文件:log.c和log.h. log.c /* ...
- mac命令行将输出写入文件_如何在Linux中使用命令行将PDF文件转换为可编辑文本...
mac命令行将输出写入文件 There are various reasons why you might want to convert a PDF file to editable text. M ...
- 一个小巧的C++Log输出到文件类
一个小巧的C++Log输出到文件类 (转) 作者:wangyin159 http://www.cnblogs.com/mazhenyu/p/4139352.html 一个小巧的C++Log输出到文件类 ...
- Vue项目如何过滤全部console.log输出(浅水魚)
Vue项目如何过滤全部console.log输出 在App.vue的created中调用一个consoleCancle方法 然后在methods中创建一个consoleCancle方法,让consol ...
- 针对不同的package定义log输出
2019独角兽企业重金招聘Python工程师标准>>> 针对不同的package定义log输出 转载于:https://my.oschina.net/u/138995/blog/19 ...
- AndroidT(13) Log 系统 -- C plus plus 语言格式的LOG输出(二)
1.概览 上一章提到的是在Android系统中,以C语言格式方式进行log输出.本章就来讲讲c++语言格式的. std::cout<<"This is a c++ log&q ...
最新文章
- java常用设计模式一:单例模式
- 洛谷P4718 【模板】Pollard-Rho算法
- 04_SpringCloud 整合Ribbon细粒度配置自定义
- 接口 同花顺_Fiddler模拟接口数据(mock)
- 局部变量AND全局变量
- atitit.常用编程语言的性能比较 c c++ java
- PLSQL官方下载、安装和使用完全指南
- Button按钮及其点击事件方式
- win10 1903 专业版 CreateProcessAsUser
- python列表元组字典
- Microsoft Word 2007 向程序发送命令时出现问题解决方法
- 互联网专利战场急先锋-高智发明,微软苹果等撑腰
- Java串口通信读写串口导致程序崩溃问题
- 欧可林Oclean X Pro旗舰版:大学生的私人口腔医生
- 谷歌高级搜索_您如何设置高级Google搜索条件?
- listview 的首行固定内容标题且加粗显示(类似于表格的首行)的实现方法
- Linux系统---Discuz论坛网站创建部署
- 华为设备 配置成为FTP服务器/客户端
- Apache OJB的分页处理
- 《新概念英语》英语的学习方法(完整版)