1

我查看了其他一些问题和教程,但没有得到我想要的东西

我正在尝试以这种格式获取纬度和经度

纬度 = 40.769134 ,经度 = -73.960905

我实现了这个类,它接受我的全局变量纬度和经度(它们是长数据类型)

 class GpsListener implements LocationListener{

        public void onLocationChanged(Location location) {
              // TODO Auto-generated method stub
              latitude = location.getLatitude();
              longitude = location.getLongitude();
              //float speed = location.getSpeed();
              checkin();

        }

        public void onProviderDisabled(String provider) {
              // TODO Auto-generated method stub

        }

        public void onProviderEnabled(String provider) {
              // TODO Auto-generated method stub

        }


        @Override
        public void onStatusChanged(String arg0, int arg1, Bundle arg2) {
            // TODO Auto-generated method stub

        }

}

我在这里查看了其他教程,并注意到人们使用LocationManager该类与我进行交互,LocationListener但我真正需要做的就是使用一个Location对象,因为我的类GpsListener.onLocationChanged(.. )需要一个位置对象,但是您能否提供有关如何使用的示例或指导位置对象或如何简单地获得这个经度和纬度?

我只是将纬度和经度传递给服务器,所以我不需要对 GPS 模块做任何其他事情,我的checkin()函数使服务器调用

4

1 回答 1

1

您是否试图避免使用LocaitonManager?

locationManager = (LocationManager) getSystemService(Context.LOCATION_SERVICE);
        locationManager.requestLocationUpdates(LocationManager.GPS_PROVIDER,MINIMUM_TIME_BETWEEN_UPDATES,MINIMUM_DISTANCE_CHANGE_FOR_UPDATES,new MyLocationListener());
        location = locationManager.getLastKnownLocation(LocationManager.GPS_PROVIDER); 

如果您只想使用一次,我想您可以在收到位置后取消注册所有内容。但也许您想确保精度在 x 米等范围内。

于 2011-10-07T18:33:00.597 回答