Simple Coding, Better Life

Android编译预处理及多渠道发布

| Comments

Android游戏在国内的渠道实在太乱了,像UC、91、QQ、应用汇、安智市场、N多网这样的平台,大大小小几十个。一款游戏如果需要在所有的渠道上发布,还得为每个渠道定制相应的版本。这种活如果人肉一个渠道一个渠道去做,有点劳民伤财。考虑到不同渠道的版本在代码和资源上99%都是相同的,这种事情应该用脚本去完成。

五六年前J2ME游戏经常需要为上百款设备做适配,当时比较流行的发布策略是Ant + Antenna。考虑了一下,这种策略对于应付Android的多渠道也是绰绰有余的。

这篇文章分享一下基于Ant + Antenna的Android游戏多渠道发布策略。

Std::tr1::shared_ptr学习笔记

| Comments

C++有一个很头疼的事情,当程序比较复杂的时候,管理指针对象的生命周期,对程序员来说相当麻烦。《小小帝国》上一个版本的开发期间,经常出现由于对象没有被析构而产生的内存泄露,或者由于某个地方错误释放对象而导致的非法内存访问。考虑到以后不能一直这样耗功夫去关注这方面的事情,这个版本的《小小帝国》引入了智能指针。

C++98里面只有一种智能指针,就是std::auto_ptr,但是它具有唯一所有权的特征,其实不好用(比如说你没有办法在容器中使用它)。《effective c++》作者推荐用的std::tr1::shard_ptr就好用很多,它采用RAII技术,通过引用计数的方式来自动管理对象的生存周期,基本上就符合我们的需求了。

而且std::tr1::shared_ptr在最新的c++11中,已经被列入标准指针了,而c++98中的std::auto_ptr已经出局。

下面是使用std::tr1::shared_ptr过程中的一些学习笔记。

Markdown语法学习笔记

| Comments

Markdown的语法还是相当简单的,这篇博客分享一下基本的语法,以后在工作中的一些随手笔记可以用markdown语法来写,然后快速成文博客了。

搭建基于octopress的GitHub博客

| Comments

一直对GitHubmarkdown语法快速成文的写作方式很感兴趣,这种方式入门略有门槛,但是习惯了写作效率会很高。项目稍微闲了下来,抽点空在GitHub上搭个基于octopress的博客空间,以后一些开发上的心得会在这里分享。

这篇博客先记录一下搭建GitHub博客的流程。