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

时间:2012-11-28 00:10:06

标签: mobile cordova meego mer sailfish-os

Jolla宣布的新Sailfish操作系统的移动应用程序技术堆栈(本机和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 Handset UX - 现在称为Nemo Mobile
  • Sailfish SDK:Sailfish SDK基于QtCreator,可在Windows,Linux和OS X中使用。SDK binaries预计将于2012年底或2013年初上市。该SDK包含Mer Core的工具,Qt Creator,Jolla UI组件,Sailfish UI框架和Salfish手机应用程序界面。
  • HTML5应用:Sailfish开发团队正在调查使用Apache Cordova(以前的PhoneGap)for Qt来开发基于HTML5的移动应用。
  • Sailfish上的Android应用程序:许多Android应用程序将在Sailfish OS / Jolla设备上运行不变。要利用Sailfish操作系统的所有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开发,如果有经验丰富的人可以为我提供一些意见,那将会很有帮助。

1 个答案:

答案 0 :(得分:6)

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

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工具,但是开放且有弹性,这意味着组织/团体/用户只能用例如改变它。添加他们所需的特定工具,这些工具能够创建与特定开发人员(如公司工具等)的上下文或特定需求相关的环境。这将使开发/编码更容易,更快速和更便宜。我认为这对开发者和编码员来说很重要。