我正在通过Intent启动内置地图应用程序(7.1.0),但是我发送的请求网址似乎都没有。
我想知道url / uri参数的正确语法是什么。
我认为这是一个静态地图请求,但内置地图应用程序不是静态地图,这可能就是他们无法工作的原因。
较旧的样式v1请求字符串也不起作用。
自v2以来,甚至可以通过url / uri intent参数向地图应用发送请求吗?
任何帮助或提示都会非常感激(我只想使用内置的地图应用程序,并且觉得我不应该实现自己的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);
谢谢。
答案 0 :(得分:0)
只需指定查询参数及其值,然后省略 uri scheme (http://),服务器名称(地图。 googleapis.com)和资源路径(/ maps / api)。
然而,中心参数似乎不起作用(无论如何对我来说)
string url = "center=Brooklyn+Bridge,New+York,NY"
为了解决这个问题,我一起使用geo和q params
string url = "geo:0,0?q=Brooklyn+Bridge,New+York,NY";
OR
string url = "http://maps.google.com/maps?q=new+york";