App developers take note! As you may know, using the IBM® Bluemix® Mobile Dashboard you can associate cloud native services (like security, push notifications, and analytics) with your mobile app, and then generate a downloadable package which contains client code along with microservice SDKs. As a developer, this alone can save you a ton of time. But now, you can reduce development time further and radically simplify your mobile app code. All by adding custom backend apps to your Bluemix mobile project, and then automatically generating SDKs for them.
The Problem: Managing and Connecting to the Backend
While mobile apps have become ubiquitous, mobile app users have come to expect sophisticated, high-performing experiences. And they expect them to be integrated across both mobile and web channels. To meet these expectations, you will need to leverage multiple cloud services with custom logic in the app’s backend to tailor a winning experience within each channel. Creating a Backend for Frontend (BFF) architecture helps manage this complexity, but as a mobile developer, you are still in a precarious position: The BFF presents yet another component to manage on the backend; and on the frontend, you often must code REST API calls which make the code cumbersome to write, a challenge to read, and difficult to maintain.
The Solution: Mobile Projects on Bluemix and Auto-generated SDKs
Mobile projects help with the management problem by associating the frontend and backend components of your app into a manageable unit. In particular, mobile projects on Bluemix let you add backend microservices and custom Cloud Foundry apps (like BFFs) to the project. But that’s not all. Once a Cloud Foundry app is added, you can auto-generate SDKs for it. SDKs address the “cumbersome code” problem by hiding the complexity of REST API calls and boiling them down to a set of functions that are easy to code in mobile app programming languages such as Swift (iOS) and Java (Android). SDK generation will work with any Cloud Foundry app (in other words, any app running on Bluemix) whose documentation adheres to the Open API specification (e.g. Swagger).
The first way to generate your SDK is directly from the Bluemix Mobile Dashboard. In the Code section you will find buttons to download the complete client package (starter code + SDKs) or just the SDKs. Once downloaded, open a terminal, change to the project directory, run pod install, the open your apps workspace file. Alternately, you can use the IBM Bluemix CLI SDK plug-in to quickly transform the API documentation that comes with your backend apps and services into working native SDKs for iOS and Android. With the CLI you can do things like:
· Integrate the CLI into a devops pipeline and ensure that the SDK is always consistent with the API definition each time the app is built.
· Keep your SDK in sync when the REST API changes by re-generating a new SDK and replacing the old one.
· Validate the API documentation for your Cloud Foundry against the Open API spec.
See the Bluemix CLI documentation for details.
We need your input!
You can shape the future of Bluemix. Try the IBM Bluemix Mobile Dashboard and Bluemix CLI SDK plug-in today and share your comments and wish list items via the in-console Feedback button, or in our developerWorks forum for Bluemix.
Going to be in New York on November 30th? Need an excuse to go to New York? Twilio is hosting a single day event in the Big Apple aimed right at developers who are interested in building customer engagement solutions.
The IBM Cloud continues to grow, providing more and more functionality through our offerings in the catalog. As we grow, we’re excited to bring you new functionality to help better navigate your workloads on our cloud. Here are just a small subset of the things we have done with the console to make working with the IBM Cloud easier.