【问题标题】:Android: Get directions from Google Map V2 providing addressAndroid:从提供地址的 Google Map V2 获取路线
【发布时间】:2023-04-06 03:56:01
【问题描述】:

我正在尝试从我的位置获取到 android Google map v2 中提供的地址的方向,因为我正在使用以下代码。

String daddr = AddressLine1() + " " + AddressLine2() + " " + City() + " " + Pincode();
Intent i = new Intent(android.content.Intent.ACTION_VIEW, Uri.parse("http://maps.google.com/maps?saddr=" + "" + "&daddr=" + daddr));
                    startActivity(i);

在上面的代码中“saddr=”它是空白的,所以它总是取当前位置,但在“daddr=”中取部分地址,比如地址是"Dcusa Inc, US Highway 22, Mountainside, NJ, United States",它只需要"Dcusa Inc, "这么多问自动完成。但我想采取完整的地址。在将 daddr 数据发送到显示完整地址的活动之前,我已经调试了代码。我现在不知道该怎么办,请帮助我如何触发它..

【问题讨论】:

    标签: android google-maps google-maps-android-api-2 google-maps-api-2


    【解决方案1】:

    直接你不能这样做。首先,您必须获取源地址和目标地址的纬度和经度。您可以参考下面提到的链接获取坐标。 TO Get geopoints using address

    从此参考中您将获得纬度和经度,并且您可以使用意图将值传递给地图 url。 然后它会工作。

    Intent intent = new Intent(android.content.Intent.ACTION_VIEW, 
                        Uri.parse("http://maps.google.com/maps?saddr=xx.xx,xx.xx&daddr=xx.xx,xx.xx"));
                startActivity(intent);
    

    这里的xx.xx表示经纬度。

    【讨论】:

    • 您不应将源地址留空。您必须提供当前位置的纬度和经度,还必须使用“获取地理点”链接获取目标地址的纬度和经度。将这两个值传递给意图.
    【解决方案2】:

    也许是因为空间。 您需要对地址字符串进行 URL 编码,因为它将是地图 URL 中的一个有效参数

    【讨论】:

      最近更新 更多