Отслеживание местоположения в андроид студии (locationManager.isProviderEnabled (LocationManager.GPS_PROVIDER) - PullRequest
0 голосов
/ 06 ноября 2018

Я пытаюсь использовать Google API с Android Studio, чтобы создать строку кода, которая будет отслеживать местоположение кого-то. Однако, когда я пытаюсь реализовать locationManager.isProviderEnabled, я получаю сообщение об ошибке «Не удается разрешить символ isProviderEnabled», даже если у меня есть реализация android.location.LocationManager. Я, честно говоря, не могу понять, что не так с моим кодом, так что если кто-то может помочь, это было бы здорово!

Вот мой код для справки:

 else if(locationManager.isProviderEnabled(LocationManager.GPS_PROVIDER)){
        locationManager.requestLocationUpdates(LocationManager.GPS_PROVIDER, 0, 0, new LocationListener() {
            @Override
            public void onLocationChanged(Location location) {
                //get the latitude
                double latitude = location.getLatitude();
                //get the longitude
                double longitude = location.getLongitude();
                LatLng latLng = new LatLng(latitude, longitude);
                Geocoder geocoder = new Geocoder(getApplicationContext());
                try {
                    List<Address> addressList = geocoder.getFromLocation(latitude, longitude, 1);
                    String str = addressList.get(0).getLocality() + ",";
                    str += addressList.get(0).getCountryName();
                    mMap.addMarker(new MarkerOptions().position(latLng).title(str));
                    mMap.moveCamera(CameraUpdateFactory.newLatLngZoom(latLng, 10.2f));
                } catch (IOException e) {
                    e.printStackTrace();
                }
            }

1 Ответ

0 голосов
/ 06 ноября 2018
  1. GPSLocationService расширяет обслуживание
  2. скопируйте и вставьте onStart () в ваш класс GPSLocationService
@Override
public void onStart(Intent intent, int startId) {

locationManager = (LocationManager) getSystemService(Context.LOCATION_SERVICE);
listener = new MyLocationListener();
    if (ActivityCompat.checkSelfPermission(this, Manifest.permission.ACCESS_FINE_LOCATION) != PackageManager.PERMISSION_GRANTED && ActivityCompat.checkSelfPermission(this, Manifest.permission.ACCESS_COARSE_LOCATION) != PackageManager.PERMISSION_GRANTED) {
        return;
    }
    if (locationManager != null) {
      if (locationManager.isProviderEnabled(LocationManager.GPS_PROVIDER)){           
        locationManager.requestLocationUpdates(LocationManager.NETWORK_PROVIDER, MIN_TIME_BW_UPDATES, MIN_DISTANCE_CHANGE_FOR_UPDATES, listener);
        locationManager.requestLocationUpdates(LocationManager.GPS_PROVIDER, MIN_TIME_BW_UPDATES, MIN_DISTANCE_CHANGE_FOR_UPDATES, listener);
    }
 }

}

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...