I would like to be able to show a geographic map on an Android device and allow the user to be able to click on the map to select the geographic locality that the point is in. For example if I were at Soldier Field in Chicago, my app displays the area around Soldier Field and the user clicks somewhere on the map that is within the boundaries of Chicago and I store the place name Chicago and it's coordinates.
What I have already done is to implement the PlacePicker to show a map representing the current location of the phone and then allow the user to click on a point on the map or a displayed place on the map and then store that point or place. With this I can select the place that represents the geographic locality however it can be very unwieldy. Depending on the zoom level the place "Chicago" may not show up on the visible map and I don't want to have to make the users scroll and zoom to find it. I want them to be able to select a point in the area around Soldier Field and have the app recognize that this point is in the geographic locality of Chicago.
I do not understand how the places and/or google maps apis can be used to recognize the hierarchy of a geographic point (when you have only a geographic point, how do you get to the geographic region -- in this case a city or town -- that the point is in).
Thanks in advance for any assistance.