自从我买了诺基亚N95 8G以来,我一直在考虑研究一些Symbian开发。那些在Symbian OS上有经验的人是否喜欢他们对平台的感觉?是否难以入手,工具是否成熟等?
答案 0 :(得分:13)
我想我可以回答问题的一些主观方面,因为有人在Symbian OS上工作了很多年;)但是我不会,我会尽力坚持我所看到的一些事实和有用的信息。
有问题的手机运行诺基亚Series 60 UI(现称为s60)。 Symbian手机传统上分为OS位(Symbian OS v9.1,9.2等),手机供应商购买或开发自己的UI。特定版本的s60将在特定版本的Symbian OS上运行。
诺基亚论坛是开启手机开发的好地方: http://www.forum.nokia.com/main/resources/technologies/symbian/documentation/getting_started.html
这将涵盖UI的各个部分。我应该补充一点,UI供应商自己会执行大量的操作系统自定义(具有不同程度的自我控制/质量),因此API的差异尤其涉及硬件可能会变得深奥。
Symbian本身确实提供了相当水平的文档质量,而不是微软,但比许多开源产品更好。一个很好的参考是Symbian开发者网络:
关于工具。目前标准的开发环境是基于Eclipse的诺基亚硬质合金平台,我认为可以公平地说,如果你能忍受Eclipse,你会没事的,如果你不能......那么...命令为你排队。
Carbide具有设备上调试功能,包括PC和ARM(GCC-E)目标的编译器。
大多数应用开发都是使用Symbian仿真器完成的,它将成为诺基亚手机SDK的一部分。
当您准备将应用程序放在手机上时,您需要查看Symbian Signed: http://www.newlc.com/new-symbian-signed-processes-are-now-available 很多人都有合理的抱怨说它可能有点令人困惑,但作为一个非商业开发者,我认为“Open Signed”应该是最简单的。
答案 1 :(得分:13)
我们已经在我们的组织中完成了大量的S60编程,加上大量的BREW,以及其他所有内容。
答案 2 :(得分:11)
我在Symbian OS的OS开发方面工作了一年多一点。该系统的一般感觉是它是一个错误的无证件废话。我能说的唯一好处是OS代码本身遵循内部编码标准相对较好。标准的CodeWarrior IDE是垃圾(尽管最近作为替代品出现的Carbide非常不错,但免费版本非常准确,并且至少在不久前还有几个版本)。模拟器几乎无法使用 - 它运行缓慢,与实际设备不同,经常崩溃或悬挂。
如果您想在Symbian上进行开发,请准备好进行大量的试验和错误,因为几乎没有可用的文档,即使是在环境的核心概念上也是如此。作为一个虚构的例子,方法“JiggleThingy()”的基本文档将是“Jiggles the thingy”。当然,在许多情况下,实施也与文档完全不同。
Aquaintance在亚洲经营一家移动软件开发公司已有几年,并为几乎所有平台开发。他告诉我,Symbian是最糟糕的 - 它引起了比任何其他移动平台更令人头疼的问题。
这完全是关于C ++开发的。使用Java开发Symbian提供了如此有限的功能,我没有听说过任何实际上已经完成它的人。
答案 3 :(得分:7)
我建议使用Python for S60作为探索诺基亚S60 / Symbian平台功能的好方法。它易于使用,并附带强大的API设置。还有a book涵盖了很多有趣的例子。关于Python SDK的一个好处是,您可以通过PC上的控制台以交互方式在手机上运行代码。
答案 4 :(得分:7)
Qt for S60即将推出,已经有一个不受支持的预发布版。您可能希望在那里投入时间,因为它可能会成为诺基亚未来的首选用户界面。
答案 5 :(得分:5)
我已经完成了一些Symbian C ++应用程序开发,很难理解,如果(像我一样)你必须在多个开发环境之间切换(Palm,尽管现在不是很多,Windows)移动,桌面Windows,THEOS,Linux,HTML / CSS)。
但是我听说很多地方都提到了“没有文件”的事情,我根本没有发现这是真的。在某些情况下,文档太多了,对于新手而言,那里的内容太复杂了。示例代码是相同的 - 有很多负载,但很难分开代码的哪些部分控制哪个功能。
我知道,一旦你进入它,建立一些非常令人印象深刻的应用程序是非常简单的。在诺基亚论坛上有一个很好的社区(如上所述),我从他们在伦敦智能手机展上展示的一些开发者那里得到了一些灵感。如果你可以节省时间,那么你可以去那里看看,因为你不是太远,它在10月底开始。无论如何都不是一场大规模的表演,但值得一看。
答案 6 :(得分:4)
正如单挑,我们尽量避免主观问题,按照FAQ
我不应该提出什么样的问题 问这里?
避免提出问题 主观,议论或要求 扩展讨论。这是一个地方 对于可以回答的问题!
现在你是新人,所以没关系:)
就你的问题而言,我会说:
答案 7 :(得分:4)
Symbian OS C ++开发的声誉不友好(至少可以说)是不可否认的。另一方面,该平台也非常强大。
如果您只想编写个人程序或小型免费软件/共享软件,则另一个平台可能更适合您。如果您正在努力寻找能够在软件开发方面保持职业生涯的操作系统,那么Symbian,J2ME以及Linux(在较小程度上)是您最好的选择。
Symbian的文档和工具随着每个新版本的发展而不断发展。使用Symbian OS C ++越来越容易(但仍有很长的路要走)。
一个小小的相关广告:Symbian Press最近努力向开发人员介绍Symbian生态系统。
http://www.quickrecipesonsymbianos.com
它可以用作80小时的分步课程。
答案 8 :(得分:2)
Symbian与您可能习惯的有点不同,但它是一个稳定的平台(那里有200多万台设备)并且工具已经成熟。
硬质合金非常好,特别是如果你之前使用过eclipse。
在开始Symbian编程之前,首先要看的是:http://descriptors.blogspot.com/
描述符是Symbians字符串。它们非常有效,但与许多其他字符串实现略有不同。
答案 9 :(得分:2)
查看NS Basic / Symbian OS。它提供了类似Visual Basic的环境。它非常易于使用,可以解决Symbian OS带来的许多问题。应用程序将在S60 3rd Edition和UIQ3设备上运行而无需更改。
答案 10 :(得分:0)
我建议尝试Superwaba,它是一个使用类似Java的语言的PDA的跨平台开发平台,因此很容易让事情开始。
答案 11 :(得分:0)