1 A Developer’s View of Oracle Mobile Cloud Enterprise

Welcome to Oracle Mobile Cloud Enterprise! OMCe is a cloud-based service that provides a unified hub for developing, deploying, maintaining, monitoring, and analyzing your mobile apps, intelligent bots, and the resources that they rely on. As a developer, you can use this guide to help you incorporate OMCe’s features into your apps.

This guide covers what you need to know to:

  • Add support for authentication, notifications, geo-location, sync, storage, and other features to your apps.

  • Create custom APIs that your apps and bots can use to connect to your enterprise systems.

This guide doesn’t cover development of bots themselves. For that, see Creating Intelligent Bots with Oracle Mobile Cloud, Enterprise.

There is also a separate guide for using OMCe’s Mobile Application Accelerator (MAX) to rapidly develop cross-platform mobile apps. See Building No-Code Applications with Oracle Mobile Cloud, Enterprise.

Client SDKs

As an app developer, the first thing you’ll want to do is get the OMCe client SDK for your mobile platform. The client SDKs help you use OMCe features and custom APIs that you develop through OMCe in your apps.

You can get the SDKs from the Oracle Technology Network’s Oracle Mobile Cloud Enterprise download page.

For specific info on each SDK, see the following topics:

Note:

For information on using the REST APIs directly, see the platform's REST API reference docs.

Features for Your Apps

OMCe comes with a set of platform APIs that you can use in your apps. You can call these APIs directly from your app code (via client SDK or REST call) and/or from the implementation code of custom APIs.

The available platform APIs include the following:

  • Notifications for writing code to send notifications to your mobile apps.

  • My Profile to retrieve the current app user’s profile.

  • Storage to work with collections and objects (such as images and documents) that you associate with your backend.

  • Data Offline and Sync to build applications that cache REST resources for offline use and then synchronize all offline changes with the server when the device goes online again.

  • Location to define location devices and places and query for them from your mobile apps.

  • Database Access and Database Management to access the database associated with your OMCe instance.

  • App Policies to retrieve application configuration properties that you have set in the backend.

Custom APIs

You can create your own custom APIs in OMCe to serve the needs of your apps and bots.

You design the API using one or both of the following tools:

  • Express API Designer: Enables you to quickly create APIs based on CRUD resources.

  • API Designer: Enables you to create or modify an API using the full set of RAML capabilities.

You implement the API with Node.js-based custom code. From your implementation code, you can:

  • Call OMCe platform APIs for features such as notifications, object storage, database access, location, and sync.

  • Access enterprise services (whether cloud-based on premises) via connectors APIs. You can create connector APIs based on connector types for REST, SOAP, Oracle Integration Cloud Service, and Fusion Applications.

Backends

You’ll use backends to group the APIs and other resources that your apps and bots need.

A backend is a logical grouping of custom APIs, storage collections, and other resources that serves as a cloud-based companion to one or more related mobile apps or bots. The backend provides the security context, meaning that the user has to authenticate through the backend to access those services.

At development time, here are some of the things you do with a backend:

  • Add APIs and test their endpoints with mock data.

  • Add object storage collections and enable offline data caching.

  • Specify roles that users must have to access the applications associated with the backend.

  • Set up notifications for your apps using the services provided by the platform vendors (such as Apple Push Notifications Service (APNS) for iOS and Firebase Cloud Messaging (FCM) for Android). If you set up notifications for multiple platforms, you can initiate a single notification and have it delivered to apps on multiple platforms.

Later, at deployment time, the backend serves as a deployment unit with dependency management for all of the artifacts you need to support the set of mobile apps and bots that use it.

Security

For each backend that you create, you set up how to authenticate with that backend. You can choose from these mechanisms:

  • OAuth, where Oracle Identity Cloud Service (IDCS) is the identity provider, and you use credentials generated by the backend.

  • HTTP Basic, where IDCS is the identity provider, and you use credentials generated by the backend.

  • SAML and JWT tokens from third-party identity providers.

  • Browser-based SSO, where IDCS is the identity provider and the app uses OAuth 2.0’s authorization code grant to get an authorization token.

  • Facebook Login.

Further, you can restrict access to resources by defining roles in OMCe and applying them to backends, APIs, and/or storage collections.