在 Android 中使用谷歌地图查找最近的餐厅、咖啡店和杂货店

发布于 2024-10-07 09:08:06 字数 117 浏览 5 评论 0原文

我正在 android sdk 中工作并使用谷歌地图 api。我想知道是否有任何方法可以从用户当前位置找到最近的餐厅或咖啡店或杂货店。

有许多应用程序可用于此目的,但我想编写自己的应用程序以用于学习目的。

I am working in android sdk and using google maps api. I wanted to know if there is any way to find the nearest resturant or coffee shop or a grocery store from current location of the user.

There are many apps available for this purpose but i want to code my own application for learning purpose.

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(4

江城子 2024-10-14 09:08:06

这可能会有所帮助,不知道它是否适用于 Android。

http://code.google .com/apis/maps/documentation/places/

This may help, dont know if it works for android..

http://code.google.com/apis/maps/documentation/places/

眼前雾蒙蒙 2024-10-14 09:08:06

我在为 Android 制作导航程序时遇到了同样的问题。
我最终使用了 Yahoo!本地搜索网络服务,运行得很好。

您应该了解 Web 服务的工作原理,但基本上,您使用位置、查询(餐厅、咖啡等)和其他参数等参数发出 HTTP GET 请求,然后获得 XML 或 JSON 形式的响应(您的选择)。

如何处理结果取决于您

添加:
雅虎本地搜索结果默认为 XML。
这是如何在 Android 中发出请求的示例:

   public void doWebRequest()
   {
        try {
            HttpClient client = new DefaultHttpClient();  

            String url = "http://local.yahooapis.com/LocalSearchService/V3/localSearch?appid=YahooDemo&query=pizza&zip=94306&results=2";         
            HttpGet request = new HttpGet(url);

      HttpResponse response = client.execute(request);  
            BufferedInputStream bis = new BufferedInputStream(response.getEntity().getContent());
            SAXReader reader = new SAXReader();
            handleResponse(reader.read(bis));
        } catch (Exception e) {
         System.err.println(e);
        }
    }

    private void handleResponse(Document doc) {
 // doc is the XML response
    // process the results here
 }

I've had the same issue making a Navigation program for Android.
I ended up using Yahoo! Local Search web service, it worked pretty well.

You should understand how web services work, but basically you make an HTTP GET request with the parameters, such as Location, Query (restaurant, coffee, etc) and other parameters, and you get a response as XML or JSON (your choice).

What you do with the results is up to you

Additions:
Yahoo Local Search results are default to XML.
This is an example of how to make the request in Android:

   public void doWebRequest()
   {
        try {
            HttpClient client = new DefaultHttpClient();  

            String url = "http://local.yahooapis.com/LocalSearchService/V3/localSearch?appid=YahooDemo&query=pizza&zip=94306&results=2";         
            HttpGet request = new HttpGet(url);

      HttpResponse response = client.execute(request);  
            BufferedInputStream bis = new BufferedInputStream(response.getEntity().getContent());
            SAXReader reader = new SAXReader();
            handleResponse(reader.read(bis));
        } catch (Exception e) {
         System.err.println(e);
        }
    }

    private void handleResponse(Document doc) {
 // doc is the XML response
    // process the results here
 }
栖迟 2024-10-14 09:08:06

抱歉,Android 中没有这方面的 API。您可能可以使用一些 Web 服务来实现此目的。

There is no API for this in Android, sorry. There may be Web services you can use for this.

阳光下慵懒的猫 2024-10-14 09:08:06

也许这可以帮助..

Intent Intent =new Intent(Intent.ACTION_VIEW,Uri.parse("geo:0,0?q=Cafe"));
启动活动(意图);

May be this could help..

Intent intent =new Intent(Intent.ACTION_VIEW,Uri.parse("geo:0,0?q=Cafe"));
startActivity(intent);

~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文