第一步,获取GPS服务(调用GPS服务不需要获取permission,不需要在manifest文件中添加权限)
LocationManager LocManager = (LocationManager)getSystemService(Context.LOCATION_SERVICE);
Location loc;
第二步,获取所有可用的GPS服务(当然可以直接判断其中某一个是否可用然后直接调用)
List<String> providerList = LocManager.getProviders(true);
if(providerList.contains(LocationManager.GPS_PROVIDER))
loc = LocManager.getLastKnownLocation(LocationManager.GPS_PROVIDER);
else if(providerList.contains(LocationManager.NETWORK_PROVIDER))
loc = LocManager.getLastKnownLocation(LocationManager.NETWORK_PROVIDER);
//如果没有一个可以用那就用Toast显示一下
else{
Toast.makeText(this, "please open GPS", Toast.LENGTH_SHORT).show();
return;
}
第三步,调用getxxx方法获取经纬度(longi和lati都是double类型)
longi = loc.getLongitude();
lati = loc.getLatitude();