onProviderEnabled not working?

折月煮酒 提交于 2019-12-12 11:30:31

问题


For switching between GPS & Network location provider I just tried in a way like this, to identify when a provider is disabled switch to another, but my onProviderEnabled() is not getting invoked

public void onProviderDisabled(String provider) {
  Toast.makeText(TrackerService.this, "Disabled : " + provider, Toast.LENGTH_LONG).show();
}
public void onProviderEnabled(String provider) {
  Toast.makeText(TrackerService.this, "Enabled : " + provider, Toast.LENGTH_LONG).show()

回答1:


Define a location listener like the following:

LocationListener locationListener = new LocationListener() {
            public void onLocationChanged(Location location) {

            }
            public void onProviderDisabled(String provider) {}
            public void onProviderEnabled(String provider) {}
            public void onStatusChanged(String provider, int status, Bundle extras) {}
        };

Then :

LocationManager lm = (LocationManager) getSystemService(Context.LOCATION_SERVICE); 
  lm.requestLocationUpdates(LocationManager.GPS_PROVIDER, 0, 0, locationListener);
  lm.requestLocationUpdates(LocationManager.NETWORK_PROVIDER, 0, 0, locationListener);


来源:https://stackoverflow.com/questions/8699262/onproviderenabled-not-working

易学教程内所有资源均来自网络或用户发布的内容,如有违反法律规定的内容欢迎反馈
该文章没有解决你所遇到的问题?点击提问,说说你的问题,让更多的人一起探讨吧!