`
文章列表
由于业务需要,项目中需要用到google的一种高效的可扩展的结构化数据存储方式protocol buffer(以下简称pb)。很多人可能对这个新东西不熟悉,大家都知道xml,json,确很少听过pb,下面我就粗劣总结一下pb在mac环境下的搭建以及 ...
    首先,protobuf是一个开源项目(官方站点在“这里 ”),大家可以看出它的后台有多硬了。那这个东西到底能干什么?简单地说,它和xml、json差不多,也是把某种数据结构的信息,以某种格式保存起来。主要用于 数据存储、传输协议格式等场合。 protobuf有啥特色? 1、性能好/效率高 这也是谷歌放着好好的xml不用,而重新造轮子的原因。在时间开销方面:xml格式化(序列化)的开销还行,但是xml解析(反序列化)就不尽人意了。在空间开销方面:由于xml具有较好的可读性,从而导致有大量的冗余文本(不过这对数据量不大的小企业也没有多大影响,对google就不一样了)。 Googl ...
Google开源了一种数据交换格式——Protocol Buffers。在它语焉不详的名字背后,藏着的是: 一种描述数据格式的IDL 对IDL所描述的格式进行编码的一种二进制编码方案 通过代码生成器实现的数据绑定支持,Google提供了C++、Python、 ...
Developer GuideWelcome to the developer documentation for protocol buffers – a language-neutral, platform-neutral, extensible way of serializing structured data for use in communications protocols, data storage, and more.欢迎阅读protocol buffers的开发文档,protocol buffers是一个语言中立,平台中立,可扩展的序列化结构数据的方式可用于通讯协议,数据存 ...
Google Protocol Buffers是google出品的一个协议生成工具,特点就是跨平台,效率高,速度快,对我们自己的程序定义和使用私有协议很有帮助。 Protocol Buffers入门: 1、去 http://code.google.com/p/protobuf/downloads/list 下载一个源代码包和一个已编译好的二进制包 2、找一个Proto示例代码,使用命令 protoc -I=$SRC_DIR --java_out=$DST_DIR $SRC_DIR/addressbook.proto 将proto文件编译一下即可得到对应的Java源代码。例如 pro ...
好,现在处理iphone上面的高清和普清显示非常简单了(准备两套图片),但是,iPad呢?该怎么做呢?   呃,要想编写一个游戏,让它同时能够在iphone和ipad上面运行似乎是一件非常烦人的事--因为设备的纵横比(aspect ratio)不 ...
最新版本的cocos2d完全支持retina显示,而且使用这个功能只需要下列1-2-3步: 调用CCDirector的函数enableRetinaDisplay来开启retina显示支持。如果你使用cocos2d模板,那么只需要把app delegate里面对这句函数调用的注释去掉即可! ...

网络编程总结

一:确认网络环境3G/WIFI    1. 添加源文件和framework        开发Web等网络应用程序的时候,需要确认网络环境,连接情况等信息。如果没有处理它们,是不会通过Apple的审(我们的)查的。    Apple 的 例程 Reachability 中介绍了取得/检测网络状态的方法。要在应用程序程序中使用Reachability,首先要完成如下两部:        1.1. 添加源文件:    在你的程序中使用 Reachability 只须将该例程中的 Reachability.h 和 Reachability.m 拷贝到你的工程中。如下图:            1.2. ...
CCTransitionFade,  //渐隐效果CCTransitionFadeTR, //碎片效果CCTransitionJumpZoom, //跳动效果CCTransitionMoveInL, //从左向右移动CCTransitionPageTurn, //翻页效果CCTransitionRadialCCW, //钟摆效果CCTransitionRotoZoom,//涡轮效果CCTransitionSceneOriented,//CCTransitionShrinkG ...
一、说明 两个类进行通讯,用协议就比较方便。 (书本上的东东,还是得看看) 1.协议声明了可以被任何类实现的方法 2.协议不是类,它是定义了一个其他对象可以实现的接口 3.如果在某个类中实现了协议中的某个方法,也就是这个类实现了那个协议。 4.协议经常用来实现委托对象。一个委托对象是一种用来协同或者代表其他对象的特殊对象。 5:委托,就是调用自己定义方法,别的类来实现。 6.新特性说明 @optional预编译指令:表示可以选择实现的方法 @required预编译指令:表示必须强制实现的方法 二、定义 .h @protocol ContactCtrl ...
开源项目:   扫描wifi信息:http://code.google.com/p/uwecaugmentedrealityproject/http://code.google.com/p/iphone-wireless/条形码扫描:http://zbar.sourceforge.net/iphone/sdkdoc/install.htmltcp/ip的通讯协议:http://code.google.com/p/cocoaasyncsocket/voip/sip:http://code.google.com/p/siphon/http://code.google.com/p/asterisk ...
cocos2d中从场景切换到UIViewController视图 - (void) showUIViewController:(UIViewController *) controller { [[Director sharedDirector] pause]; [UIView beginAnimations:nil context:NULL]; [UIView setAnimationDuration:.5]; [UIView setAnimationTransition:UIViewAnimationTransitionCurlU ...

视差滚动

我们已经有一个很酷的飞船在屏幕上了,但是,它看起来就好像坐在那里一样,毫无生气!我们可以通过往里面添加视差滚动背景来解决这个问题。   但是,等一下,到底什么是视差滚动了?   视差滚动,简单来说,就是“移动背景中的一些图片比其它图片慢一点点”,打个比方,一个背景中的物体有远有近,近的背景移动地快(比如地面),远的背景移动地慢(比如天空),这样子就会形成景深不一样的视差效果出来。   想要在cocos2d里面使用视差滚动效果非常简单。你只需要做3步就ok了: 创建一个CCParallaxNode,然后把它加到层中去。 创建你想要滚动的元素,然后通过调用CCParallaxNo ...
    节点可以运行动作。 1、以下是一个动作的声明 CCAction *action = [CCBlink actionWithDuration:10 blinks:20]; action.tag = 234;   2、运行这个动作会让节点闪烁: [myNode runAction:action];   3、如果你想在以后使用此动作,你可以用tag获取: CCAction* retrievedAction = [myNode getActionByTag:234];   4、你可以用tag停止相关的动作: [myNode stopActionByTag:234 ...
从icon说起 命名方法,举例 Icon.png                         57×57 Icon-72.png                   72×72 Icon-Small.png             29×29 Icon-Small-50.png       50×50 Icon@2x.png                114×114 Icon-Small@2x.png     58×58 另 iTunesArtwork               512×512 在info.plist使用key CFBundleIconFiles ...
Global site tag (gtag.js) - Google Analytics