title: Android - Google Maps returns null for location
body: <p>I need to see my location in the logs with frequency of 0.1 sec.</p>
  
  <pre><code>mMap.setMyLocationEnabled(true);
  LocationManager locationManager = (LocationManager) getSystemService(Context.LOCATION_SERVICE);
  Criteria criteria = new Criteria();
  final Location location = locationManager.getLastKnownLocation(locationManager.getBestProvider(criteria, false));
          for (int i = 1; i &lt; 100; i++)
              new Handler().postDelayed(new Runnable() {
                  @Override
                  public void run() {
                      if (ActivityCompat.checkSelfPermission(MapsActivity.this, Manifest.permission.ACCESS_FINE_LOCATION) != PackageManager.PERMISSION_GRANTED &amp;&amp; ActivityCompat.checkSelfPermission(MapsActivity.this, Manifest.permission.ACCESS_COARSE_LOCATION) != PackageManager.PERMISSION_GRANTED) {
                          // TODO: Consider calling
                          //    ActivityCompat#requestPermissions
                          // here to request the missing permissions, and then overriding
                          //   public void onRequestPermissionsResult(int requestCode, String[] permissions,
                          //                                          int[] grantResults)
                          // to handle the case where the user grants the permission. See the documentation
                          // for ActivityCompat#requestPermissions for more details.
                          return;
                      }
                      mMap.setMyLocationEnabled(true);
                      LocationManager locationManager = (LocationManager) getSystemService(Context.LOCATION_SERVICE);
                      Criteria criteria = new Criteria();
                      final Location location = locationManager.getLastKnownLocation(locationManager.getBestProvider(criteria, false));
                      Log.d("Coordinates: ",location.getLongitude() + "," + location.getLatitude());
                  }
              }, 100 * i);
  </code></pre>
  
  <p>I see the coordinates in the logs with emulator, but when I connect my phone by USB, I face a crash in the line with <code>Log.d()</code> with the following error:</p>
  
  <pre><code>java.lang.NullPointerException: Attempt to invoke virtual method 'double android.location.Location.getLongitude()' on a null object reference
  </code></pre>