Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/android/219.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Android 在移动网络上查找我的位置_Android_Location_Android Maps V2 - Fatal编程技术网

Android 在移动网络上查找我的位置

Android 在移动网络上查找我的位置,android,location,android-maps-v2,Android,Location,Android Maps V2,如果手机连接到Wifi或移动网络,我想知道我的位置。然而,若手机在移动网络上,那个么事情就不会按预期运行。除非启用GPS,否则不会发生任何事情。我可以在不启用GPS的情况下获取位置,还是必须这样做?若必须使用GPS,我如何警告用户启用GPS private void setUpMap() { // TODO Auto-generated method stub mMap.setMyLocationEnabled(true); LocationManager manage

如果手机连接到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));
}

你的问题很复杂

Can i get location without enabling GPS or i have to do that ? 
你当然可以。位置来自位置提供者。示例包括网络、Wifi和GPS。你不需要全部3个。任何人都可以

And if GPS is must, how could i warn user to enable GPS ?
可以使用类下的isProviderEnabled(字符串提供程序)方法检查GPS提供程序是否已启用。如果您可以显示一些消息和链接来启用它

要了解如何让你的应用程序位置感知,我建议你遵循官方的说明。我也是这样学的。

请看这个

您必须创建一个GPSTracker服务来跟踪您的最后位置

我认为100%解决你的问题,如果你专注于演示

如果你工作得很有魅力,那就接受答案