当我的 Android Google Maps API V2 应用程序的用户在地图上选择一个标记时,我将一个名为 MOCK_LOCATION 的纬度设置为标记的位置。当用户然后单击某个按钮时,我会在 Google 地图中显示路线,用户可以在其中选择跟随导航(如果他们愿意)。
这一切都非常好......第一次。当用户切换回我的应用程序并选择不同的标记然后再次单击按钮时,Google 地图应用程序将显示第一条路线。我发现如果我在地图应用程序中手动删除路线,那么该按钮会再次起作用。
因此,这个问题的明显目的是:如何在再次使用新目的地/路线加载应用程序之前清除路线?
非常感谢所有帮助。
请参见下面的代码:
public void clickDrive(View view) {
if (MOCK_LOCATION == null) {
Toast.makeText(this, "Select a destination site first", Toast.LENGTH_SHORT).show();
return;
}
String uri = "http://maps.google.com/maps?daddr="+MOCK_LOCATION.latitude+","+MOCK_LOCATION.longitude+" (" + MOCK_SITE + ")&dirflg=d"; //d=driving, r=transport w=walking
Intent driveRoute = new Intent(Intent.ACTION_VIEW, Uri.parse(uri));
Log.i(LogTAG, uri);
if (isAppInstalled("com.google.android.apps.maps")) {
driveRoute.setClassName("com.google.android.apps.maps", "com.google.android.maps.MapsActivity");
}
startActivity(driveRoute);
}