我正在尝试测试使用模拟器使用地理位置的我的应用程序。描述了几种方法here。我要去Window->Open Perspective->DDMS
,然后输入经纬度。和长。一个在Location Controls
,然后我点击“发送”。无法模拟Android模拟器中的位置数据
但它不工作。相反,我看到以下错误:Unable to send command to the emulator.
为什么会发生这种情况!?
我不认为我的应用程序是问题,因为我用模拟器的默认浏览器进行了测试,它也无法访问位置信息。
详情:
- OSX 10.9.4
- AVD_for_Nexus_4_by_Google瞄准v4.4.2
- 的Eclipse IDE Android开发23.0.2.1259578
更新: 我改AVD_for_Galaxy_Nexus_by_Google
它仍然不起作用,但我不再看到那个错误。我点击发送并没有任何反应。
Update2: 我已经测试过使用Telnet将位置数据传递给模拟器,并且什么也没有发生。没有错误。根本不值一提。 Urgh!
telnet localhost 5554
geo fix 50 50
它回应OK
但没有任何反应。仍然没有可用的位置数据。
UPDATE3: 我注意到下面的错误流中的logcat
09-20 17:58:59.910: E/eglCodecCommon(1777): glUtilsParamSize: unknow param 0x00000b44
09-20 17:58:59.910: E/eglCodecCommon(1777): glUtilsParamSize: unknow param 0x00000bd0
09-20 17:58:59.930: E/eglCodecCommon(1777): **** ERROR unknown type 0x0 (glSizeof,72)
的应用程序似乎运行良好,并且这些错误理应解释here。
更新4: 我见过多个建议以确认我的AVD已启用GPS支持,但此选项/设置不会出现在任何地方。当我打开“Android虚拟设备管理器”,然后在我的设备上点击“编辑”时,我看到:
没有提到“GPS支持”。
更新5: 我检查我所有的自动真空淀积的config.ini文件,他们都正确设置为hw.gps=yes
。我还使用Google API目标创建了AVD,但我仍然遇到同样的问题。该应用程序加载,但没有位置数据可用,“位置控制”以及远程登录。
更新6: 继Gyebro的建议如下...试图加载他的LocationDemo应用程序...
下面是我在logcat中看到:
'yourLocationClient.getLastLocation()'返回'null'吗?你在实现'LocationListener'吗?任何事都会干扰你的模拟器端口(5554)?您是否尝试过Android Studio(及其Android设备监视器)? – Gyebro 2014-09-23 10:54:28
没有位置侦听器。至于'yourLocatoinClient',我对Android开发很陌生,所以我不确定那是什么。如果你给我说明,我会测试。我还没有尝试过Android Studio,但我尝试过使用Genymotion插件,但仍然无法工作。 – emersonthis 2014-09-23 14:13:26
只需检查您的AVD是否具有以下设置:AVD - >硬件 - >新 - > GPS支持 - >“是” – 2014-09-24 06:41:51