Android: найдите самый быстрый маршрут между 2 или более точками, выходящими на улицы в GoogleMaps
Добавляю маркеры в мое приложение на GoogleMaps
мои маркеры всегда находятся на улицах. Например, у меня более 2 маркеров на карте, мне нужно нарисовать оптимальный маршрут между ними в зависимости от улиц. Есть ли какой-нибудь сервис, чтобы помочь мне, или мне нужно создать свой собственный алгоритм? До сих пор я немного работал с Google Elevation API
а также Google Direction API
, но сейчас мне нужно Google Roads API
найти оптимальные дороги между точками? Это должно быть что-то похожее на мои потребности.
1 ответ
Попробуйте использовать следующую библиотеку: https://github.com/akexorcist/Android-GoogleDirectionLibrary
GoogleDirection.withServerKey("YOUR_SERVER_API_KEY")
.from(new LatLng(37.7681994, -122.444538))
.to(new LatLng(37.7749003,-122.4034934))
.avoid(AvoidType.FERRIES)
.avoid(AvoidType.HIGHWAYS)
.execute(new DirectionCallback() {
@Override
public void onDirectionSuccess(Direction direction, String rawBody) {
if(direction.isOK()) {
// Do something
} else {
// Do something
}
}
@Override
public void onDirectionFailure(Throwable t) {
// Do something
}
});
Gradle
compile 'com.akexorcist:googledirectionlibrary:1.0.5'