Android手机定位服务 2016-08-03 technology ANDROID, LocationListener 2 min read , Words: 211 1.LocationListener使用优先使用网络定位服务,当GPS服务不可用则跳转到手机位置服务设置页面 代码收集: /** * 使用手机定位服务 */private void startLocationService(){ locationListener = new LocationListener() { @Override public void onStatusChanged(String provider, int status, Bundle extras) { } @Override public void onProviderEnabled(String provider) { // 当GPS LocationProvider可用时,更新位置 location = locManager.getLastKnownLocation(provider); } @Override public void onProviderDisabled(String provider) { isLocatedSuccess = false; if (provider.equals("network")) { locManager.requestLocationUpdates(LocationManager.GPS_PROVIDER, 3 * 1000, 8,locationListener); }else if(provider.equals("gps")){//GPS服务不可用,跳到位置服务设置页面 startActivity(new Intent(android.provider.Settings.ACTION_LOCATION_SOURCE_SETTINGS)); }else { updateToNewLocation(null); } } @Override public void onLocationChanged(Location location) { // 当定位信息发生改变时,更新位置 isLocatedSuccess = true; updateToNewLocation(location); locManager.removeUpdates(this); } }; if (locManager.getProvider(LocationManager.NETWORK_PROVIDER) != null) locManager.requestLocationUpdates(LocationManager.NETWORK_PROVIDER, 3 * 1000, 8,locationListener); else if (locManager.getProvider(LocationManager.GPS_PROVIDER) != null) locManager.requestLocationUpdates(LocationManager.GPS_PROVIDER, 3 * 1000, 8,locationListener); else Toast.makeText(mActivity(), "获取手机位置信息错误", Toast.LENGTH_SHORT).show();} 本文采用知识共享署名 2.5 中国大陆许可协议进行许可,欢迎转载,但转载请注明来自Agehua’s Blog,并保持转载后文章内容的完整。本人保留所有版权相关权利。 本文链接:http://agehua.github.io/2016/08/03/android-LocationListener/ ------------------------------------------------------------------------------------------------------------------------------ Enjoy it ? Donate me ! 欣赏此文?求鼓励,求支持! ------------------------------------------------------------------------------------------------------------------------------ Enjoy it ? Donate me ! 欣赏此文?求鼓励,求支持! Newer RxJava 学习 Older Android Webview总结,不断更新中 :(