【问题标题】:Android Emulator googleMaps myLocationAndroid模拟器谷歌地图我的位置
【发布时间】:2016-11-05 14:38:14
【问题描述】:

我正在尝试在 Android 模拟器 (api23 android 6.0) 上使用 googleMaps

当我尝试在某个地方获取路线时,GoogleMaps 似乎无法正常工作......它只会显示“等待位置”。我想知道:甚至有可能使用 Android 模拟器获得 myLocation 吗?我读了很多书,我开始想“不”。我开始考虑只给 myLocation 一些“假”坐标,然后开发我的应用程序的其余部分。

有什么想法吗?

【问题讨论】:

    标签: google-maps android-studio android-emulator


    【解决方案1】:

    基于此thread,您还可以通过 Telnet 连接到模拟器。然后,您有一个模拟器控制台,可让您输入某些数据,如地理修复、网络等。

    详细解释了如何使用控制台 here。 要连接到控制台,请打开命令行并键入

    telnet localhost 5554

    然后您可以使用 geo 命令来设置纬度、经度和 if 设备上所需的高度,使用 gps 位置提供商。有关详细说明,请参阅上面的链接。

    在控制台中运行的具体命令是

    geo fix <longitude value> <latitude value>

    根据文档,getLastKnownLocation 方法可以返回 null。在这种情况下,您应该等待位置更新(您可以使用 LocationManager 中的 requestLocationUpdates 方法)。您可以通过以下命令在模拟器的 gps 模块上触发位置更新:adb -e emu geo fix 50 50

    您还应该使用LocationManager.GPS_PROVIDER。当提供程序设置为 NETWORK_PROVIDER 时,模拟器可能不会响应通过 DDMS 发送的位置更改,但在设置为 GPS_PROVIDER 时会。检查这个link

    【讨论】:

      【解决方案2】:

      前段时间我遇到了类似的问题。我的快速解决方法是在模拟器中安装一个名为“Fake GPS location”的应用程序。工作就像一个魅力,我可以通过在地图上指向它来设置我需要的任何位置。

      【讨论】:

      • 要在模拟器中安装应用程序,下载apk,启动模拟器,然后从命令行运行adb install app-name.apk
      猜你喜欢
      • 2021-11-14
      • 2013-02-10
      • 1970-01-01
      • 2018-06-11
      • 2016-10-25
      • 1970-01-01
      • 2014-08-07
      • 2014-09-04
      • 2018-05-19
      相关资源
      最近更新 更多