我正在开发一个客户端-服务器“社交”,它应该可以在几个移动设备上运行。该项目是相当复杂的,涉及网络,交换媒体,使用地理定位服务,和良好的用户界面。
就开发工作、技术风险和可扩展性而言,从什么平台开始是最好的?考虑到我们的目标是用移动版本尽可能快地“上线”。第二个目标是覆盖大多数用户(但第一个更重要)。
iPhone (iPod iPad)安卓BlackBerry Java ME,塞班
我意识到每个平台都有局限性,并且需要考虑不同的方面(例如,iPhone有比安卓更好的开发人员社区,J2ME在一个糟糕的沙箱中运行,但覆盖了大多数设备)。
请分享你的优点和缺点。我只有J2ME的经验,不幸的是我不能评估其他平台。
发布于 2010-05-18 18:02:49
如果您正在查看您列出的平台上的本机应用程序,那么从最少到最多所需的开发工作是:
开发工作在很大程度上是由语言/库、工具和碎片控制的。因此iPhone胜出(好的语言和库,优秀的工具,很少/没有碎片)。塞班排在最后(C++有有限的库,糟糕的工具,大的碎片)。Android在库和碎片化方面击败了Blackberry,黑莓在碎片化方面击败了Java ME。
与此相对的是市场规模,特别是在您的目标用户群中- Java ME覆盖的设备比任何其他平台都多,而Android的安装基数仍然是5个平台中最小的。
没有一个正确的答案,但如果覆盖范围很重要,那么Java是一个很好的起点,如果上市时间和用户体验是关键,那么iPhone是有意义的。
同样值得关注的是,移植到其他平台有多容易/有多难。周围有各种跨平台库,比如Airplay或J2ME Polish,它们可能会降低成本-前提是你可以在跨平台部分实现你的应用程序。
发布于 2010-05-18 22:05:28
我想为Maemo/Meego(诺基亚/英特尔的移动Linux)说话。虽然它正处于过渡状态,目前Maemo 5只有一款好手机(还有几款廉价的中国手机),但我觉得它很快就会变得很大(我和许多人一样,认为Meego将是诺基亚的高端战略,诺基亚是世界上最大的手机制造商)。此外,N900是目前最酷的手机。
而且它基本上是一个开放的Linux设备(非常类似于标准的桌面Linux)。ide QT Creator很棒,而且是跨平台的(带有嵌入式可视化设计器和不错的文档浏览器),但你不必使用它,有一些对使用你自己的文本编辑器或ide的支持。
没有签名密钥的废话(我为黑莓做了一个学生项目,对密钥非常恼火)。我不喜欢黑莓的其他地方:只有windows的eclipse插件,我们的团队很难弄清楚如何将第三方库添加到黑莓的COD存档中。另外,一些类在很多方面都有点稀疏,特别是String/Char,可能因为它是基于ME的,我也不喜欢文件读/写apis,感觉有点笨拙,可能是因为blackberry应用程序最近才获得了存储文件的能力(在此之前,您只能通过持久层将对象存储/检索到磁盘)。
首选的语言是(目前是Gobject C,但Meego不是这样),Qt风格的C++和python。这些库都很好,特别是qt库有很好的文档记录。因为它是一个很小的linux机器,你可以在设备上进行调试(还有一个模拟器)。
注意,我还没有为Maemo/Meego开发任何东西,但我读了很多关于它的东西,并坠入了爱河。
发布于 2010-05-18 22:32:37
我认为最好的解决方案可能是从智能手机优化的网站开始。原生应用程序可以提供更丰富的界面,但一个设计良好的web应用程序可以接近并可以在任何设备上运行。
看看WPTouch,一个非常好的手机优化网站的例子。
https://stackoverflow.com/questions/2809699
复制相似问题