0

我正在通过 Intent 启动内置的 Maps 应用程序(7.1.0),但是我发送的请求 url 似乎都没有工作。

我想知道 url/uri 参数的正确语法是什么。

我认为这是一个静态地图请求,但内置地图应用程序不是静态地图,这可能是它们不起作用的原因。

旧式 v1 请求字符串也不起作用。

自 v2 以来,甚至可以通过 url/uri 意图参数向地图应用程序发送请求吗?

任何帮助或提示将不胜感激(我只想使用内置的地图应用程序,并且觉得我不应该实现自己的 MapActivity/Fragment,因为我没有做任何花哨的事情,只是一个简单的情节) .

这是触发地图的代码:

//string url = "http://maps.googleapis.com/maps/api/staticmap?geo:50.95144,6.98725?q=50.95144,6.98725%20(Disneyland)&zoom=13&size=600x300&sensor=true";
//string url = "http://maps.googleapis.com/maps/api/staticmap?center=Brooklyn+Bridge,New+York,NY&zoom=13&size=600x300&sensor=true";
string url = "http://maps.googleapis.com/maps/api?center=Brooklyn+Bridge,New+York,NY";

Uri uri = Uri.Parse( url );

Intent intent = new Intent(Android.Content.Intent.ActionView, Uri.Parse(url));

intent.SetClassName("com.google.android.apps.maps", "com.google.android.maps.MapsActivity");

StartActivityForResult(intent, 0);

谢谢你。

4

1 回答 1

0

只需指定查询参数及其值,并省略uri 方案(http://)、服务器名称(maps.googleapis.com) 和资源路径(/maps/api)。

但是,中心参数似乎不起作用(无论如何对我来说)

string url = "center=Brooklyn+Bridge,New+York,NY"

因此,作为一种解决方法,我将 geo 和 q 参数一起使用

string url = "geo:0,0?q=Brooklyn+Bridge,New+York,NY";

或者

string url = "http://maps.google.com/maps?q=new+york";
于 2013-09-18T20:47:36.837 回答