Итак, я делаю проект, который мне нужен только для определения местоположения, мне не нужно показывать карту или что-то в этом роде.Я создал GoogleMap mGoogleMap;
в начале урока.Когда я запрашиваю у пользователя разрешение на определение местоположения и курса, я получаю следующий код:
public class Distance extends Activity implements Runnable {
//...
GoogleMap mGoogleMap;
protected LocationManager locationManager;
Location location;
//...
public void onCreate(Bundle savedInstanceState) {
//...
locationManager = (LocationManager) getSystemService(Context.LOCATION_SERVICE);
if (ActivityCompat.checkSelfPermission(this, android.Manifest.permission.ACCESS_FINE_LOCATION) ==
PackageManager.PERMISSION_GRANTED &&
ActivityCompat.checkSelfPermission(this, android.Manifest.permission.ACCESS_COARSE_LOCATION) ==
PackageManager.PERMISSION_GRANTED) {
mGoogleMap.setMyLocationEnabled(true);
mGoogleMap.getUiSettings().setMyLocationButtonEnabled(true);
locationManager.requestLocationUpdates(
LocationManager.GPS_PROVIDER,
MINIMUM_TIME_BETWEEN_UPDATES,
MINIMUM_DISTANCE_CHANGE_FOR_UPDATES,
new MyLocationListener()
);
} else {
ActivityCompat.requestPermissions(this, new String[]{
Manifest.permission.ACCESS_FINE_LOCATION,
Manifest.permission.ACCESS_COARSE_LOCATION},
TAG_CODE_PERMISSION_LOCATION);
}
//...
При первом запуске приложения оно работало, но в другое время получала эту ошибку:
Причинаby: java.lang.NullPointerException: попытка вызвать виртуальный метод 'void com.google.android.gms.maps.GoogleMap.setMyLocationEnabled (boolean)' для ссылки на пустой объект.
Эта ошибка в строкекоторые имеют: mGoogleMap.setMyLocationEnabled(true);
Я знаю, что мне нужно инициализировать объект googleMap, потому что он пуст, но я не знаю как.Помощь