
OpenText AppWorks Application Platform 16 Technical White Paper The Information Company™ OpenText AppWorks Application Platform 16 Contents 1 Introduction ..................................................................................................... 3 2 AppWorks Hybrid Applications ..................................................................... 5 2.1 Anatomy of an AppWorks Hybrid Application ........................................... 5 2.2 appworks.js ............................................................................................... 7 2.3 Application Packaging ............................................................................. 10 2.4 Single Use and Multiple Use Containers ................................................. 12 2.5 Hybrid Application Updates ..................................................................... 13 2.6 Container Technology ............................................................................. 14 2.6.1 Mobile Container Technology ....................................................... 14 2.6.2 Desktop Container Technology ..................................................... 15 3 The AppWorks Gateway ............................................................................... 16 3.1 Managing Applications ............................................................................ 16 3.1.1 Application Lifecycle ..................................................................... 16 3.1.2 Application Runtimes and Audiences ........................................... 16 3.2 Authentication and Access Control ......................................................... 18 3.3 API Proxy ................................................................................................ 18 3.3.1 Proxy Rules ................................................................................... 18 3.4 Notifications ............................................................................................. 21 3.5 Application and Device Policy ................................................................. 22 3.6 AppWorks Gateway Services and SDK .................................................. 23 3.7 Clustering ................................................................................................ 24 4 Appendix ........................................................................................................ 25 4.1 appworks.js in Detail ............................................................................... 25 About OpenText .................................................................................................... 33 The Information Company™ 2 OpenText AppWorks Application Platform 16 1 Introduction OpenText AppWorks Application Platform is an Enterprise Application development, deployment and management platform. It allows you to build cross- platform applications for the enterprise using standard web technologies, accessing OpenText and other third-party applications and services via RESTful APIs in a common manner. Central to the AppWorks Application architecture is the concept of the hybrid application. Hybrid applications are developed using HTML, CSS and JavaScript, and then wrapped in a native application (or container). AppWorks Application Platform provides native containers for: • Apple iOS • Google Android • Microsoft Windows Desktop • Apple macOS Desktop The AppWorks native containers provide access to on-device and operating system-level functions through a provided JavaScript bridge. This allows for AppWorks applications to be developed exclusively in prevalent web technologies, yet still have access to native functionality such as the device camera, contacts list, GPS coordinates, etc. AppWorks Application Developers need no platform-specific skills in order to produce first-rate mobile and desktop applications. Application deployment and lifecycle are controlled by a central component known as the AppWorks Gateway, which performs duties such as hybrid application rollout and upgrade, push notification services, lightweight Mobile Device Management, and more. The AppWorks Gateway also performs functions related to back-end access and management of front-end communications. It also serves as host for middleware that may be required for specific functionality – for example it may host a custom- developed meta-API that is brokering between the front-end clients and one or more back-end services. This white paper is based on AppWorks Gateway 16.2.1 and associated components. Figure 1 presents an architectural overview of the AppWorks Application Platform. Hybrid applications are represented at the bottom, with the AppWorks Gateway shown in the middle of the diagram – illustrating its role in providing applications with access to OpenText and Third-Party products and services, which are represented at the top. It can also be seen that the Gateway provides a unified RESTful API model to the applications and services accessing it. The Information Company™ 3 OpenText AppWorks Application Platform 16 Figure 1 - AppWorks Application Platform overview The Information Company™ 4 OpenText AppWorks Application Platform 16 2 AppWorks Hybrid Applications Hybrid Applications are developed using HTML, CSS and JavaScript, and then wrapped in a native application (or container). Since AppWorks containers are targeted towards modern mobile and desktop environments, that enables the hybrid application developer to choose from many modern web application tools and toolkits when developing an AppWorks solution – among them AngularJS, React, BackboneJS, JQuery and many more. 2.1 Anatomy of an AppWorks Hybrid Application The AppWorks container plays host to the hybrid application, see Figure 2. Figure 2 - Anatomy of an AppWorks hybrid application The container provides services to the HTML application and its lifecycle: • A web view (browser window) in which to render HTML / CSS • A JavaScript engine The Information Company™ 5 OpenText AppWorks Application Platform 16 • A JavaScript library – appworks.js – which acts as a bridge between the hybrid application and operating system and on-device capabilities • appworks.js also provides authentication and notification services via the AppWorks Gateway • The hybrid application is also able to interact with the AppWorks container at run time, for example to dynamically populate and adjust the application’s main menu Figures 3 and 4 shows how a typical hybrid application is presented on a mobile device and desktop application respectively. Figure 3 – Layout of an AppWorks mobile application The Information Company™ 6 OpenText AppWorks Application Platform 16 Figure 4 - Layout of an AppWorks desktop application 2.2 appworks.js appworks.js is a JavaScript library through which the hybrid application can authenticate with the AppWorks Gateway, and also through which it may access native capabilities of the host operating system. The appworks.js library presents a consistent JavaScript API across all platforms, allowing for a single standard web application to be written, yet one which is deployable within any of the provided containers. The appworks.js library exposes a number of different functionalities which are summarized in Table 1. See the appendix for a more detailed list. The Information Company™ 7 OpenText AppWorks Application Platform 16 Table 1 - Summary of appworks.js functionality Accelerometer þ Mobile ý Desktop Provides access to the on-device accelerometer. Caller may request current acceleration, or request to watch indefinitely or until caller cancels AppManager þ Mobile ý Desktop Provides a method whereby the currently active app may close itself Auth þ Mobile þ Desktop Provides authentication services Cache þ Mobile þ Desktop Provides a general-purpose caching mechanism Calendar þ Mobile ý Desktop Provides a means through which applications may interface with the on-device calendar app Camera þ Mobile ý Desktop Allows application to acquire a picture from the camera, or from the on-device photo gallery Compass þ Mobile ý Desktop Allows an application to query the current heading of the device, or request to watch the heading Component þ Mobile ý Desktop Allows an application to open a component Contacts þ Mobile ý Desktop Provides access to the on-device contacts list. The application may search contacts, create a contact, or prompt the user to pick a contact Device þ Mobile þ Desktop Gives low-level access to Apache Cordova supplied functionality FileSystem ý Mobile þ Desktop Provides file and filestore access methods to the application. Not available in mobile applications as access to the on-device filestore is restricted by the operating system. See Finder The Information Company™ 8 OpenText AppWorks Application Platform 16 FileTransfer þ Mobile þ Desktop Provides upload and download services to the application Finder þ Mobile ý Desktop Limited access to filestore. Allows to open files, list and share Globalization þ Mobile ý Desktop Access to the on-device preferred language HeaderBar þ Mobile ý Desktop Allows the application to control certain aspects of the AppWorks Container header bar Keyboard þ Mobile ý Desktop Functions relating to the behavior, hiding or showing of the on-device keyboard Launcher þ Mobile ý Desktop Used to obtain the URL the client was opened with Location þ Mobile ý Desktop Provides access to the on-device location services Media þ Mobile ý Desktop Allows applications to play, pause and stop playing of audio and video. Permits recording too MediaCapture
Details
-
File Typepdf
-
Upload Time-
-
Content LanguagesEnglish
-
Upload UserAnonymous/Not logged-in
-
File Pages33 Page
-
File Size-