onLocationChanged() is never trigered by requestLocationUpdate() - Android

前端 未结 2 1308
粉色の甜心
粉色の甜心 2020-12-22 14:09

I have used manager.requestLocationUpdates(\"gps\", 1000, 0, new LocationDetector()); to get update after every second. But this method is never triggering

2条回答
  •  轻奢々
    轻奢々 (楼主)
    2020-12-22 14:44

    This is a duplicate of this question, also asked by you. In any case, you could try using GoogleAPIClient - like this:

        LocationRequest locationRequest = LocationRequest.create();
        locationRequest.setPriority(LocationRequest.PRIORITY_HIGH_ACCURACY);
        locationRequest.setInterval(60000); // update every (1) minutes               
    LocationServices.FusedLocationApi.requestLocationUpdates(googleApiClient,locationRequest, yourLocationDetector );
    

    Where the googleApiClient is instantiated and connected in some helper method like this:

    /**
         * Helper method to connect the Google API Client
         */
        private void connectGoogleAPIClient() {
          googleApiClient = new GoogleApiClient.Builder(context)
                                    .addApi(LocationServices.API)
                                    .addConnectionCallbacks(this)
                                    .addOnConnectionFailedListener(this)
                                    .build();
          googleApiClient.connect();
        }
    

    You also need to make sure you have added the permission:

    Your problem might be related to the one discussed here - so please also look at the selected answer there and see if it does not help your case as well.

提交回复
热议问题