2010-03-11 3 views
25

Возможно ли активировать поставщика сетевых услуг в эмуляторе Android? Может быть, с поддельной клетчаткой?Активация поставщика сетевого местоположения в эмуляторе Android?

+0

зачем вам нужен поставщик местоположения сети? - это то, что вы ищете: http://osdir.com/ml/AndroidDevelopers/2009-03/msg02179.html – Sephy

+1

Было бы неплохо иметь возможность протестировать поставщика сетевых адресов на эмуляторе ... ссылка не то, что я ищу. – Janusz

+0

Вы имеете в виду, чтобы узнать, активирован ли GPS? – Sephy

ответ

16

Я считаю, что то, чего вы хотите достичь, на данный момент невозможно. Вы не можете размещать данные определения местоположения в сетевом провайдере эмулятора.

«Предоставление данных определения местоположения вводится в качестве данных местоположения GPS, поэтому вы должны запросить обновления местоположения от GPS_PROVIDER, чтобы данные фальсификации местоположения работали». (цитата из Android, Documentation, Providing Mock Location Data)

Ближайшее, что я могу придумать было бы создать "Test Provider" от Location Manager

public void addTestProvider (String name, boolean requiresNetwork, boolean requiresSatellite, boolean requiresCell, boolean hasMonetaryCost, boolean supportsAltitude, boolean supportsSpeed, boolean supportsBearing, int powerRequirement, int accuracy) 

и установить аргументы requiresNetwork, requiresCell и требуетSetellite соответственно. Затем вы можете помещать поддельные адреса этого провайдера:

public void setTestProviderLocation (String provider, Location loc) 

Это близко, но не совсем то, что вы просили.

2

Вам нужно отправить информацию о местоположении в эмулятор? если вы хотите это сделать, yo может отправить местоположение в эмулятор, удалите консоль adb и команду geo http://developer.android.com/guide/developing/tools/emulator.html#geo

Я не знаю, можно ли его отправить поддельную клетчатку, но ее можно с помощью GPS-координат, если ваше приложение прослушивает любому провайдеру gps

+4

GPS работает отлично, но я использую Network Location Provider, и кажется, что это не тестируется на эмуляторе. – Janusz

-2

перейдите в раздел Настройки> Эмулятор Расположение доступа и установите флажок «Wi-Fi расположение & мобильной сети»

Смежные вопросы