Android - Как запустить Google Map намерения в режиме вождения?

Я могу запустить Google Maps с

Uri location = Uri.parse("geo:0,0");
Intent mapIntent = new Intent(Intent.ACTION_VIEW, location);
startActivity(mapIntent);

Как я могу запустить намерение в режиме вождения (без указания места назначения, если это не было предварительно установлено в Картах), чтобы оно выглядело как на скриншоте ниже?

введите описание изображения здесь

Я пробовал настройку mode=driving но при этом открывается обычная карта с выбранной вкладкой "вождение":

 Uri location = Uri.parse("geo:0,0?mode=driving");

2 ответа

Решение

Это запустит Google Maps в режиме вождения

    Intent intent = getPackageManager().getLaunchIntentForPackage("com.google.android.apps.maps");
    intent.setAction(Intent.ACTION_VIEW);
    intent.setData(Uri.parse("google.navigation:/?free=1&mode=d&entry=fnls"));
    startActivity(intent);

Я понимаю, что вы хотели бы открыть приложение Google Maps в режиме навигации. Для этого вы можете использовать URL-адрес, описанный в API URL-адресов Карт Google:

https://developers.google.com/maps/documentation/urls/guide

Следующий код должен сделать трюк, и я считаю, что вам нужно предоставить параметр назначения, чтобы открыть этот режим напрямую

String URL = "https://www.google.com/maps/dir/?api=1&travelmode=driving&dir_action=navigate&destination=Los+Angeles";
Uri location = Uri.parse(URL);
Intent mapIntent = new Intent(Intent.ACTION_VIEW, location);
startActivity(mapIntent);

Надеюсь, это поможет!

Другие вопросы по тегам