MobileFirst client-side API

This collection of topics contains a description of the application programming interface (API) for use in writing client applications with IBM MobileFirst™ Platform Foundation.

You can use MobileFirst client-side API capabilities to improve application development, and MobileFirst server-side API to improve client/server integration and communication between mobile applications and back-end systems.

With the MobileFirst client-side API, your mobile application has access to various MobileFirst features during run time, by using libraries that are bundled into the application. The libraries integrate your mobile application with MobileFirst Server by using predefined communication interfaces. The libraries also provide unified access to native device functionality, which simplifies application development.

MobileFirst client-side API includes native, hybrid, mixed hybrid, and web-based APIs. These APIs provide support for all mobile development approaches with enhanced security and integration features. MobileFirst client-side API components deliver a uniform bridge between web technologies (HTML5, CSS3, JavaScript) and the native functions that are available on different mobile platforms.

For hybrid and mixed hybrid applications, the Apache Cordova plug-ins that are included add native capabilities and cross-platform user interface controls.

The MobileFirst client-side API provide access to MobileFirst functions across multiple device platforms and development approaches. Applications that are built by using web technologies can access MobileFirst Server through the APIs by using JavaScript, and application using native components can access the APIs directly by using Java™ and Objective-C. Mobile applications developed with the hybrid and native development approaches, including the applications that run on Android, iOS, or Java ME, benefit from simplified application security and integration features of IBM MobileFirst Platform Foundation.

MobileFirst client-side API components also provide the following features, which improve application development.

Cross-platform compatibility layer

This cross-platform compatibility layer supports development for all supported platforms. If you develop hybrid mobile applications, you can access common control elements such as tab bars and clipboards, and native device capabilities such as the location service or camera. You can extend these functions for Android and iOS by using a custom shell.

Client to server integration

Client to server integration ensures transparent communication between a mobile application that is built with MobileFirst technology, and MobileFirst Server. MobileFirst mobile applications always use an SSL-enabled connection to the server, including for authentication. With such an integration, you can manage your applications and implement security features such as remotely disabling the ability to connect to MobileFirst Server, or updating the web resources of an application.

Encrypted data store

This encrypted data store is located on the device and can access private data by using an API. This helps prevent malicious users to access private data, because all they can obtain is highly encrypted data. The encryption uses ISO/IEC 18033-3 security standards, such as AES256 or PCKS#5, that complies with the United States National Security Agency regulations for transmitting confidential or secret information. The key that is used to encrypt the information is unique to the current user of the application and the device. MobileFirst Server issues a special key when a new encrypted data store is created.

JSONStore

A JSONStore store is included in IBM MobileFirst Platform Foundation to synchronize mobile application data with related data on the back-end. JSONStore provides an offline-capable, key-value database that can be synchronized. JSONStore implements the application local read, write, update, and delete operations and use the MobileFirst adapter technology to synchronize the related back-end data.

Runtime skinning

Runtime skinning is a feature that helps you incorporate an adaptive design that you can adapt to each mobile device. The MobileFirst runtime skin is a user-interface variant that you can apply during application run time, which is based on device properties such as operating system, screen resolution, and form factor. This type of user-interface abstraction helps you develop applications for multiple mobile device models at the same time.

Location services API

IBM MobileFirst Platform Foundation provides a number of functions for location services. Location services enable you to use Geo and WiFi positions to perform various actions.