In order to add a marker with the current location you have to implement LocationListener
With the following code you can add a marker with your location and move the camera:
public void onLocationChanged(Location location) {
map.addMarker(new MarkerOptions().position(new LatLng(location.getLatitude(), location.getLongitude()))
.title("My Location"));
/* ..and Animate camera to center on that location !
* (the reason for we created this custom Location Source !) */
map.animateCamera(CameraUpdateFactory.newLatLng(new LatLng(location.getLatitude(), location.getLongitude())));
}
In order to add a maker when the user taps inside the map you can use OnMapLongClickListener
@Override
public void onMapLongClick(LatLng point) {
mMap.addMarker(new MarkerOptions()
.position(point)
.snippet(""));
}