Skip to main content

手机开发平台指南、教程和资料介绍(修改稿)

欢迎转载,转载请注明出处。作者:手机即信息 博客:http://canco.javaeye.com

    近来无事,把手机开发平台的学习指南、教程和资料总结一下,方便大家参考。
    手机客户端软件开发最大的困难就是平台不统一,手机开发平台太多。
    手机可分为智能手机开发和feather phone手机。开发平台可分为开放式平台和封闭式平台,开放式平台包括symbian、windows mobile、linux、iPhone、Android、BlackBerry、j2me、brew等,支持手机应用程序通过OTA下载和安装;封闭式平台包括MTK、展讯、TI、飞利浦等。下面分别介绍。
1. Symbian:
Symbian平台为目前智能手机市场的老大,智能手机全球市场占70%以上,在欧洲和亚洲占绝对优势,只是在美国市场份额少得可怜,希望今年nokia在美国发力,赶上其它智能手机。根据UI风格的不同,Symbian分为s60和UIQ两个平台,其中nokia使用s60平台,索爱和moto采用UIQ平台。Symbian平台由于发展时间较长,又是市场老大,目前中文资料也较多,不像几年前刚接触时只有英文资料。以下书籍值得推荐:
《SYMBIAN OS软件开发开发--应用C++开发智能手机应用程序入门》(其中UI部分为UIQ平台),
《Series 60 应用程序开发》(以s60平台为主,重点推荐)
《Symbian OS C++手机应用开发 (第2卷)》
另外今年将出来一本有关uiq3.0的新书,值得期待。
关于symbian的开发网站和论坛:
诺基亚论坛:最好的symbian论坛,
http://discussion.forum.nokia.com/forum/forumdisplay.php?f=6,其中还有中文论坛。
UIQ官方论坛:http://developer.uiq.com/
Symbian公司中文论坛:http://developer.symbian.com/forum/forum.jspa?forumID=37
NewLC网站:http://www.newlc.com/
索爱uiq官方论坛:http://developer.sonyericsson.com/category.jspa?categoryID=3
索爱uiq中文论坛http://developer.sonyericsson.com/forum.jspa?forumID=133

2.windows mobile:
智能手机全球市场中windows mobile占12%左右市场份额。开发与windows平台类似,所以熟悉windows开发的能很快上手。目前没有较好的针对windows mobile的书,经典书籍《Windows 程序设计(第5版)》对于开发win32程序依然是最好的,经典的书就是牛啊!虽然pocket pc支持MFC,但smartphone不支持,所以为了更好的移植,用win32开发较好。由本书做基础,再参考windows mobile的sdk以及示例代码,应该能很快上手。
关于windows mobile的开发网站和论坛:
Windows mobile中文社区:http://www.winbile.net/BBS/
Pocket pc forum:http://www.windowsmobiledn.com/forum/
微软官方网站:http://www.microsoft.com/windowsmobile/developers/default.mspx

3. linux:
智能手机全球市场中linux手机仅占可怜的4.4%市场份额。原来moto还出过不少linux手机,如A768、A1200、E680、E2、E6、V8等,07年8月份还信誓旦旦预测60%手机采用Linux OS,但moto后来回购了UIQ的股份,又与微软合作,还加入了google的开放手机联盟,看来要抛弃自己的linux平台了。另外,moto的策略是linux+j2me的模式,虽然采用linux os,但并不对外开放linux的sdk,只有和moto合作的厂家才能获得native linux sdk,所以导致目前linux手机开发的资料和论坛较少。虽然有民间linux高手破解了moto的linux的sdk,可以开发native linux的程序,但native linux的程序不能直接安装在moto的linux手机上,还必须安装一个插件,这对普通用户又是难以跨越的一个门槛。所以个人觉得native linux手机的开发将走向末路。大部分linux手机的ui开发都是基于QT,关于QT开发,可参考《C++ GUI Qt3编程》、《精通Qt4编程》,如果有moto官方的sdk,参考API文档以及一些示例代码,将可以较快上手,如果没有官方的sdk,那就要话很长时间hack了。目前没有很好的关于linux手机开发的论坛,个人推荐陈罡的博客http://www.cublog.cn/u/26691/,内有moto a1200开发随笔,对于熟悉和了解手机native linux开发有很大帮助。

4. MTK:
MTK最近几年异军突起,近70%的国产手机采用MTK的芯片和平台,黑手机更几乎是MTK的代名词。国内厂家只有夏新没有采用MTK的方案。MTK的模式名为“Turn-key”的全面解决方案,厂商采用了这个方案,只需要加一个手机外壳即可成品——这能大大降低了出货时间,一般厂家只修改界面、铃声以及增加一些应用软件。有关MTK平台的介绍,见环球企业家杂志的文章“国产手机操纵者联发科的秘密”http://www.cnbeta.com/articles/45580.htm
MTK是私有平台,目前没有书籍介绍MTK平台,所以只能从网上查找MTK的资料。以下资料大家可以从网上获得,对于了解MTK很有帮助:《mtk 训练课程.pdf》、《MMI Platform Source Code Training.pdf》主要是MMI界面开发介绍、《MMI Resource & Customization Tool.pdf》MMI资源工具介绍。
最近,MTK平台MMI设计牛人FUGUI自己编写了一本有关mtk平台MMI开发的实例教程,书名为《MMI实例培训教程》(本书大家通过Google下载到),此书深入浅出,全面的介绍了MTK平台MMI开发的各个方面,通过本书,开发人员将能很快进入MTK平台开发领域,实为MTK平台MMI开发的圣经!MTK平台的操作系统为nucleus,有关nucleus的介绍网上有一篇文章《Nucleus实时操作系统分析报告》。MTK平台主要用C语言开发,所以要熟悉MTK开发,首先必须熟悉掌握C语言,MTK的sdk与vc6集成,MMI的各控件和窗口之间通过回调函数实现通讯。
关于MTK的开发网站和论坛:
我爱研发网:http://www.52rd.com/ 上面几篇文章和书籍都能从本网站找到。
手机研发论坛:http://www.1mp.cc/bbs/index.asp


5. 展讯:
展讯平台07年也发展很快,利用MTK下半年PA放大器缺货的机会,趁势而入,抢走mtk很多市场份额。展讯的开发模式和MTK的很类似,基本也是给厂家提供整体解决方案,与MTK的差别见此链接http://www.chinabyte.com/telecom/267/2507267.shtml。国内主要是夏新、联想、文泰等采用展讯平台。展讯平台采用的嵌入式操作系统是threadx,关于threadx的有一本中文书《嵌入式实时操作系统的多线程计算:基于ThreadX和ARM》。同MTK平台一样,为封闭平台,开发语言为C,开发环境为vc6, MMI的各控件和窗口之间与windows类似通过消息进制实现通讯。另外也没有书籍介绍展讯平台,以下资料值得推荐:
《Spreadtrum_SAP.ppt》
《MMK_Kernel软件API接口说明书.doc》
《MMK_Window_Table开发说明书.doc》
《展讯平台MMI窗口开发说明书.pdf》
《展讯手机平台软件简介.pdf》
关于展讯的开发网站和论坛:
我爱研发网:http://www.52rd.com/ 上面几篇文章都能从本网站找到。
手机研发论坛:http://www.1mp.cc/bbs/index.asp

6. J2ME:
J2ME平台为手机上运用最广泛的开放式平台,绝大部分手机均已经支持J2ME了。关于J2ME的书籍数不胜数,个人推荐以下书籍:
《j2me技术手册》
《J2ME开发大全》
《J2ME移动应用程序开发》
关于J2ME的开发网站和论坛:
J2ME开发网:http://www.j2medev.com/Index.html
中国Java手机网:http://www.cnjm.net/
以及各手机厂商的官方java论坛

7. Brew
Brew 的全称是无线二进制运行时环境。Brew平台是高通公司开发的,从无线应用程序开发、设备配置、应用程序分发以及计费和支付的完整端到端解决方案中的无线应用程序开发部分。目前绝大部分CDMA手机都支持Brew平台。学习Brew平台,首先需要熟悉c语言。学习步骤和方法可参考” BREW高手之路-解析BREW学习过程”。
学习书籍:
《深入BREW手机游戏开发》
《BREW 技术开发与应用》
这些书虽然不够深入,但对于入门还是可以参考的。
关于Brew的开发网站和论坛:
Brew官方论坛:http://brewforums.qualcomm.com/index.php

8. iPhone
Windows平台iPhone开发环境搭建方法见笔者的文章《Windows平台上iPhone基于cygwin开发环境的搭建方法》
http://canco.javaeye.com/admin/blogs/199106


开发入门介绍见笔者的文章《iPhone手机开发平台入门介绍和教程》
http://canco.javaeye.com/admin/blogs/199144


9. Blackberry,Android
黑莓公司BlackBerry手机和Google的Android手机均只支持java开发。BlackBerry的开发网站和论坛:
BlackBerry开发者指南:http://www.cnblogs.com/confach/category/36451.htmlBlackBerry官方网站:http://na.blackberry.com/eng/developers/community.jsphttp://bbs.maxpda.com/forum-184-1.html
Android的开发网站和论坛:
http://www.androiddev.net.cn/bbs/
http://www.androidin.com/http://www.androidcn.net/
http://bbs.maxpda.com/forum-190-1.html


10. 其它Feather phone平台
其它feather phone平台,如TI、飞利浦、英飞凌(Infineon)、飞思卡尔(Freescale)、Broadcom、Skyworks等平台,由于平台私有,并且不提供第三方sdk,所以也没有相关资料和文档,希望有了解的朋友介绍一下。

Comments

Popular posts from this blog

从理工科博士到金融界Quantitative Analyst

大家好,5月初UM-CSSA职业发展组邀请今年刚毕业的理论物理博士赵智沉师兄,为密大学子带来关于“从理工科博士到金融界Quantitative Analyst”的分享。现将整理好的现场录音文稿发布,供大家阅读。在此,UM-CSSA职业发展组由衷感谢赵师兄的热心支持与精彩分享,欢迎大家关注UM-CSSA及职业发展组未来的活动! 关于主人公: 他是密大高能理论物理博士,曾荣获三项省级物理数学奥赛一等奖,进入北大元培计划实验班深造 却转战于金融界Quantitative Analyst领域,斩获Credit Suisse工作offer,以及Credit Suisse, Barclays Capital和JPMorgan等3个实习offer 他是密大“甄士隐”戏剧工作坊灵魂人物、思想学术沙龙专家、国标舞&桌游发烧友 也被密大中以理工科背景转行金融行业的同学们称为自己的"祖师爷" 他有一个智慧得深沉的名字:赵智沉 赵智沉:从理工科博士到金融界Quantitative Analyst 背景经历 大家好,我的主要工作是为投行的交易做一些模型,然后用编程的方式把这些模型实现出来,给他们交易员,所以有一点像后勤保障这样的工作。我的经历可能对Ph.D更有用一些,因为我的同行都是Ph.D.,都是博士生毕业。本科生一般没有,硕士生也非常少。所以我一会儿讲下我的经历,你们就知道了。 我先自我介绍一下吧,我叫赵智沉,我现在物理系,第五年刚毕业。我是上海人,本科在北京大学元培计划实验班读的,中学是在上海中学。我属于比较典型的走物理竞赛道路的经历,从初中开始,就参加各种物理竞赛补习班,参加竞赛,然后考中学的理科班,也是搞竞赛的班级。唉,要不大家自我介绍一下先?(听众做自我介绍)看来还是Ph.D.比较多,大部分都是研究生。 这边多少人和我一样搞竞赛的?其实竞赛和高考没有太大区别,就是我们走的是不一样的途径。中学参加理科班,理科班也是参加各种竞赛。通过竞赛得奖,保送大学。在北大也是学的物理。我在北大元培实验班,当时在中国是一个比较新鲜的东西,跟美国本科很像。第一年是不选专业的,进去之后就分文理科,什么都可以修,到第二年才选专业。140分的学分可能只需要40分的专业课,其他100分可以自己修想修的课就可以毕业。所以当时这在中国算是一...

死准死准的12星座的收服大法

射手女 你爱上了一个射手?请做好心理准备,我想你保证射手不是12星座里最难泡的,但是是最最特殊的。 射手关键字---自由 我知道你知道这个。但是我要说的是你未必真的能够做到时时刻刻铭记这一点。射手的自由要求体现在方方面面。你若践踏,必然走向毁灭。这个是你时刻需要谨记的东西。 追求策略 请确保你自己足够有趣,相信我这比你是个美男更来的关键,和其他星座的女生一样,射手也常常把追求美男挂在嘴上,但实际上如果你不够有趣,那么你依然会被排斥掉。这一点,甚至射手自己都不会注意到。 射手会畏惧逐渐靠近的关系,畏惧自己即将陷入爱情的现实。她们通常会开始排斥,这个与射手的年龄关系很大,越是年轻的射手在这点上表现的越明显。她很可能会告诉你我不想恋爱,或者你老跟着我干吗,之类瞬间刺痛你的话。但是,不要害怕,那是因为她的畏惧。其实过了很久,你才会明白她害怕的是自己投入后伤痕累累。 面对这个局面,你可能不知所措。我的建议是你暂且离开,不要走得太远,更不要找备胎之类,那样的策略会直接让你在与射手的追逐战中被淘汰。不要企图用冷落射手来刺激你追求射手的进展,那绝对不适用射手。如果你对射手来说还没有非常致命吸引力,你冷落她,丝毫不会带来影响,射手会忘记你更快。直到你投降。 所以,保持适当的距离很重要,如果她害怕了,暂且离开。不要着急告白,让她更多感受到的是和你的快乐,而非你的逼迫。 不要挖空心思搞浪漫,射手不吃这一套。射手的爱情一定是从朋友开始的,你企图通过一时的浪漫或者感动来打动她,几乎是不会成功的。你还是多在如何和她做朋友上下下功夫吧。 射手比较热情,但是不会一直这样,你越靠近她的心,你越多机会感受冷漠。这种冷漠才是她的内心真实。你必须要适应这种冷漠,那不代表对你冷漠,那只是射手对待这个世界的保护姿态。她们很容易相信别人,所以比起其他星座有更多朋友。如果你的射手还很漂亮,她的异性朋友会更多,当然不乏追求者。不过放心,射手不会轻易答应任何人的追求。你也完全不需要因为这个紧张。不知道是什么地方流传的射手的花心,但是我告诉你那是不对的。下这种结论的人,完全没有理解射手的心。 射手更多的是,对于社交保有兴趣,对于朋友保持热情。或许这给人了错觉。但是,面对爱情,射手是悲观的,她们不太相信现实中的爱情,所以倾向于跟每个人保持理性的距离。所以,她们可能会遇到很多次鲁莽的追逐和表白,但是那些都很难成功。因为这些...

I came here, but is it true?

After a tough time of journey, I finally got here. Use media platforms like facebook, twitter, and youtube, to share ideas and communicate with any people without restriction. Naturally, Internet should be freely accessable, but thus freedom is so frail, especailly when political forces are driven by those with no conscience. Thanks to the positive side of coin of the technology, we are not left without counterplots. SSH, Ipv6, VPN, and Proxy, etc., leaded individuals like me, breaking the cage that suppose to encage my mind and enslave my physical fresh, and leaded individuals like me, showing the middle finger to the regime, who costs billions of taxes to deprive those taxes payers' right. Though the coin might be turned back occasionally, the trendy of collapse of the turner themselves, is reinforced at the same time. Sorrowful?ly enough however, such cages exist no only across the Internet, but not every cages can be breaken with tech. lever. As a result, most of people were le...