Symbian OS S60平台

Kev*_*oyd 3 mobile symbian s60

这里我读到S60目前是世界领先的智能手机平台之一.
但是我无法理解:

  • S60的作用是什么,当已经存在底层Symbian操作系统时,对平台的需求是什么?
  • 如果我用Symbian C++或Java ME编写应用程序是针对Symbian OS还是S60平台?
  • 我可以直接为绕过S60层的Symbian OS编写应用程序吗?

laa*_*lto 10

S60本质上是一个UI框架和Symbian OS之上的中间件组件集合.从历史上看,Symbian提供了基本操作系统(例如内核,通信,多媒体服务,核心应用程序引擎,参考UI),设备制造商在其上添加了自己的代码,以区别于竞争并针对特定目的优化其设备.

S60是这些插件中的一种,最初是为用于单手使用键盘的手机开发的.在Symbian OS上还有其他UI框架,例如诺基亚的Series 80Series 90,UIQMOAP(S).

现在,当Symbian转向Symbian Foundation运营模式时,S60和Symbian OS基本上合并为一个Symbian Foundation平台.其他UI框架已经停止.但目前市场上的设备仍然区别于Symbian OS和S60.

  • 如果我用Symbian C++或Java ME编写应用程序是针对Symbian OS还是S60平台?
  • 我可以直接为绕过S60层的Symbian OS编写应用程序吗?

取决于您使用的API.

使用Java ME,编写不依赖于S60特定附加组件的应用程序会更容易.在C++中,您可能需要为应用程序设置一些UI,因此必须使用S60 Avkon UI.但是,如果您想为C++应用程序提供更多与平台无关的UI,请查看Qt for S60.

无论如何,编写C++应用程序以便在所有基于Symbian OS的设备上运行相同的二进制文件几乎是不可能的.在Java中,"一次编写一次运行"在理论上起作用,但在实践中它更像是"一次编写一次测试并试图解决设备之间的差异".

  • @Kevin Boyd:Symbian OS 9.1和9.1之前的二进制兼容性中断; 不同的UI框架等.如果你的目标是Symbian OS设备的一个子集,如S60 3rd Edition设备,那么二进制兼容性是可以实现的. (2认同)