redo user location tracking, handle permission denied