如果手机连接到Wifi或移动网络,我想获取我的位置。但是,如果手机在移动网络上的东西不按预期运行。直到我启用GPS才会发生任何事情。我可以在没有启用GPS的情况下获得位置,或者我必须这样做吗?如果GPS是必须的,我怎么能警告用户启用GPS?
private void setUpMap() {
// TODO Auto-generated method stub
mMap.setMyLocationEnabled(true);
LocationManager manager = (LocationManager)getActivity().getSystemService(FragmentActivity.LOCATION_SERVICE);
Criteria criteria = new Criteria();
String provider = manager.getBestProvider(criteria, true);
myLocation = manager.getLastKnownLocation(provider);
latitude = myLocation.getLatitude();
longitude = myLocation.getLongitude();
LatLng latlng = new LatLng(latitude, longitude);
mMap.moveCamera(CameraUpdateFactory.newLatLngZoom(latlng, 14));
}
答案 0 :(得分:1)
答案 1 :(得分:0)
你的问题非常多。
Can i get location without enabling GPS or i have to do that ?
当然可以。位置来自位置提供商。示例包括网络,Wifi和GPS。你并不需要所有人。只要有人会这样做。
And if GPS is must, how could i warn user to enable GPS ?
您可以使用LocationManager类下的方法isProviderEnabled(字符串提供程序)来检查GPS提供程序是否已启用。如果您可以显示某些消息和链接以启用它。
要了解如何识别您的应用位置,建议您按照官方说明here进行操作。多数民众赞成我也是如何学习它的。