对于Jolla宣布的新Sailfish OS,移动应用程序(本机和HTML5)的技术堆栈是什么样的?Sailfish OS技术堆栈的一个中心位置几乎没有可用的信息,但Sailfish OS使用的开源产品的项目网站提供了以下信息:
- 基本操作系统:Sailfish OS使用Meego fork Mer作为主要操作系统.Mer以超便携式Linux + HTML5/QML/JS Core为中心.对于Sailfish OS,Mer项目作为核心操作系统,提供一个功能核心Linux堆栈,可以启动到屏幕,但没有任何UI,也没有任何硬件适配
- 用户界面:Sailfish OS使用以前的Meego UI部分 - MeeGo手机用户体验 - 现在称为Nemo Mobile.
- Sailfish SDK:Sailfish SDK基于QtCreator,将在Windows,Linux和OS X中提供.SDK 二进制文件预计将在2012年末或2013年初推出.该SDK包含Mer Core的工具,Qt Creator,Jolla UI组件,Sailfish UI框架和Salfish手机应用程序界面.
- HTML5应用程序:Sailfish开发团队正在研究使用Apache Cordova(以前称为PhoneGap)进行Qt,以支持基于HTML5的移动应用程序的开发.
- Sailfish上的Android应用程序:许多Android应用程序将在Sailfish OS/Jolla设备上运行不变.要利用Sailfish OS的所有UI和其他功能并快速创建应用程序,可能必须将应用程序移植到本机QT/QML.
基于以上信息,似乎有三种方法可以为Sailfish OS构建移动应用程序:
- 使用Mer的核心API,Jolla UI组件,Sailfish UI框架和手机应用程序界面的原生应用程序.
- 重新使用现有的Android应用程序(尽管没有关于此类应用程序支持哪些功能的详细信息).
- 使用Apache Cordova API的HTML5/JavaScript.
这意味着可以使用以下编程和标记语言:
- C++和QT
- 标记语言:QML(本机应用程序)和HTML(Cordova)
- JavaScript,CSS(基于Cordova的应用程序和QT/QML)
有什么遗漏,还是我误解了一些信息?到目前为止,我还没有参与任何QT/QML开发,如果有经验丰富的人可以为我提供一些意见,那将会很有帮助.