This is a location picker activity for android. It includes a search function to enable searching for locations. It does geocoding and reverse geocoding for this