关于用户位置:在不使用Android地图的情况下获取用户(纬度,经度)位置

Take user (Latitude, Longitude) position with out using the map Android

本问题已经有最佳答案,请猛点这里访问。

我想问是否有另一种方法来取消用户位置而不使用map.I只想让位置用它做一些查询。是否有任何更聪明,更有效的方法来实现这一点,包括android中的地图活动?


Android有两种确定用户位置的基本方法。 第一种是使用自Android首次推出以来可用的内置位置API。 并且有Google Play服务。

正如你所说,不使用地图:

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
LocationManager lm = (LocationManager)getSystemService(Context.LOCATION_SERVICE);
    Location location = lm.getLastKnownLocation(LocationManager.GPS_PROVIDER);
    double longitude = location.getLongitude();
    double latitude = location.getLatitude();

final LocationListener locationListener = new LocationListener() {
        public void onLocationChanged(Location location) {
            longitude = location.getLongitude();
            latitude = location.getLatitude();
        }

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

        }

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

        }

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

        }
    };
lm.requestLocationUpdates(LocationManager.GPS_PROVIDER, 2000, 10, locationListener);

如果您想使用GPS,请不要忘记许可:

1
<uses-permission android:name="android.permission.ACCESS_FINE_LOCATION" />

查看此文档了解更多信息:
https://developer.android.com/guide/topics/location/strategies.html