0

所以,我目前正在开发一个基于地图的应用程序,并遵循大量教程来根据网络或 gps 提供商更新用户位置,但我更喜欢网络。像这样:

locationManager = (LocationManager) this.getSystemService(Context.LOCATION_SERVICE);
    mlocListener = new CustomLocationListener();
    locationManager.requestLocationUpdates(LocationManager.NETWORK_PROVIDER, 0, 0, mlocListener);

我的 CustomLocationListener 类是这样的:

public class CustomLocationListener implements LocationListener {

    public void onLocationChanged(Location location) {
        // TODO Auto-generated method stub
        System.out.println("Location Updated");
        userCoordinate = new LatLng(location.getLatitude(), location.getLongitude());
        // Move the camera instantly to kiel with a zoom of 15.
        map.moveCamera(CameraUpdateFactory.newLatLngZoom(userCoordinate, 14));

        // Zoom in, animating the camera.
        map.animateCamera(CameraUpdateFactory.zoomTo(14), 2000, null);
    }

    public void onProviderDisabled(String provider) {
        System.out.println("provider disabled");
        Toast.makeText(getBaseContext(), "GPS mode disabled", Toast.LENGTH_SHORT).show();
    }

    public void onProviderEnabled(String provider) {
        System.out.println("provider enabled");
        Toast.makeText(getBaseContext(), "GPS mode enabled", Toast.LENGTH_SHORT).show();
    }

    public void onStatusChanged(String provider, int status, Bundle extras) {

    }

}

当我编译它并在我的设备上运行时,你知道这很好用。它可以快速将相机聚焦在用户坐标当前位置上。但不知何故,有一天,当我在其他地方尝试我的设备时,它突然出现了!不再起作用了!

我尝试将我的项目恢复为我的 git 上的初始提交(当代码用于更新用户位置时),但它仍然不再起作用!

我尝试使用

locationManager.requestLocationUpdates(LocationManager.NETWORK_PROVIDER, 0, 0, mlocListener);

但它仍然不再起作用了!为什么?为什么?为什么?

我在手机上打开谷歌的地图应用程序,这很正常!我不认为我的手机坏了!我不知道男人!索尼 XPERIA 米罗

请给我解决方案...我很困惑!

4

1 回答 1

0

要测试您的手机是否损坏,请转到系统设置-> 定位服务并关闭除谷歌定位服务之外的所有内容。现在启动 Navigator 应用程序,看看该应用程序是否知道您在哪里。您可能不得不四处走动,因为第一个修复可能是最后一个已知位置。

于 2013-03-25T04:02:49.073 回答