Android, получить широту, долготу (Wi-Fi) и идентификатор устройства - PullRequest
1 голос
/ 03 января 2011

Есть ли способ получить широту и долготу от устройства без использования GPS?Я также хотел бы знать, есть ли способ получить какой-то серийный номер или аналогичный.

Спасибо

Ответы [ 2 ]

1 голос
/ 03 января 2011

Вы можете получить свое местоположение на основе сети / WIFI, используя свойство сетевого провайдера класса LocationManager.

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

Где слушатель является реализацией класса android.location.LocationListener.

По второму вопросу вы можете получить MAC-адрес WIFI, который является довольно уникальным, хотя я не уверен, что произойдет, если устройство не имеет 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" />
0 голосов
/ 03 января 2011

Это может помочь: http://developer.android.com/reference/android/location/LocationManager.html

Попробуйте использовать сетевой провайдер ...

Здесь вы можете найти информацию, связанную с этим: http://androidforums.com/samsung-i7500/9257-using-wireless-networks-location.html

Насчет серийного номера, я не знаю ... может быть, вы можете использовать какой-нибудь MAC-адрес ...

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...