使用gps从纬度和经度获取当前位置

时间:2012-05-25 07:27:31

标签: android android-ndk location

我使用Telnet在模拟器中获得了纬度和经度值。(即GPS)。

我有疑问(即)没有谷歌地图我们能否使用纬度和经度获取当前位置。

2 个答案:

答案 0 :(得分:0)

您可以使用GPS和Google地图同时获取当前位置。如果您想通过Google地图获取位置,请点击show this教程。您可以see this之前提出的问题。

如果您想在没有Google地图的情况下获取位置,那么您可以使用位置管理器。

为此,我们需要在OnCreate方法中添加以下代码:

/* Use the LocationManager class to obtain GPS locations */
LocationManager mlocManager = (LocationManager)getSystemService(Context.LOCATION_SERVICE);
LocationListener mlocListener = new MyLocationListener();
mlocManager.requestLocationUpdates( LocationManager.GPS_PROVIDER, 0, 0, mlocListener);

在自定义类MyLocationListener中使用实现接口LocationListener。

我们将添加我们自己的个人位置监听器,因此我们可以覆盖一些功能来完成我们想要的操作。在我们的例子中,我们将在以下情况下在屏幕上打印一条消息:

onLocationChanged ( Location Update )
onProviderDisabled ( GPS Off )
onProviderEnabled (GPS On )

并添加另一个必须执行的强制方法。

onStatusChanged (We are not adding nothing here).

之后在AndroidManifest.xml文件中提供权限:

android:name="android.permission.ACCESS_FINE_LOCATION"

答案 1 :(得分:0)

您可以通过此代码获得纬度和经度

GPS_Location mGPS = new GPS_Location(MyApplication.getAppContext());

if (mGPS.canGetLocation) {

    mLat = mGPS.getLatitude();
    mLong = mGPS.getLongitude();

} else {
    System.out.println("cannot find");
}

您必须将gps权限和其他权限添加到您的应用