What I'm trying to do is have two edit boxes for source and destination. Based on those two locations I need to draw the route on an ArcGIS map in Android.
The Basic algorithm is as follows:
In the OpenSource Stack, you have several options like gisgraphy, OpenStreetMaps' Nominatim, MapQuest geocoder etc. You could even host your own. As for routing you could host your own pgRouting or use something like MapQuest's OpenDirection API
Please note that most of these online services have some kind of limits on them. You need to be aware of them, and make sure that you do not run afoul of their Terms & Conditions.