Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/android/189.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
如何从Android应用程序重置Google地图中的路线_Android_Google Maps - Fatal编程技术网

如何从Android应用程序重置Google地图中的路线

如何从Android应用程序重置Google地图中的路线,android,google-maps,Android,Google Maps,当我的Android Google Maps API V2应用程序的用户在地图上选择一个标记时,我将一个名为MOCK_LOCATION的latlng设置为该标记的位置。当用户单击某个按钮时,我会在谷歌地图中显示路线,如果用户愿意,可以选择跟随导航 这一切都非常好…第一次。当用户切换回“我的应用”并选择不同的标记,然后再次单击按钮时,谷歌地图应用将显示第一条路线。我发现,如果我在“地图”应用程序中手动删除路线,则该按钮会再次工作 因此,这个问题的明显目的是:在再次加载带有新目的地/路线的应用程序之

当我的Android Google Maps API V2应用程序的用户在地图上选择一个标记时,我将一个名为MOCK_LOCATION的latlng设置为该标记的位置。当用户单击某个按钮时,我会在谷歌地图中显示路线,如果用户愿意,可以选择跟随导航

这一切都非常好…第一次。当用户切换回“我的应用”并选择不同的标记,然后再次单击按钮时,谷歌地图应用将显示第一条路线。我发现,如果我在“地图”应用程序中手动删除路线,则该按钮会再次工作

因此,这个问题的明显目的是:在再次加载带有新目的地/路线的应用程序之前,如何清除路线

非常感谢大家的帮助

见下面的代码:

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);
}

嗯-非常有趣的发展。我发现我在另一台设备上没有同样的问题(我测试的两台设备都是Galaxy S3手机)。结果是,一个不能正常工作的(出于我的目的)启用了一个名为“不要保持活动”的开发人员选项。禁用此选项后,两台设备都会按照我的预期处理地图应用程序中的活动。“不保留活动”选项(如果启用)将在用户离开时销毁活动。在测试多个活动应用程序时,启用这些选项相当危险。