Ответ 1
Я считаю, что то, чего вы хотите достичь, на данный момент невозможно. Вы не можете помещать данные определения местоположения в адрес поставщика сетевых ресурсов эмулятора.
"Предоставление данных определения местоположения вводится как данные местоположения GPS, поэтому вы должны запросить обновления местоположения от GPS_PROVIDER, чтобы данные фальсификации местоположения работали". (Цитата из Android, Документация, Предоставление Mock Location Data)
Самое близкое, что я могу придумать, - создать "Провайдера тестирования" из Менеджера местоположений
public void addTestProvider (String name, boolean requiresNetwork, boolean requiresSatellite, boolean requiresCell, boolean hasMonetaryCost, boolean supportsAltitude, boolean supportsSpeed, boolean supportsBearing, int powerRequirement, int accuracy)
и установите аргументы requireNetwork, requireCell и requireSatellite соответственно. Затем вы можете помещать поддельные местоположения этому провайдеру:
public void setTestProviderLocation (String provider, Location loc)
Это близко, но не совсем то, что вы просили.