2010-03-11 93 views
25

是否可以激活android模擬器上的網絡位置提供程序?也許用假cellid?在Android模擬器中激活網絡位置提供程序?

+0

你爲什麼需要網絡位置提供商? 是你在找什麼: http://osdir.com/ml/AndroidDevelopers/2009-03/msg02179.html – Sephy 2010-03-11 12:07:06

+1

這將是很高興能夠在仿真器上測試網絡位置提供商......鏈接不是我要找的感謝。 – Janusz 2010-03-11 12:33:26

+0

你的意思是,看看GPS是否被激活? – Sephy 2010-03-11 14:32:35

回答

16

我相信你現在想要達到的目標是不可能的。您不能將模擬位置數據放置到模擬器的網絡位置提供程序。

「提供模擬位置數據作爲GPS位置數據注入,因此您必須從GPS_PROVIDER請求位置更新以使模擬位置數據正常工作。」 (引自Android, Documentation, Providing Mock Location Data

我可以想出最接近的將是創建一個從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) 

「測試提供商」,並設置參數requiresNetworkrequiresCell和相應地,需要衛星。那麼你可以從假冒的地點,該提供商:

public void setTestProviderLocation (String provider, Location loc) 

這是接近,但不完全是你所要求的。

2

你需要發送位置信息到模擬器嗎?如果你想這樣做,喲可以發送位置模擬器通過量的亞行控制檯和地理命令http://developer.android.com/guide/developing/tools/emulator.html#geo

我不知道,如果它可以發送僞造的小區id,但它與GPS座標可能的,如果你的應用程序聽到任何GPS提供商

+4

GPS工作正常,但我使用網絡位置提供程序,似乎這是不可模擬器上測試。 – Janusz 2010-11-25 10:24:36

-2

去你的模擬器設置>位置訪問,並檢查「的Wi-Fi &移動網絡位置」