2012-02-11 177 views
1

我想在我的应用程序中实现一个功能,在那里我可以看到我的当前位置,如果位置不准确,我甚至可以选择手动设置它。如何才能做到这一点?我应该使用Web服务还是什么?如何以编程方式获取/设置当前位置?

修订

想我是不是我的问题很清楚。对不起。 我目前能够获得我的经验。但有时候它不是很准确。在这种情况下,我应该能够输入我的地名(状态),我想接受标准经纬度为那个地方..我只是想知道如何实现它..

+0

请添加更多的细节,你已经尝试过你的问题是什么。 – poitroae 2012-02-11 15:35:57

+0

当你说“手动设置选项,如果位置不准确”,这是特定于你的应用程序还是整个手机?换句话说,如果您在堪萨斯州中部手动指定位置,Google地图(以及任何其他位置感知应用程序)是否会在堪萨斯州中显示您? – Mendhak 2012-02-11 15:39:03

+0

[这里](http://developer.android.com/guide/topics/location/index.html)是Android中定位服务的概述,您可能需要。 – 2012-02-11 15:41:14

回答

2

这里有一点MockLocationProvider I类已经为我的目的而写。它只是改变位置对象的经度和纬度并将其返回。

public class MockLocationProvider { 

public static Location getMockLocation(double latitude, double longitude) { 
    Location location = new Location(LocationManager.GPS_PROVIDER); 
    location.setLatitude(latitude); 
    location.setLongitude(longitude); 
    return location; 
} 
} 

但是,不能真正理解为什么你想在实际应用中使用它。我只是用来测试。无论如何,希望这有助于。

+0

我知道这是一个老人,但说例如我实现这个代码。如果我在手机上打开GPS,它是否会按照我上面设置的纬度和长度来检测我的起点?如果没有,你能否建议我可以研究什么样的课程/服务来完成这个任务。 – andre3wap 2016-07-11 13:25:01

+0

@ andre3wap这里是一个很好的开始:http://www.androidhive.info/2012/07/android-gps-location-manager-tutorial/ – 2016-07-15 08:20:51

0

您可能需要反向地理编码(http://en.wikipedia.org/wiki/Reverse_geocoding)。有一些免费的服务。搜索“反向地理编码”,你会发现一些免费的选项。我从来没有使用过它们,所以我不能推荐任何。

+0

谢谢...将搜索并看到... – 2012-02-14 08:40:14

0

你需要一个地理编码器,一个将街道,城市名称转换为纬度的api。和lng。值。

询问是否需要更多的帮助等。
朱利叶斯·