Я пытаюсь получить текущее местоположение с помощью FusedLocationApi - PullRequest
0 голосов
/ 04 мая 2018

Я пытаюсь получить текущее местоположение с помощью API слияния местоположений.

private void setInitialLocation() {


        if (ActivityCompat.checkSelfPermission(getActivity(), android.Manifest.permission.ACCESS_FINE_LOCATION) != PackageManager.PERMISSION_GRANTED && ActivityCompat.checkSelfPermission(MainActivity.this, android.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;
        }

        LocationServices.FusedLocationApi.requestLocationUpdates(googleApiClient, request, new LocationListener(){
            @Override
            public void onLocationChanged(Location location) {


                mLastLocation = location;

                try {

                } catch (Exception ex) {

                    ex.printStackTrace();
                    Log.e("MapException", ex.getMessage());

                }

            }
        });
    }

андроид студия дает эту ошибку

Класс 'Анонимный класс, производный от LocationListener' должен быть либо объявленный абстрактный или реализованный абстрактный метод.

пока я реализую весь абстрактный метод Location Listener.

1 Ответ

0 голосов
/ 04 мая 2018

FusedLocationApi устарело. Используйте это FusedLocationProviderClient

Подробная ссылка здесь

Создать экземпляр FusedLocationProviderClient

mFusedLocationClient = LocationServices.getFusedLocationProviderClient(this);


mFusedLocationClient.getLastLocation()
    .addOnSuccessListener(this, new OnSuccessListener<Location>() {
        @Override
        public void onSuccess(Location location) {
            // Got last known location. In some rare situations, this can be null.
            if (location != null) {
                // Logic to handle location object
            }
        }
    });
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...