前言
---------------------
最近正在策划个LBS的项目,于是入手了部HTC G8, 水货1700. 也不知道是否心理作用,突然发现博客园首页满是Android的天下。刚开始还是挺开心的,感觉自己找到队伍了,可是研究Android和IPhone久了,渐渐发现Android存在很多的问题。
Android与IPhone哪个赚钱?
----------------------
IPhone的一夜暴富故事已经遍布大街小巷,光光一个愤怒的小鸟已经赚了1000w了,但是Android呢?同样的游戏仅仅收了100w的广告费,而且听说水分还很大。我和同事就专门研究了这个问题,得出一下结论:
1. IPhone是个金矿,适合开发手机应用类、游戏类软件。针对细分市场。例如游戏、某领域的图像处理软件等等。因为老乔为我们铺了一条很漂亮的致富道路,并且设立了一定的门槛。
所以IPhone的软件都是上档次的,开发团队都是上档次的,玩家也是上档次的。用户付了款,理应该收到合理的服务。 双方都存在着责任义务,这个市场也必然能够发展下去。
因此,如果哪位希望开发个东西出来卖钱,或者接外包项目支付,必选IPhone.
2. Android处于并长期处于xxxx的初级阶段。Android的定位就是开源免费,入门门槛很低,基本上的懂java就懂android了;而且没有一套严格的审批发布制度,某个阿猫阿狗心血来潮放个半成品也可以说是百年大作。
我就去了android的应用市场,上面50%以上的应用都属于“垃圾应用” 。各位用过的朋友一定有同感,随便借个图写个字就是一个游戏,简直惨不忍睹。
因此,选择了Android,就选择了平台开发,如果是做SNS平台、LBS平台,以免费为切入点,再提供增值服务的,Android是不二选。
顺便补充一下,要开发IPhone就要装苹果系统的虚拟机,再下载个2g的api开发包,听说发布到软件市场还要认证云云;因此自认为不是精品的,可以考虑一下如何退而求其次了。
Android的编程
--------------------------------
本人花了几天时间研究了下android的api,有些地方写的不错,比如用了MVC的思想(个人感觉有点PureMVC的味道),前端xml描述,使用统一的xml注册界面控件,后端通过getxxx获取控件;不同界面之间通过消息机制传递(Intent);初看下去貌似不错。
但是!!老子要说的是,Android的API有很大部分被Overarchitecture了(架构过度)。提供了一个轻量级的架构足够了,但是google貌似不满足,于是使用了各种的继承关系,一大堆的XXXView, XXXActivity出现了,连一个数据库调用都会用到基类的方法,例如:
startManagingCursor(c);
String[] from = new String[] { NotesDbAdapter.KEY_TITLE };
int[] to = new int[] { R.id.text1 };
SimpleCursorAdapter notes =
new SimpleCursorAdapter(this, R.layout.notes_row, c, from, to);