我想在Android模拟器中获得经度和纬度进行测试。

有谁能指导我如何实现这个目标吗?

如何将模拟器的位置设置为测试位置?


当前回答

在模拟中选择扩展控件。之后,您可以通过搜索或拖动映射到要设置的位置来设置模拟的位置。

最后点击SET LOCATION按钮保存。

其他回答

假设你已经设置并运行了mapview:

MapView mapView = (MapView) findViewById(R.id.mapview);
final MyLocationOverlay myLocation = new MyLocationOverlay(this, mapView);

mapView.getOverlays().add(myLocation);
myLocation.enableMyLocation();

myLocation.runOnFirstFix(new Runnable() {
    public void run() {
        GeoPoint pt = myLocation.getMyLocation();
    }
});

您需要在清单中获得以下许可:

<uses-permission android:name="android.permission.ACCESS_FINE_LOCATION"/>

要从Eclipse向模拟器发送模拟坐标,请转到“窗口”菜单,选择“显示视图”>“其他”>“模拟器控件”,您可以从出现的模拟器控制窗格中发送坐标。

对于Android Studio用户:

运行模拟器,

然后进入“工具->Android ->Android设备监视器”

打开模拟器控件选项卡,并使用位置控件组。

在我自己的一个项目中,我开发了一个在线服务,可以为Android模拟器提供模拟位置。

它使用geo nmea而不是geo fix,这使得它可以设置速度,航线,精确的时间等,除了纬度/长度。

该服务只需要nc (netcat)命令行工具,不需要其他工具。

http://www.kisstech.ch/nmea/

我使用eclipse插件DDMS功能发送GPS。

如果你使用Android Studio (1.3):

点击菜单“工具” “Android” “Android设备监视器” 单击当前模拟器 选项卡“模拟器控制” 进入“位置控制”,输入纬度和高度