1

我正在开发 Android 应用程序。在此,我需要当我捕获图像或从图库中选择上传时,它应该显示当前位置,如城市等。我尝试使用 GPS,但是当我在 Android 模拟器上运行它时,它显示纬度和经度为 0 ,0 . 任何帮助将不胜感激。我该怎么办?

4

2 回答 2

0

您无法在模拟器中获取 GPS。但是有一个解决方法

telnet localhost 5554

连接到您的模拟器。如上图所示,然后

geo fix -23.234334 32.234344 4392

前两个是经度和纬度值,最后一个是以米为单位的高度。

现在从那里您可以从 GeoCoder http://developer.android.com/reference/android/location/Geocoder.html调用

 public List<Address> getFromLocation (double latitude, double longitude, int maxResults)

它将返回具有 getLocality 方法的地址列表

Geocoder gcd = new Geocoder(context, Locale.getDefault());
List<Address> addresses = gcd.getFromLocation(lat, lng, 1);
if (addresses.size() > 0) 
    Log.i("address",""+addresses.get(0).getLocality());

尝试各种值并检查!

于 2012-10-06T06:03:15.587 回答
0

显然你不能在模拟器中获取 GPS。模拟器不是真正的设备。您可以使用包含 lal-lon 详细信息的 .gpx 文件。您需要在程序运行时从 DDMS 上传此文件,以便在模拟器中获取虚拟 GPS 坐标。

您可以从google找到示例 .gpx

于 2012-10-06T05:48:54.460 回答