You may want to check out our university (University of South Florida)'s "OpenTripPlanner for Android" open-source project:
https://github.com/CUTR-at-USF/OpenTripPlanner-for-Android/wiki
This is a native Android app that uses a REST API to access the main server-side open-source OpenTripPlanner project (created primarly by TriMet in Portland and OpenPlans), which does the actual multimodal (bike/transit/walk) trip planning:
https://github.com/openplans/OpenTripPlanner/wiki
The planned trip is then passed back to the Android app and displayed on the screen.
This is a slightly different server-side approach that's entirely implemented in Java and runs in a Java application server such as Tomcat, instead of utilizing a spatial database server such as Oracle spatial.
There are two steps to getting a running server:
- Use the OTP GraphBuilder application to build a graph object (a file) from several data sources (inclduing OpenStreetMap) that contains a serialized set of Java objects that represent the graph topology and rules for traversing the graph.
- Start the Tomcat server, which loads the graph object from disk into memory, deserializes the graph, and is then ready to serve trip planning requests.
There are performance/scalability benefits of having the entire graph in memory for routing, instead of having to hit a hard disk where the Oracle database is presumably located. I don't know if Oracle is a hard requirement for your project, but if not you might want to consider basing your application off of OpenTripPlanner (OTP).
The OTP Android app is available on Google Play:
https://play.google.com/store/apps/details?id=edu.usf.cutr.opentripplanner.android
And here's our OpenTripPlanner server instance running in Tampa, FL, that it sends the REST requests to (this is the normal web browser view):
http://opentripplanner.usf.edu/
Here's a sample REST API request that would be sent from the app to the server (note the "/opentripplanner-api-webapp/" addition to the below URL to give you the REST API instead of the normal web interface). If you open this in your browser, you should see the XML-encoded trip planned from the lat/long "fromPlace" to the lat/long "toPlace" encoded in the URL:
http://opentripplanner.usf.edu/opentripplanner-api-webapp/ws/plan?fromPlace=28.066788,-82.410104&toPlace=28.059324,-82.415394&mode=TRANSIT,WALK&min=QUICK&maxWalkDistance=840&time=2:49%20pm&date=10/24/2012&arr=Depart&itinID=1&wheelchair=false
Here's the defintion of the OTP REST API that will tell you what each XML element in the response means:
http://www.opentripplanner.org/apidoc/