开发者中心

开发应用程序

概述

除了QuarkIoE提供的通用功能外,QuarkIoE旨在运行任何垂直的物联网应用程序。租户可在注册应用程序后可以获得:

  • QuarkIoE用户界面扩展功能。
  • 全新的用户界面。
  • 定制QuarkIoE用户界面品牌形象。
  • 新的服务器端业务逻辑。

该章节介绍了QuarkIoE应用程序的基本概念。

应用程序和订阅

应用程序在QuarkIoE中注册为"我的"应用程序或"市场"应用程序。

"我的"应用程序仅适用于特定租户的用户,并由租户管理员进行注册。自有应用程序用在,例如,当你还不想为广大受众提供特定应用程序版本的开发期间。它们还用于企业的专有功能,比如,与内部IT系统进行交互。

"市场"应用程序可被QuarkIoE的所有租户使用。租户订阅市场应用程序,可使租户使用可用的应用程序。要证明一个应用程序是市场应用程序,请联系我们。

应用程序通过称为应用程序秘钥被识别,它被包含在应用程序发出的请求中。应用程序秘钥使QuarkIoE可以将一个请求与一个特定应用程序进行结合,并将该请求与来自设备的其他请求进行区分。

一个应用程序可以是各种组合:

  • 一个完整的、独立的用户界面应用程序,无论是基于QuarkIoE的UI框架(见下文),或是你选择的任何其他Web组件。
  • 一组用户界面插件。
  • QuarkIoE事件语言的一组语句。

用户界面应用程序出现在QuarkIoE右上角的应用程序切换器窗口小部件中,以便用户可以在订阅的应用程序之间导航。它可以被托在一个外部网站上,在这种情况下,应用程序切换器只是将用户定向到该网站。同时,它们可以由QuarkIoE进行托管,此时,应用程序将通过URL.cumulocity.com/apps/来提供。

应用升序切换器

QuarkIoE的应用程序

QuarkIoE的用户界面本身就是由基于AngularJS和Bootstrap架构搭建的,都是目前最流行的HTML5页面应用程序架构。它是以模块化方式设计的一组插件,即使最终用户也可以动态地的启用或禁用。用户可以根据自己对于功能的特殊需要,创建自己的QuarkIoE用户界面配置。因此,管理应用程序包括一个插件编辑器,同时该编辑器本身也是一个插件。

插件编辑器

模块

如果你的应用程序需要新的服务器端处理功能,你可以向其中添加QuarkIoE事件语言 模块。这是在你应用程序中特定位置(META-INF/application-module.cel)里的一个简单文件。

                           
       module paypalhere;
       @Name('store_purchase_details1_on_purchase_operation')
       insert into PurchaseDetailsTmp1
       select
         findManagedObjectById(purchaseEvent.operation.deviceId.value) as vendingMachine,
         getString(purchaseEvent.operation, "c8y_Purchase.tabId") as tabId,
         getNumber(purchaseEvent.operation, "c8y_Purchase.amount") as amount,
         purchaseEvent.operation.id as purchaseOperationId,
         purchaseEvent.operation.deviceId as deviceId
      from
      ...
                          
                        

请注意,应用程序中的模块部署不支持本地化zip应用程序,因此URL资源必须指向可以从中下载文件的一些外部资源。该文件必须被命名为application-module.cel,并且置于META-INF目录下。

托管

要通过QuarkIoE托管你的HTML5和JavaScript页面应用程序,请访问QuarkIoE管理应用程序中的"自有应用程序",并点击"添加新应用"。

我的应用程序列表

有两种类型的应用程序可以被配置:

  • "托管"类型:该类型应用程序从存储库中提供到用户定义的路径,例如Bitbucket或Github,并在应用程序切换器中可见。
  • "外部"类型:该类应用程序完全是外部的,并只显示在应用程序切换器中。

假设你正在开发使用Bitbucket作为代码库的页面应用程序。在这种情况下,可以通过以下方法公开QuarkIoE应用程序:

  • 输入应用程序的名称。这会显示在屏幕左上方的应用程序切换器中。
  • 或者,输入一个应用程序秘钥。这可以区分你的应用程序和其他应用程序,以便你希望将你的应用程序发布到其他公司。
  • 选择为"托管"类型。
  • 选择可以使你的应用程序被用户使用的URL。
  • 输入URL到你的存储库。在使用Bitbucket的情况下,URL具有下面展示的架构。
  • 如果你的存储库是私有的,则输入可以访问存储库的Bitbucket用户的用户名和密码。目前,基本认证是唯一支持的认证方式(即,直接使用Bitbucket的用户名和密码,而不提供任何OpenID)。
  • 保存应用程序。
                            
   https://bitbucket.org///raw//[path inside repository]
                            
                        

现在,应用程序会显示在应用程序切换器中。你还可以点击自有应用程序列表中的链接,以验证配置是否成功。

配置一个新的应用程序

上述过程可以帮助你更快的向你的最终用户发布M2M应用程序。如果你对你的应用程序感到满意,你只需要发布受控版本的代码,其他部署问题都会被自动处理。

概述

QuarkIoE旨在适应任意垂直IoT应用程序及其通用功能。 应用程序在QuarkIoE中注册为"我的"应用程序或"市场"应用程序。 应用程序可以是完整的独立用户界面应用程序或一组用户界面插件或QuarkIoE事件语言中的一组语句的组合。 用户可以向其他用户发布软件。