我想在Android模拟器中获得经度和纬度进行测试。
有谁能指导我如何实现这个目标吗?
如何将模拟器的位置设置为测试位置?
我想在Android模拟器中获得经度和纬度进行测试。
有谁能指导我如何实现这个目标吗?
如何将模拟器的位置设置为测试位置?
当前回答
1. Android Studio用户。
运行模拟器后进入Tools->Android->Android设备监视器
从位置控件组中单击“模拟器控件”选项卡更改。
2. Eclipse用户。
首先在Eclipse菜单中选择“窗口”,然后选择“打开透视图”,然后选择“DDMS”。 即窗口->打开透视->DDMS。
你会看到左边设备面板和右边你会看到不同的选项卡。 选择“模拟器控制”选项卡。
在底部你会看到位置控制面板。 选择“手动”选项卡。
在文本框中输入经度和纬度,然后单击发送按钮。 它会将位置发送给模拟器和应用程序。
3.使用telnet。
在run命令中键入this。
telnet localhost 5554
如果您不使用windows,您可以使用任何telnet客户端。
连接到telnet后,使用以下命令将您的位置发送到模拟器。
geo fix long lat
geo fix -121.45356 46.51119 4392
4. 使用基于浏览器的谷歌地图工具
有一个程序使用GWT和谷歌Maps API来启动一个基于浏览器的地图工具来设置模拟器中的GPS位置:
android-gps-emulator
其他回答
请参见获取用户位置
请参阅提供模拟位置数据。你会找到解决方法的。
这里没有人提到模拟器本身的内置解决方案,所以对于未来的访问者,我想用视觉效果来分享它。
首先,运行你的Android模拟器,点击菜单按钮(3点)如下所示:
然后在左侧窗格中,选择Location并根据需要更改坐标。按下发送按钮后,更改将立即生效(建议大家打开谷歌Maps以便更好地理解)。
Android Studio版本:2.3.3
此外,为了使不同的位置实时到达应用程序,可以使用GPX文件。从谷歌地图方向创建这个文件非常简单:
进入谷歌地图,选择一个位置,然后按“方向”进入第二个位置。 创建路由后,从浏览器复制一个链接 访问这个网站:https://mapstogpx.com,并将链接粘贴到“Let's Go”框 按下“Let's Go”键,即可下载GPX文件
使用“加载GPS/KML”按钮将创建的文件加载到模拟器中,选择速度,并按底部的绿色播放按钮。如下图所示,位置将实时发送。
在我自己的一个项目中,我开发了一个在线服务,可以为Android模拟器提供模拟位置。
它使用geo nmea而不是geo fix,这使得它可以设置速度,航线,精确的时间等,除了纬度/长度。
该服务只需要nc (netcat)命令行工具,不需要其他工具。
http://www.kisstech.ch/nmea/
在Linux系统中,通信端口被阻塞。导航终端到android SDK中的platform-tools文件夹,并启动以下命令:
./adb -s #{device_name} emu geo fix #{longitude} #{latitude}
The already mentioned multiple times answer to use the shell command "geo fix..." is the correct answer. But in case you use LocationClient.getLastLocation() to retrieve your data it is worth to mention that it will not work at first. The LocationClient class uses the Google Play Service to retrieve the coordinates. For me this started working after running the emulators maps app once. During the first start you are asked to allow google apps access to your location, which I guess does the trick.