Developing SAP Android Apps is Just a Few Clicks Away
It has never been
easier to create mobile based applications connected to SAP systems. The
SAP NetWeaver Gateway offers access to processes and data from a
standard SAP Business Suite system (ERP, CRM ...) via open protocols.
Together
with the SAP NetWeaver Gateway plugin for Eclipse, anyone with a
passion for Android development can immediately start using Gateway!
Starting
with version 2.5.2 of the plugin, an Android Toolkit is available,
enabling the native Android developer to easily develop applications
that consume SAP NetWeaver Gateway services.
Today I will show you how easy it is to create an Android application that reads and displays data from SAP NetWeaver Gateway.
I assume you already have a running Eclipse IDE with the Android Developer Tools (ADT) plugin for Eclipse installed.
First thing you’ll need to do is to download and install the SAP NetWeaver Gateway plugin for Eclipse. Once installed, the second step will be to configure an NW Gateway system connection. I’ll be using the online NW Gateway demo system. To configure it, go to Eclipse Preferences and add a new connection under SAP NetWeaver Gateway > Connections.
One last thing before we can start, since the Android Toolkit is based on the SAP OData Mobile SDK, we need to download the SDK,
and extract to a location on the file system. Then all we have to do is
to set the path to where we have extracted the libraries, in Eclipse
Preferences under SAP NetWeaver Gateway > Android Toolkit.
Now
that we are done with the formalities, we can go ahead and use the
plugin to create an Android app. Start by opening the New Project wizard
and select Starter Application Project under the SAP NetWeaver Gateway
node. Give your project a name, and select Android from the dropdown of
available target platforms. Follow the wizard steps and select the
List/Details Application template from the templates page of the wizard.
The
service I will use in my application is the sample service that exposes
data from the good old Flight sample application, and is available in
SAP NetWeaver since many years. This is also the first example found
under Sample Gateway Services in the NW Gateway demo system page on the
SCN.
We
have several ways to select the service to base our application on, but
let’s try out the nice Catalog functionality to explore the Gateway
service catalog. Clicking the Catalog button will open the service
catalog. In case you skipped the connection configuration step, no
worries, you can still do it without closing the wizard (simply click on
the Configure… link and add the online demo system details).
Search
for: *flight to display all services on this system that deal with
flight data. The service I’m looking for is RMTSAMPLEFLIGHT_2.
We are almost done!
The final step of the List Template is to model the application pages (activities).
The modeling is quite intuitive: we start with a List activity that displays data from a selected collection of the service (Entity Set Navigation) in a list manner. Pick a few fields to appear on each entry in the list.
For
example, I want to have a list of flight carriers as my first page.
Then, on clicking a specific carrier I would like to list the carrier’s
flights. So I add another page, and select its type to a List, and its
Entity Set Navigation to CarrierFlights. I pick a couple of fields that
describe a flight entry (for example, the flight number and date).
Last
but not least I add a third page, this time of type Details to display
detailed information on a specific flight, and add all fields.
Then,
I click the Finish button of the wizard. A new Android project is
generated containing a semantic proxy for the service I selected and
application logic and resources according to my modeling. Also, the SAP
OData Mobile SDK libraries are copied into the project under libs
folder.
Now I can already run the application in an emulator or on a real Android device and check it out.
In
runtime, you need to enter a username and a password for login. Just
enter the same credentials you used to configure the Demo System.
Note
that if working behind a proxy you might need to configure the proxy
host and port in the application to avoid an Unknown Host Exception. For
instructions on how to do that, refer to the troubleshooting guide –
page 105 in the SAP NetWeaver Gateway plug-in for Eclipse guide.
I
hope you find this blog helpful. Keep in mind that this is just a
starting point for understanding how to consume Gateway services in an
Android application. You can customize the generated project code
manually like adding or removing pages, changing the layout and icons or
add additional functionality.
Feel free to share in the comments section any customization and/or feedback you have.
Useful Links:
ADT Plugin
SAP NetWeaver Gateway plug-in for Eclipse
SAP OData Mobile SDK for Android
SAP OData Mobile SDK for Android documentation
SAP NetWeaver Gateway Demo System
The modeling is quite intuitive: we start with a List activity that displays data from a selected collection of the service (Entity Set Navigation) in a list manner. Pick a few fields to appear on each entry in the list.
Comments
Post a Comment