Jolla的Sailfish OS上的移动应用程序开发技术堆栈是什么样的?

raj*_*ter 8 mobile meego cordova mer sailfish-os

对于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开发,如果有经验丰富的人可以为我提供一些意见,那将会很有帮助.

小智 6

(1)我认为你已经承诺:重新使用现有的MeeGo和Tizen(特别是MeeGo Harmattan形式的诺基亚N9)应用程序(尽管它们将在使用MeeGo标准正确编写时运行,直到不会做与Sailfish OS UI或与Sailfish OS UI显着不兼容的事情Mer)使用的MeeGo API标准.

MeeGo和Android应用程序可能需要稍微调整以获得Sailfish UI需求和全速.当它们用Qt编写时,它会相对容易一些.

我将Tizen视为一个MeeGo分支,具有向后兼容性,遵循MeeGo标准,因此,在上面"但是",我在上述方面将MeeGo和Tizen应用程序结合在一起.

(2)您还省略了Sailfish OS作为完整的Linux可以运行带有Sailfish使用的RPM软件包的Linux软件.它与MeeGo Harmattan合作(但仅使用DEB),因此这是Sailfish OS可能使用的选项,例如.LibreOffice或OppenOffice,与MeeGo Harmattan OpenOffice一样,在功能上与诺基亚N9设备的限制有关,但是可以编写和编辑文本.这样可以访问大型软件库,但是设备尺寸可能会限制它在实践中的使用.

这也是Sailfish设备中开发模式可用性的问题,现在无法验证.

(3)SDK在雪泥展示期间表示将使用Mer工具但是开放且有弹性,这意味着组织/团体/用户只能用例如改变它.添加他们所需的特定工具,这些工具能够创建与特定开发人员(如公司工具等)的上下文或特定需求相关的环境.这将使开发/编码更容易,更快速和更便宜.我认为这对开发者和编码员来说很重要.