Как установить время отправления / прибытия для Карт Google? - PullRequest
0 голосов
/ 22 мая 2019

Я пишу андроид-программу, в которой пользователь пишет в месте отправления, отправления и времени отправления или прибытия.После того, как пользователь нажал «Поиск», появилось несколько разных карточек, каждая из которых представляет разные виды транспорта (автомобиль, ходьба, езда на велосипеде и транзит).На каждой карточке есть кнопка, которая должна открывать приложение Google Maps с тем, что пользователь уже ввел в приложение.К сожалению, я не могу получить время отправления / прибытия, чтобы перенести.По умолчанию всегда используется значение «сейчас».

На данный момент я обнаружил, что вы должны добавить &arrival_time=[TIME] или &departure_time=[TIME].Но это не похоже на работу.Когда это добавлено, похоже, что его там вообще не было.

Вот пример ссылки, которую я сделал: https://maps.google.com/maps?saddr=57.70887000,11.97456000&daddr=59.32932350,18.06858080&dirflg=r&departure_time=1559310240

private void openMaps(Trip trip) {
        String uri = "https://maps.google.com/maps" +
                "?saddr="+trip.getOrigin()+
                "&daddr="+trip.getDestination()+
                "&dirflg="+getDirFlag(trip.getMode());

        if (trip.getMode().equals(TravelMode.TRANSIT)) {
            ZoneId zoneId = ZoneId.systemDefault(); // or: ZoneId.of("Europe/Oslo");
            if(trip.getIsDeparture()) {
                long epoch = trip.getDeparture().atZone(zoneId).toEpochSecond();
                uri += "&departure_time=" + epoch;
            } else {
                long epoch = trip.getArrival().atZone(zoneId).toEpochSecond();
                uri += "&arrival_time=" + epoch;
            }
        }
        System.out.println(uri);

        Intent mapIntent = new Intent(Intent.ACTION_VIEW, Uri.parse(uri));
        mapIntent.setPackage("com.google.android.apps.maps");
        mCtx.startActivity(mapIntent);
    }

Я ожидаю, что приложение Google Maps будет открыто спункт отправления, пункт назначения, способ транспорта и, если тип транспорта - TRANSIT, он также должен установить время отправления или прибытия в зависимости от того, что возвращает getIsDeparture ().Все работает, кроме времени прибытия / отправления

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...