Мобильное приложение для Android: карты помещений, маршруты для прогулок - PullRequest
5 голосов
/ 31 января 2012

Я хочу отредактировать пользовательскую карту Google (потому что мне нужно добавить тротуары для прогулок) со всеми ее оригинальными функциями для кампуса колледжа, а также создать интерьер здания, в котором находятся классные комнаты с обнаружением нескольких этажей, чтобы я мог реализовать его вмобильное приложение.Можно ли это сделать?А с джаваскриптом?Я думаю, что в зависимости от того, куда они прибывают в кампус, используя GPS, вместе с этим настроенным наложением карты Google, они могут дать здание и классную комнату, и он будет использовать заранее подготовленный метод «Найти кратчайший маршрут» API Карт Google где-то там.Сначала мне нужно собрать это с Android, затем, возможно, для Iphone.

1 Ответ

8 голосов
/ 31 января 2012

В нативном приложении Google Maps уже есть все описанные вами функции.

  • Google недавно выпустил картографирование в помещениях.Перейдите на maps.google.com / floorplans , чтобы загрузить планы этажей своих зданий.
  • Используйте Google Map Maker , чтобы добавить пешеходные дорожки в свой кампус.

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

Чтобы увидеть карты помещений в действии, используйте приложение «Карты» на Android для увеличенияIkea или посмотрите это видео .

Если у вас есть приложение, из которого вы хотите запустить приложение Карты, сделайте следующее:

Intent intent = new Intent(android.content.Intent.ACTION_VIEW, Uri.parse("http://maps.google.com/maps?saddr=START_LOCATION&daddr=DESTINATION_LOCATION&dirflg=w"));
if (isAppInstalled("com.google.android.apps.maps")) {
    intent.setClassName("com.google.android.apps.maps", "com.google.android.maps.MapsActivity");
}
startActivity(intent);


// helper function to check if Maps is installed
private boolean isAppInstalled(String uri) {
    PackageManager pm = getApplicationContext().getPackageManager();
    boolean app_installed = false;
    try {
        pm.getPackageInfo(uri, PackageManager.GET_ACTIVITIES);
        app_installed = true;
    } catch (PackageManager.NameNotFoundException e) {
        app_installed = false;
    }
    return app_installed;
}

(Код бесстыдно украден у здесь .)

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