如何将应用程序的位置坐标发送到任何地图应用程序?

时间:2018-02-09 19:01:21

标签: android

我已尝试发送到谷歌地图,但我希望我的应用程序询问您要打开哪个应用程序或只显示我的手机地图应用程序的选项,就像我们点击某些网址时一样,它显示所有浏览器在我们的手机中让我们选择。 任何帮助将不胜感激。

3 个答案:

答案 0 :(得分:0)

试试这段代码:

    Uri geoLocation = Uri.parse("geo:" + model.getLocation_lat() + "," + model.getLocation_lng());

// you can use this if you have other information like address of place
    Uri geoLocation = Uri.parse("geo:" + model.getLocation_lat() + "," + model.getLocation_lng()+ "?q=" + model.getAddress());    

    Intent intent = new Intent(Intent.ACTION_VIEW, geoLocation);
            startActivity(Intent.createChooser(intent, "choose an application "));

这就是你需要的一切。

答案 1 :(得分:0)

好问题:您可以使用ACTION_VIEW发送Intent,其中元数据是以架构地理位置开头的字符串:

这里描述: https://developer.android.com/guide/components/intents-common.html#ViewMap

这很简单:

Intent intent = new Intent(Intent.ACTION_VIEW);
intent.setData(Uri.parse("geo:47.6,-122.3?z=11");
startActivity(intent);

在我提供的链接中发送更多参数的更多选项。

答案 2 :(得分:0)

这将为您提供两个在浏览器或谷歌地图中打开的选项

                Intent intent = new Intent(Intent.ACTION_VIEW);
                intent.setData(Uri.parse("http://maps.google.co.in/maps?q="+your address);
                if (intent.resolveActivity(getPackageManager()) != null) 
                {
                    startActivity(intent);
                }