Android,获取纬度,经度(wifi)和设备ID

时间:2011-01-03 14:15:08

标签: android latitude-longitude

有没有办法在不使用GPS的情况下从设备获取经度和纬度?我还想知道是否有办法获得某种序列号或类似号码。

由于

2 个答案:

答案 0 :(得分:1)

您可以使用LocationManager类的网络提供程序属性获取基于网络/ WIFI的位置。

LocationManager lm = (LocationManager) context.getSystemService(Context.LOCATION_SERVICE);
lm.requestLocationUpdates(LocationManager.NETWORK_PROVIDER, 0, 0, listener);

其中listener是android.location.LocationListener类的实现。

对于您的第二个问题,您可以获得非常独特的WIFI MAC地址,但我不确定如果该设备没有WIFI会发生什么。

WifiManager wm = (WifiManager)context.getSystemService(Context.WIFI_SERVICE);
String macAddress = wm.getConnectionInfo().getMacAddress();

请注意,这需要您将以下内容添加到清单文件

<uses-permission android:name="android.permission.ACCESS_COARSE_LOCATION" />
<uses-permission android:name="android.permission.ACCESS_WIFI_STATE" />

答案 1 :(得分:0)

这可能会有所帮助: http://developer.android.com/reference/android/location/LocationManager.html

尝试使用networkprovider ...

在这里您可以找到与此相关的一些信息: http://androidforums.com/samsung-i7500/9257-using-wireless-networks-location.html

关于序列号,我不知道......也许你可以使用某种MAC地址...