Mobile Application Development Platform for Developers – Native Apps
Building Native Apps with SAP Mobile Platform – Enablement Resources
|Overview||Admin & Architect||Developer||Integration||Events|
iOS | Win | Android
Developing Native Mobile Apps with SMP
The SDK of the SAP Mobile Platform provides you with tools that streamline the development. One of the most common types are Native Apps: mobile apps developed specifically for one device operating system.
Native apps typically perform better than other application types and provide full access to a device’s hardware.
They are often used for consumer facing apps – when branding and customer satisfaction are of highest priority. As a draw back, native apps have to be re-written for different device technologies, therefore can come at a higher cost.
Our harmonized OData SDK provides an open and flexible framework for native OData application development for both online and offline applications for the most popular devices OS’s: Android, iOS and Windows.
The name “Harmonized” comes from the concept that you can use very similar APIs across different platforms for native and cross-platfom apps, which run on either on-premise version or HANA Cloud Platform Mobile Services. We have different programming languages but ideally we want to use the very similar APIs – hence “harmonized”!
Native Apps by Operating System
As always, the Documentation (SMP 3.0 SDK SP12 for iOS) is a great start to get going.
Next, Ken Unnai wrote an excellent blog series on how to develop native iOS apps with the SMP SDK, including both online and offline scenarios. Read his Introduction and then dive deep:
Online APIs for iOS Apps
Offline APIs for iOS Apps
Stan Stadelman has authored a number of technical blogs, one focusing on iOS:
1. In Introduction to HttpConversationManager, and SAML2 Auth in Mobile SDK, Stan describes how this provides a flexible framework for enterprise authentication in your apps.
2. OfflineStore differences from OnlineStore ‘Technical Cache’
With SMP 3.0 SDK SP5, we have introduced the SDK for Windows apps. Check out the detailed SDK SP5 blog by Product Manager Kiran Karunakaran. You would also find Documentation (SMP 3.0 SDK SP12 for Windows) very useful to read.
Also, check out the blog series by Milton Chandradas from the Technology RIG team.
Introduction to Developing Windows Apps with SMP
Alongside iOS and Windows, the SAP Mobile Platform supports development of native Android Apps with its SDK.
In December 2014, Google launched Android Studio, Google’s official Integrated Development Environment (IDE) based on IntelliJ and it discontinued the Android Developer Tools (ADT) plugin for Eclipse, which means it’s time to leave eclipse behind. Check this blog if you are interested in Migrating Eclipse Based Projects to Android Studio
On-boarding Users onto the SAP Mobile Platform
Before any communication with the SAP backend systems can take place, a mobile app needs to on-board users onto SMP.
You can check the next post for a detailed description of the methods available to registrate in the SMP:
SAP Mobile Platform registration methods available for Android Programming
We support two ways of doing so, and Claudia describes them in her How-To Guides:
These How-To Guides by Claudia show the step-by-step procedure on how to code an Android app to consume OData services. The guides use the Flight sample service available in all SAP Gateway installation.
Push Notifications: The SAP Mobile Platform provides native push notification support for major enterprise mobile platforms. This guide discusses enabling push notifications using SAP Mobile Platform, focusing on the specifics of the Android device platform and the Google Cloud Messaging (GCM) service. This guide uses new AppSettings API available to download and upload application setting from and to the Mobile platform.
Using the SAP Mobile Platform gives you a number of features, one being ‘supportability’. Claudia has authored two How-To Guides on this topic. Make sure to also check the webinar recording by John Polus, where he explains how Solution Manager can be used for system monitoring.
Webinar: On-boarding & Developing Online and Offline Apps
Check the webinar recording below to get started with the SMP 3.0 SDK SP05+ for Android
As time allows, we will convert eclipse-based projects into Android Studio based project. The following guides represent those ones that have been already replaced.
|Brought to you by the SAP Technology RIG and the SAP Mobile Platform SDK Development Team|
Short video in which Milton Chandradas provides an introduction to building Windows apps with the SMP SDK.
The recording this week's webinar will follow shortly!
Recording of Milton Chandradas's webinar on Developing Native Apps for Windows with the SMP SDK.
Link to the pdf that Milton Chandradas presented in his webinar 'Developing Native Apps for Windows with the SMP SDK
Link to Claudia Pacheco's How to Guide about On-boarding Users to native Android apps, using the Logon Component
Recording of Kenichi Unnai's webinar on Developing Native Apps for iOS with the SMP SDK: Online and Offline.
added: link to the presentation that Kenichi Unnai used for his webinar on offline and online iOS apps.
added: link to Stan Stadelman's blog Introduction to HttpConversationManager, and SAML2 Auth in Mobile SDK!
Link to Claudia Pacheco's blog "MAF Logon Component and SMP 3.0 OData SP05 For Android
Link to recording of Claudia Pacheco's webinar "Native Android Apps: Onboarding and Developing online & offline apps", as well as a blog on onboarding users with the iOS SDK (onboarding with MAF was published already)
The PDF for Claudia Pacheco's webinar is now available as well
6min summary of Claudia's Android webinar.
For iOS, Blog 13: How-To-Guide
Added: a lot of goodness by Claudia Pacheco in the form of new How-To Guides for Android apps (you find links in the Android section of this document).
Will the sample applications from Github (e.g SAP/sap_mobile_native_android · GitHub) run against HCP Mobile Services without modification? Providing the application configuration and services match etc.
yes, providing everything matches with config/security they should work. To be honest, we haven't tested it yet but in theory it should work fine.
This documents and sample code is Using MAF UI libraries(LogonUIFacade). But i want to consume API's using MAF Core libraries(Without using LogonUIFacade). I am searching for last 2 days. I couldn't found any solution for the same.
Please provide me any documentation or sample code to consume API's Using MAF Core libraries.
Which platform are you referring to?
I am referring to Android platform.
Have you looked at this guide How To... On-board users with SMP 3.0 OData SDK (Android)?
It does not use the LogonUIFacade, instead it uses MAF core libraries: LogonCore and LogonCoreContext to onboard users.
Performance Tuning with Offline Store (Relevant for all the platform)
Hi Kenichi Unnai
Thanks for the blogs, and I have implemented the On-boarding application and successfully registered the device in COCKPIT, In the next series of levels you are using RMTSAMPLEFLIGHT service as back end, But I don't have the SAP NetWeaver Gateway, So is there any possibility to access the external service here to access the flight sample application.
Thanks in advance 🙂 ,
you can use the sample gateway services:
SAP Netweaver Gateway Demo System The Flight Service is available there. That said, they don't support create, update or delete...only reading data.
That said, those are on the internet, so you might need to configure a proxy if your SMP server is inside your corporate network. Also, these sample GW services are over https, this will require you to get the certificate and import it into the Java Key Store of your SMP server.
Hope this helps.
Thanks a lot for sharing this.
Added: "How do we build the best OData services for offline scenario?" Series
Hi there I wanted to ask about he user experience with mobile application development with SMP.
I have encountered a problem when using MAF to do Onboarding service.
The Andriod app cannot start up. I raise a fatal error:Cannot find class "com.sap.maf.tools.logon.logonui.BackendPassChangeDialog".
I use the SMP3.0 SP05, and the maflogonui version is 1.205.1.
Someone one could help me?
Except that when I using Native OData SDK, I cannot register successfully.
I have register to hcpms successfully by using REST Client.
The error is indicating you are not including all the required libraries and resources. could you please double check the guide How To... Setup MAF resources in Android Studio
I have followed this guide.(How To... Enable User On-boarding using MAF Logon (Android))https://scn.sap.com/docs/DOC-59006
It is using eclipse,maybe different from android studio. I would try android studio.
Thanks for your reply.
Eclipse and Android Studio are completely different, android developers you should be moving to Android Studio sooner rather than later. Having said that, the guide you mentioned should work as well.
I would suggest creating a discussion on SCN in the "SMP developer center" space. Attach screenshots of your project libraries and resources, so the community (including me) can help you resolve the problem with your dependencies.
I have the performance issues in SMP-Native Android App, kindly provide your valuable inputs on the same. Please find the thread details for your kind considerations:
How to handle performance in SMP3.0 - Delayed time in OData response
Added: OfflineStore differences from OnlineStore 'Technical Cache' by Stan Stadelman
please some one tell me ,is that work on windows mobile 6.1 ?
my client use SAP ERP 6.0 / NW7.01
I want develop windows mobile App with C# and read and Write directly to SAP..
The Windows SDK does not support Windows Mobile 6.1.
You could however try using .NET to make direct HTTP calls, since everything is based on OData standards. Please note that you cannot use this approach for offline functionality.
thanks for your reply
I want work Offline ... whats your Proposal?
SMP 2.3 using the MBO model...
Hey, it's not specific to SAP technologies, but I just published this blog post on SCN about iOS development tools that might be interesting to some of you here: Much Loved Tools of an iOS Developer | SCN.
Can you post the question in the forum? Posting the q here won't make the QA searchable for other folks.
Please find "Start a discussion" link on the right side: SMP Developer Center
Documentation has moved to a new platform, here you can find the link to the most recent SP14 version (URLs for documentation of earlier versions still work):
this new documentation link is for latest Mobile SDK SP14 right?
For older versions, i have to refer help.sap.com ?