├── map-sample ├── local.defaults.properties ├── gradle.properties ├── gradle │ └── wrapper │ │ ├── gradle-wrapper.jar │ │ └── gradle-wrapper.properties ├── app │ └── src │ │ └── main │ │ ├── res │ │ ├── drawable-hdpi │ │ │ ├── arrow.png │ │ │ ├── pegman.png │ │ │ ├── badge_nsw.png │ │ │ ├── badge_qld.png │ │ │ ├── badge_sa.png │ │ │ ├── ic_launcher.png │ │ │ ├── badge_victoria.png │ │ │ └── custom_info_bubble.9.png │ │ ├── drawable-mdpi │ │ │ ├── arrow.png │ │ │ ├── pegman.png │ │ │ ├── ic_launcher.png │ │ │ └── custom_info_bubble.9.png │ │ ├── drawable-nodpi │ │ │ ├── ook.png │ │ │ └── chevron.png │ │ ├── drawable-xhdpi │ │ │ ├── pegman.png │ │ │ └── ic_launcher.png │ │ ├── drawable-xxhdpi │ │ │ ├── pegman.png │ │ │ └── ic_launcher.png │ │ ├── drawable │ │ │ ├── harbour_bridge.jpg │ │ │ ├── newark_nj_1922.png │ │ │ └── newark_prudential_sunny.jpg │ │ ├── drawable-ldpi │ │ │ └── ic_launcher.png │ │ ├── drawable-xxxhdpi │ │ │ └── ic_launcher.png │ │ ├── raw │ │ │ ├── outline_style.json │ │ │ ├── blue_essence.json │ │ │ ├── blue_water.json │ │ │ ├── pale_dawn.json │ │ │ ├── light_dream.json │ │ │ └── black_and_white.json │ │ ├── layout │ │ │ ├── programmatic_demo.xml │ │ │ ├── street_view_panorama_view_demo.xml │ │ │ ├── text_fragment.xml │ │ │ ├── indoor_demo.xml │ │ │ ├── map_in_pager_demo.xml │ │ │ ├── raw_view_demo_maps_flavor.xml │ │ │ ├── day_night_circle_demo_maps_flavor.xml │ │ │ ├── raw_view_demo_nav_flavor.xml │ │ │ ├── day_night_circle_demo_nav_flavor.xml │ │ │ ├── marker_close_info_window_on_retap_demo_maps_flavor.xml │ │ │ ├── basic_demo_maps_flavor.xml │ │ │ ├── marker_close_info_window_on_retap_demo_nav_flavor.xml │ │ │ ├── street_view_panorama_basic_demo.xml │ │ │ ├── basic_demo_nav_flavor.xml │ │ │ ├── width_control_fragment.xml │ │ │ ├── feature.xml │ │ │ ├── tags_demo_maps_flavor.xml │ │ │ ├── tags_demo_nav_flavor.xml │ │ │ ├── save_state_demo_maps_flavor.xml │ │ │ ├── save_state_demo_nav_flavor.xml │ │ │ ├── other_options_control_fragment.xml │ │ │ ├── options_demo_maps_flavor.xml │ │ │ ├── options_demo_nav_flavor.xml │ │ │ ├── tile_coordinate_demo_maps_flavor.xml │ │ │ ├── events_demo_maps_flavor.xml │ │ │ ├── tile_coordinate_demo_nav_flavor.xml │ │ │ ├── events_demo_nav_flavor.xml │ │ │ ├── joint_control_fragment.xml │ │ │ ├── polyline_color_control_fragment.xml │ │ │ ├── background_color_customization_programmatic_demo_maps_flavor.xml │ │ │ ├── background_color_customization_programmatic_demo_nav_flavor.xml │ │ │ ├── main.xml │ │ │ ├── background_color_customization_demo_maps_flavor.xml │ │ │ ├── background_color_customization_demo_nav_flavor.xml │ │ │ ├── split_street_view_panorama_and_map_demo_maps_flavor.xml │ │ │ ├── split_street_view_panorama_and_map_demo_nav_flavor.xml │ │ │ ├── custom_info_contents.xml │ │ │ ├── my_location_demo_maps_flavor.xml │ │ │ ├── custom_info_window.xml │ │ │ ├── my_location_demo_nav_flavor.xml │ │ │ ├── street_view_panorama_events_demo.xml │ │ │ ├── top_styles_demo_maps_flavor.xml │ │ │ ├── top_styles_demo_nav_flavor.xml │ │ │ ├── layers_demo_maps_flavor.xml │ │ │ ├── layers_demo_nav_flavor.xml │ │ │ ├── spans_control_fragment.xml │ │ │ ├── street_view_anywhere_demo.xml │ │ │ ├── snapshot_demo_maps_flavor.xml │ │ │ ├── snapshot_demo_nav_flavor.xml │ │ │ ├── pattern_control_fragment.xml │ │ │ ├── street_view_multiple_panorama_demo.xml │ │ │ ├── polygon_color_control_fragment.xml │ │ │ ├── street_view_panorama_options_demo.xml │ │ │ └── indoor_multimap_demo.xml │ │ ├── values │ │ │ └── common_strings.xml │ │ └── layout-land │ │ │ ├── snapshot_demo_nav_flavor.xml │ │ │ └── snapshot_demo_maps_flavor.xml │ │ └── java │ │ └── com │ │ └── example │ │ └── mapdemo │ │ ├── PolygonControlFragment.java │ │ ├── PolylineControlFragment.java │ │ ├── ActivityIntents.java │ │ ├── ConversionUtils.java │ │ ├── DemoDetails.java │ │ ├── IndoorDemoActivity.java │ │ ├── IndoorMultiMapDemoActivity.java │ │ ├── MoonTileProvider.java │ │ ├── OptionsDemoActivity.java │ │ ├── FeatureView.java │ │ ├── AnimationManager.java │ │ ├── MoveDirection.java │ │ ├── StreetViewPanoramaBasicDemoActivity.java │ │ ├── PolylineOtherOptionsControlFragment.java │ │ └── StreetViewMultiplePanoramaDemoActivity.java ├── settings.gradle ├── README.md └── build.gradle ├── .gitignore ├── navigation-sample ├── local.defaults.properties ├── gradle.properties ├── gradle │ └── wrapper │ │ ├── gradle-wrapper.jar │ │ └── gradle-wrapper.properties ├── app │ ├── src │ │ └── main │ │ │ ├── res │ │ │ ├── drawable │ │ │ │ ├── ic_merge.png │ │ │ │ ├── ic_road.png │ │ │ │ ├── ic_depart.png │ │ │ │ ├── ic_ferry_boat.png │ │ │ │ ├── ic_fork_left.png │ │ │ │ ├── ic_fork_right.png │ │ │ │ ├── ic_merge_left.png │ │ │ │ ├── ic_straight.png │ │ │ │ ├── ic_turn_left.png │ │ │ │ ├── ic_turn_right.png │ │ │ │ ├── ic_destination.png │ │ │ │ ├── ic_ferry_train.png │ │ │ │ ├── ic_merge_right.png │ │ │ │ ├── ic_turn_sharp_left.png │ │ │ │ ├── ic_destination_left.png │ │ │ │ ├── ic_destination_right.png │ │ │ │ ├── ic_turn_sharp_right.png │ │ │ │ ├── ic_turn_slight_left.png │ │ │ │ ├── ic_turn_slight_right.png │ │ │ │ ├── ic_roundabout_clockwise.png │ │ │ │ ├── ic_turn_u_turn_clockwise.png │ │ │ │ ├── ic_roundabout_exit_clockwise.png │ │ │ │ ├── ic_roundabout_left_clockwise.png │ │ │ │ ├── ic_roundabout_counterclockwise.png │ │ │ │ ├── ic_roundabout_right_clockwise.png │ │ │ │ ├── ic_roundabout_u_turn_clockwise.png │ │ │ │ ├── ic_roundabout_straight_clockwise.png │ │ │ │ ├── ic_turn_u_turn_counterclockwise.png │ │ │ │ ├── ic_roundabout_exit_counterclockwise.png │ │ │ │ ├── ic_roundabout_left_counterclockwise.png │ │ │ │ ├── ic_roundabout_sharp_left_clockwise.png │ │ │ │ ├── ic_roundabout_sharp_right_clockwise.png │ │ │ │ ├── ic_roundabout_slight_left_clockwise.png │ │ │ │ ├── ic_roundabout_right_counterclockwise.png │ │ │ │ ├── ic_roundabout_slight_right_clockwise.png │ │ │ │ ├── ic_roundabout_u_turn_counterclockwise.png │ │ │ │ ├── ic_roundabout_straight_counterclockwise.png │ │ │ │ ├── ic_roundabout_sharp_left_counterclockwise.png │ │ │ │ ├── ic_roundabout_sharp_right_counterclockwise.png │ │ │ │ ├── ic_roundabout_slight_left_counterclockwise.png │ │ │ │ └── ic_roundabout_slight_right_counterclockwise.png │ │ │ ├── mipmap-hdpi │ │ │ │ └── ic_launcher.png │ │ │ ├── mipmap-mdpi │ │ │ │ └── ic_launcher.png │ │ │ ├── mipmap-xhdpi │ │ │ │ └── ic_launcher.png │ │ │ ├── mipmap-xxhdpi │ │ │ │ └── ic_launcher.png │ │ │ ├── mipmap-xxxhdpi │ │ │ │ └── ic_launcher.png │ │ │ ├── drawable-hdpi │ │ │ │ ├── google_maps_logo.png │ │ │ │ └── ic_navigation_white_24dp.png │ │ │ ├── drawable-mdpi │ │ │ │ ├── google_maps_logo.png │ │ │ │ └── ic_navigation_white_24dp.png │ │ │ ├── drawable-xhdpi │ │ │ │ ├── google_maps_logo.png │ │ │ │ └── ic_navigation_white_24dp.png │ │ │ ├── drawable-xxhdpi │ │ │ │ ├── google_maps_logo.png │ │ │ │ └── ic_navigation_white_24dp.png │ │ │ ├── drawable-xxxhdpi │ │ │ │ ├── google_maps_logo.png │ │ │ │ └── ic_navigation_white_24dp.png │ │ │ ├── values │ │ │ │ ├── dimens.xml │ │ │ │ ├── colors.xml │ │ │ │ └── styles.xml │ │ │ ├── layout │ │ │ │ ├── activity_swapping_map_and_nav.xml │ │ │ │ ├── control_panels.xml │ │ │ │ ├── spinner_item.xml │ │ │ │ ├── activity_splash_screen.xml │ │ │ │ ├── activity_place_picker.xml │ │ │ │ ├── main.xml │ │ │ │ ├── controls_nav.xml │ │ │ │ ├── control_toggles_container.xml │ │ │ │ ├── controls_map.xml │ │ │ │ ├── controls_view.xml │ │ │ │ ├── activity_nav_view.xml │ │ │ │ └── activity_nav_fragment.xml │ │ │ ├── values-w820dp │ │ │ │ └── dimens.xml │ │ │ └── menu │ │ │ │ ├── menu_default.xml │ │ │ │ └── menu_swapping_map_and_nav.xml │ │ │ └── java │ │ │ └── com │ │ │ └── example │ │ │ └── navigationapidemo │ │ │ ├── SampleAppGlideModule.kt │ │ │ ├── InitializedMapScope.kt │ │ │ ├── InitializedNavScope.kt │ │ │ └── MainActivity.kt │ └── proguard-rules.pro ├── settings.gradle ├── README.md └── build.gradle ├── .github ├── blunderbuss.yml └── workflows │ └── android.yml ├── NOTICE.txt ├── CONTRIBUTING.md └── README.md /map-sample/local.defaults.properties: -------------------------------------------------------------------------------- 1 | MAPS_API_KEY=YOUR_API_KEY -------------------------------------------------------------------------------- /.gitignore: -------------------------------------------------------------------------------- 1 | build/ 2 | .gradle/ 3 | local.properties 4 | .idea/ 5 | -------------------------------------------------------------------------------- /navigation-sample/local.defaults.properties: -------------------------------------------------------------------------------- 1 | MAPS_API_KEY=YOUR_API_KEY -------------------------------------------------------------------------------- /map-sample/gradle.properties: -------------------------------------------------------------------------------- 1 | android.useAndroidX=true 2 | org.gradle.jvmargs=-Xmx4096m -XX:+HeapDumpOnOutOfMemoryError -Dfile.encoding=UTF-8 -------------------------------------------------------------------------------- /.github/blunderbuss.yml: -------------------------------------------------------------------------------- 1 | assign_issues: 2 | - cwoodwar6 3 | - ArturoSalazarB16 4 | assign_prs: 5 | - cwoodwar6 6 | - ArturoSalazarB16 7 | -------------------------------------------------------------------------------- /navigation-sample/gradle.properties: -------------------------------------------------------------------------------- 1 | android.useAndroidX=true 2 | org.gradle.jvmargs=-Xmx4096m -XX:+HeapDumpOnOutOfMemoryError -Dfile.encoding=UTF-8 -------------------------------------------------------------------------------- /map-sample/gradle/wrapper/gradle-wrapper.jar: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/googlemaps-samples/android-navigation-samples/HEAD/map-sample/gradle/wrapper/gradle-wrapper.jar -------------------------------------------------------------------------------- /map-sample/app/src/main/res/drawable-hdpi/arrow.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/googlemaps-samples/android-navigation-samples/HEAD/map-sample/app/src/main/res/drawable-hdpi/arrow.png -------------------------------------------------------------------------------- /map-sample/app/src/main/res/drawable-mdpi/arrow.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/googlemaps-samples/android-navigation-samples/HEAD/map-sample/app/src/main/res/drawable-mdpi/arrow.png -------------------------------------------------------------------------------- /map-sample/app/src/main/res/drawable-nodpi/ook.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/googlemaps-samples/android-navigation-samples/HEAD/map-sample/app/src/main/res/drawable-nodpi/ook.png -------------------------------------------------------------------------------- /navigation-sample/gradle/wrapper/gradle-wrapper.jar: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/googlemaps-samples/android-navigation-samples/HEAD/navigation-sample/gradle/wrapper/gradle-wrapper.jar -------------------------------------------------------------------------------- /map-sample/app/src/main/res/drawable-hdpi/pegman.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/googlemaps-samples/android-navigation-samples/HEAD/map-sample/app/src/main/res/drawable-hdpi/pegman.png -------------------------------------------------------------------------------- /map-sample/app/src/main/res/drawable-mdpi/pegman.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/googlemaps-samples/android-navigation-samples/HEAD/map-sample/app/src/main/res/drawable-mdpi/pegman.png -------------------------------------------------------------------------------- /map-sample/app/src/main/res/drawable-xhdpi/pegman.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/googlemaps-samples/android-navigation-samples/HEAD/map-sample/app/src/main/res/drawable-xhdpi/pegman.png -------------------------------------------------------------------------------- /map-sample/app/src/main/res/drawable-hdpi/badge_nsw.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/googlemaps-samples/android-navigation-samples/HEAD/map-sample/app/src/main/res/drawable-hdpi/badge_nsw.png -------------------------------------------------------------------------------- /map-sample/app/src/main/res/drawable-hdpi/badge_qld.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/googlemaps-samples/android-navigation-samples/HEAD/map-sample/app/src/main/res/drawable-hdpi/badge_qld.png -------------------------------------------------------------------------------- /map-sample/app/src/main/res/drawable-hdpi/badge_sa.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/googlemaps-samples/android-navigation-samples/HEAD/map-sample/app/src/main/res/drawable-hdpi/badge_sa.png -------------------------------------------------------------------------------- /map-sample/app/src/main/res/drawable-nodpi/chevron.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/googlemaps-samples/android-navigation-samples/HEAD/map-sample/app/src/main/res/drawable-nodpi/chevron.png -------------------------------------------------------------------------------- /map-sample/app/src/main/res/drawable-xxhdpi/pegman.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/googlemaps-samples/android-navigation-samples/HEAD/map-sample/app/src/main/res/drawable-xxhdpi/pegman.png -------------------------------------------------------------------------------- /map-sample/app/src/main/res/drawable/harbour_bridge.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/googlemaps-samples/android-navigation-samples/HEAD/map-sample/app/src/main/res/drawable/harbour_bridge.jpg -------------------------------------------------------------------------------- /map-sample/app/src/main/res/drawable/newark_nj_1922.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/googlemaps-samples/android-navigation-samples/HEAD/map-sample/app/src/main/res/drawable/newark_nj_1922.png -------------------------------------------------------------------------------- /navigation-sample/app/src/main/res/drawable/ic_merge.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/googlemaps-samples/android-navigation-samples/HEAD/navigation-sample/app/src/main/res/drawable/ic_merge.png -------------------------------------------------------------------------------- /navigation-sample/app/src/main/res/drawable/ic_road.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/googlemaps-samples/android-navigation-samples/HEAD/navigation-sample/app/src/main/res/drawable/ic_road.png -------------------------------------------------------------------------------- /map-sample/app/src/main/res/drawable-hdpi/ic_launcher.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/googlemaps-samples/android-navigation-samples/HEAD/map-sample/app/src/main/res/drawable-hdpi/ic_launcher.png -------------------------------------------------------------------------------- /map-sample/app/src/main/res/drawable-ldpi/ic_launcher.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/googlemaps-samples/android-navigation-samples/HEAD/map-sample/app/src/main/res/drawable-ldpi/ic_launcher.png -------------------------------------------------------------------------------- /map-sample/app/src/main/res/drawable-mdpi/ic_launcher.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/googlemaps-samples/android-navigation-samples/HEAD/map-sample/app/src/main/res/drawable-mdpi/ic_launcher.png -------------------------------------------------------------------------------- /map-sample/app/src/main/res/drawable-xhdpi/ic_launcher.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/googlemaps-samples/android-navigation-samples/HEAD/map-sample/app/src/main/res/drawable-xhdpi/ic_launcher.png -------------------------------------------------------------------------------- /navigation-sample/app/src/main/res/drawable/ic_depart.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/googlemaps-samples/android-navigation-samples/HEAD/navigation-sample/app/src/main/res/drawable/ic_depart.png -------------------------------------------------------------------------------- /map-sample/app/src/main/res/drawable-hdpi/badge_victoria.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/googlemaps-samples/android-navigation-samples/HEAD/map-sample/app/src/main/res/drawable-hdpi/badge_victoria.png -------------------------------------------------------------------------------- /map-sample/app/src/main/res/drawable-xxhdpi/ic_launcher.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/googlemaps-samples/android-navigation-samples/HEAD/map-sample/app/src/main/res/drawable-xxhdpi/ic_launcher.png -------------------------------------------------------------------------------- /map-sample/app/src/main/res/drawable-xxxhdpi/ic_launcher.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/googlemaps-samples/android-navigation-samples/HEAD/map-sample/app/src/main/res/drawable-xxxhdpi/ic_launcher.png -------------------------------------------------------------------------------- /navigation-sample/app/src/main/res/drawable/ic_ferry_boat.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/googlemaps-samples/android-navigation-samples/HEAD/navigation-sample/app/src/main/res/drawable/ic_ferry_boat.png -------------------------------------------------------------------------------- /navigation-sample/app/src/main/res/drawable/ic_fork_left.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/googlemaps-samples/android-navigation-samples/HEAD/navigation-sample/app/src/main/res/drawable/ic_fork_left.png -------------------------------------------------------------------------------- /navigation-sample/app/src/main/res/drawable/ic_fork_right.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/googlemaps-samples/android-navigation-samples/HEAD/navigation-sample/app/src/main/res/drawable/ic_fork_right.png -------------------------------------------------------------------------------- /navigation-sample/app/src/main/res/drawable/ic_merge_left.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/googlemaps-samples/android-navigation-samples/HEAD/navigation-sample/app/src/main/res/drawable/ic_merge_left.png -------------------------------------------------------------------------------- /navigation-sample/app/src/main/res/drawable/ic_straight.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/googlemaps-samples/android-navigation-samples/HEAD/navigation-sample/app/src/main/res/drawable/ic_straight.png -------------------------------------------------------------------------------- /navigation-sample/app/src/main/res/drawable/ic_turn_left.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/googlemaps-samples/android-navigation-samples/HEAD/navigation-sample/app/src/main/res/drawable/ic_turn_left.png -------------------------------------------------------------------------------- /navigation-sample/app/src/main/res/drawable/ic_turn_right.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/googlemaps-samples/android-navigation-samples/HEAD/navigation-sample/app/src/main/res/drawable/ic_turn_right.png -------------------------------------------------------------------------------- /navigation-sample/app/src/main/res/drawable/ic_destination.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/googlemaps-samples/android-navigation-samples/HEAD/navigation-sample/app/src/main/res/drawable/ic_destination.png -------------------------------------------------------------------------------- /navigation-sample/app/src/main/res/drawable/ic_ferry_train.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/googlemaps-samples/android-navigation-samples/HEAD/navigation-sample/app/src/main/res/drawable/ic_ferry_train.png -------------------------------------------------------------------------------- /navigation-sample/app/src/main/res/drawable/ic_merge_right.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/googlemaps-samples/android-navigation-samples/HEAD/navigation-sample/app/src/main/res/drawable/ic_merge_right.png -------------------------------------------------------------------------------- /navigation-sample/app/src/main/res/mipmap-hdpi/ic_launcher.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/googlemaps-samples/android-navigation-samples/HEAD/navigation-sample/app/src/main/res/mipmap-hdpi/ic_launcher.png -------------------------------------------------------------------------------- /navigation-sample/app/src/main/res/mipmap-mdpi/ic_launcher.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/googlemaps-samples/android-navigation-samples/HEAD/navigation-sample/app/src/main/res/mipmap-mdpi/ic_launcher.png -------------------------------------------------------------------------------- /navigation-sample/app/src/main/res/mipmap-xhdpi/ic_launcher.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/googlemaps-samples/android-navigation-samples/HEAD/navigation-sample/app/src/main/res/mipmap-xhdpi/ic_launcher.png -------------------------------------------------------------------------------- /map-sample/app/src/main/res/drawable-hdpi/custom_info_bubble.9.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/googlemaps-samples/android-navigation-samples/HEAD/map-sample/app/src/main/res/drawable-hdpi/custom_info_bubble.9.png -------------------------------------------------------------------------------- /map-sample/app/src/main/res/drawable-mdpi/custom_info_bubble.9.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/googlemaps-samples/android-navigation-samples/HEAD/map-sample/app/src/main/res/drawable-mdpi/custom_info_bubble.9.png -------------------------------------------------------------------------------- /map-sample/app/src/main/res/drawable/newark_prudential_sunny.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/googlemaps-samples/android-navigation-samples/HEAD/map-sample/app/src/main/res/drawable/newark_prudential_sunny.jpg -------------------------------------------------------------------------------- /navigation-sample/app/src/main/res/drawable/ic_turn_sharp_left.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/googlemaps-samples/android-navigation-samples/HEAD/navigation-sample/app/src/main/res/drawable/ic_turn_sharp_left.png -------------------------------------------------------------------------------- /navigation-sample/app/src/main/res/mipmap-xxhdpi/ic_launcher.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/googlemaps-samples/android-navigation-samples/HEAD/navigation-sample/app/src/main/res/mipmap-xxhdpi/ic_launcher.png -------------------------------------------------------------------------------- /navigation-sample/app/src/main/res/mipmap-xxxhdpi/ic_launcher.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/googlemaps-samples/android-navigation-samples/HEAD/navigation-sample/app/src/main/res/mipmap-xxxhdpi/ic_launcher.png -------------------------------------------------------------------------------- /navigation-sample/app/src/main/res/drawable/ic_destination_left.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/googlemaps-samples/android-navigation-samples/HEAD/navigation-sample/app/src/main/res/drawable/ic_destination_left.png -------------------------------------------------------------------------------- /navigation-sample/app/src/main/res/drawable/ic_destination_right.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/googlemaps-samples/android-navigation-samples/HEAD/navigation-sample/app/src/main/res/drawable/ic_destination_right.png -------------------------------------------------------------------------------- /navigation-sample/app/src/main/res/drawable/ic_turn_sharp_right.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/googlemaps-samples/android-navigation-samples/HEAD/navigation-sample/app/src/main/res/drawable/ic_turn_sharp_right.png -------------------------------------------------------------------------------- /navigation-sample/app/src/main/res/drawable/ic_turn_slight_left.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/googlemaps-samples/android-navigation-samples/HEAD/navigation-sample/app/src/main/res/drawable/ic_turn_slight_left.png -------------------------------------------------------------------------------- /navigation-sample/app/src/main/res/drawable/ic_turn_slight_right.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/googlemaps-samples/android-navigation-samples/HEAD/navigation-sample/app/src/main/res/drawable/ic_turn_slight_right.png -------------------------------------------------------------------------------- /navigation-sample/app/src/main/res/drawable-hdpi/google_maps_logo.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/googlemaps-samples/android-navigation-samples/HEAD/navigation-sample/app/src/main/res/drawable-hdpi/google_maps_logo.png -------------------------------------------------------------------------------- /navigation-sample/app/src/main/res/drawable-mdpi/google_maps_logo.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/googlemaps-samples/android-navigation-samples/HEAD/navigation-sample/app/src/main/res/drawable-mdpi/google_maps_logo.png -------------------------------------------------------------------------------- /navigation-sample/app/src/main/res/drawable-xhdpi/google_maps_logo.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/googlemaps-samples/android-navigation-samples/HEAD/navigation-sample/app/src/main/res/drawable-xhdpi/google_maps_logo.png -------------------------------------------------------------------------------- /navigation-sample/app/src/main/res/drawable-xxhdpi/google_maps_logo.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/googlemaps-samples/android-navigation-samples/HEAD/navigation-sample/app/src/main/res/drawable-xxhdpi/google_maps_logo.png -------------------------------------------------------------------------------- /navigation-sample/app/src/main/res/drawable/ic_roundabout_clockwise.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/googlemaps-samples/android-navigation-samples/HEAD/navigation-sample/app/src/main/res/drawable/ic_roundabout_clockwise.png -------------------------------------------------------------------------------- /navigation-sample/app/src/main/res/drawable-xxxhdpi/google_maps_logo.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/googlemaps-samples/android-navigation-samples/HEAD/navigation-sample/app/src/main/res/drawable-xxxhdpi/google_maps_logo.png -------------------------------------------------------------------------------- /navigation-sample/app/src/main/res/drawable/ic_turn_u_turn_clockwise.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/googlemaps-samples/android-navigation-samples/HEAD/navigation-sample/app/src/main/res/drawable/ic_turn_u_turn_clockwise.png -------------------------------------------------------------------------------- /navigation-sample/app/src/main/res/drawable/ic_roundabout_exit_clockwise.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/googlemaps-samples/android-navigation-samples/HEAD/navigation-sample/app/src/main/res/drawable/ic_roundabout_exit_clockwise.png -------------------------------------------------------------------------------- /navigation-sample/app/src/main/res/drawable/ic_roundabout_left_clockwise.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/googlemaps-samples/android-navigation-samples/HEAD/navigation-sample/app/src/main/res/drawable/ic_roundabout_left_clockwise.png -------------------------------------------------------------------------------- /navigation-sample/app/src/main/res/drawable-hdpi/ic_navigation_white_24dp.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/googlemaps-samples/android-navigation-samples/HEAD/navigation-sample/app/src/main/res/drawable-hdpi/ic_navigation_white_24dp.png -------------------------------------------------------------------------------- /navigation-sample/app/src/main/res/drawable-mdpi/ic_navigation_white_24dp.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/googlemaps-samples/android-navigation-samples/HEAD/navigation-sample/app/src/main/res/drawable-mdpi/ic_navigation_white_24dp.png -------------------------------------------------------------------------------- /navigation-sample/app/src/main/res/drawable-xhdpi/ic_navigation_white_24dp.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/googlemaps-samples/android-navigation-samples/HEAD/navigation-sample/app/src/main/res/drawable-xhdpi/ic_navigation_white_24dp.png -------------------------------------------------------------------------------- /navigation-sample/app/src/main/res/drawable/ic_roundabout_counterclockwise.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/googlemaps-samples/android-navigation-samples/HEAD/navigation-sample/app/src/main/res/drawable/ic_roundabout_counterclockwise.png -------------------------------------------------------------------------------- /navigation-sample/app/src/main/res/drawable/ic_roundabout_right_clockwise.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/googlemaps-samples/android-navigation-samples/HEAD/navigation-sample/app/src/main/res/drawable/ic_roundabout_right_clockwise.png -------------------------------------------------------------------------------- /navigation-sample/app/src/main/res/drawable/ic_roundabout_u_turn_clockwise.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/googlemaps-samples/android-navigation-samples/HEAD/navigation-sample/app/src/main/res/drawable/ic_roundabout_u_turn_clockwise.png -------------------------------------------------------------------------------- /navigation-sample/app/src/main/res/drawable-xxhdpi/ic_navigation_white_24dp.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/googlemaps-samples/android-navigation-samples/HEAD/navigation-sample/app/src/main/res/drawable-xxhdpi/ic_navigation_white_24dp.png -------------------------------------------------------------------------------- /navigation-sample/app/src/main/res/drawable-xxxhdpi/ic_navigation_white_24dp.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/googlemaps-samples/android-navigation-samples/HEAD/navigation-sample/app/src/main/res/drawable-xxxhdpi/ic_navigation_white_24dp.png -------------------------------------------------------------------------------- /navigation-sample/app/src/main/res/drawable/ic_roundabout_straight_clockwise.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/googlemaps-samples/android-navigation-samples/HEAD/navigation-sample/app/src/main/res/drawable/ic_roundabout_straight_clockwise.png -------------------------------------------------------------------------------- /navigation-sample/app/src/main/res/drawable/ic_turn_u_turn_counterclockwise.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/googlemaps-samples/android-navigation-samples/HEAD/navigation-sample/app/src/main/res/drawable/ic_turn_u_turn_counterclockwise.png -------------------------------------------------------------------------------- /navigation-sample/app/src/main/res/drawable/ic_roundabout_exit_counterclockwise.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/googlemaps-samples/android-navigation-samples/HEAD/navigation-sample/app/src/main/res/drawable/ic_roundabout_exit_counterclockwise.png -------------------------------------------------------------------------------- /navigation-sample/app/src/main/res/drawable/ic_roundabout_left_counterclockwise.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/googlemaps-samples/android-navigation-samples/HEAD/navigation-sample/app/src/main/res/drawable/ic_roundabout_left_counterclockwise.png -------------------------------------------------------------------------------- /navigation-sample/app/src/main/res/drawable/ic_roundabout_sharp_left_clockwise.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/googlemaps-samples/android-navigation-samples/HEAD/navigation-sample/app/src/main/res/drawable/ic_roundabout_sharp_left_clockwise.png -------------------------------------------------------------------------------- /navigation-sample/app/src/main/res/drawable/ic_roundabout_sharp_right_clockwise.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/googlemaps-samples/android-navigation-samples/HEAD/navigation-sample/app/src/main/res/drawable/ic_roundabout_sharp_right_clockwise.png -------------------------------------------------------------------------------- /navigation-sample/app/src/main/res/drawable/ic_roundabout_slight_left_clockwise.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/googlemaps-samples/android-navigation-samples/HEAD/navigation-sample/app/src/main/res/drawable/ic_roundabout_slight_left_clockwise.png -------------------------------------------------------------------------------- /navigation-sample/app/src/main/res/drawable/ic_roundabout_right_counterclockwise.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/googlemaps-samples/android-navigation-samples/HEAD/navigation-sample/app/src/main/res/drawable/ic_roundabout_right_counterclockwise.png -------------------------------------------------------------------------------- /navigation-sample/app/src/main/res/drawable/ic_roundabout_slight_right_clockwise.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/googlemaps-samples/android-navigation-samples/HEAD/navigation-sample/app/src/main/res/drawable/ic_roundabout_slight_right_clockwise.png -------------------------------------------------------------------------------- /navigation-sample/app/src/main/res/drawable/ic_roundabout_u_turn_counterclockwise.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/googlemaps-samples/android-navigation-samples/HEAD/navigation-sample/app/src/main/res/drawable/ic_roundabout_u_turn_counterclockwise.png -------------------------------------------------------------------------------- /navigation-sample/app/src/main/res/drawable/ic_roundabout_straight_counterclockwise.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/googlemaps-samples/android-navigation-samples/HEAD/navigation-sample/app/src/main/res/drawable/ic_roundabout_straight_counterclockwise.png -------------------------------------------------------------------------------- /navigation-sample/app/src/main/res/drawable/ic_roundabout_sharp_left_counterclockwise.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/googlemaps-samples/android-navigation-samples/HEAD/navigation-sample/app/src/main/res/drawable/ic_roundabout_sharp_left_counterclockwise.png -------------------------------------------------------------------------------- /navigation-sample/app/src/main/res/drawable/ic_roundabout_sharp_right_counterclockwise.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/googlemaps-samples/android-navigation-samples/HEAD/navigation-sample/app/src/main/res/drawable/ic_roundabout_sharp_right_counterclockwise.png -------------------------------------------------------------------------------- /navigation-sample/app/src/main/res/drawable/ic_roundabout_slight_left_counterclockwise.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/googlemaps-samples/android-navigation-samples/HEAD/navigation-sample/app/src/main/res/drawable/ic_roundabout_slight_left_counterclockwise.png -------------------------------------------------------------------------------- /navigation-sample/app/src/main/res/drawable/ic_roundabout_slight_right_counterclockwise.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/googlemaps-samples/android-navigation-samples/HEAD/navigation-sample/app/src/main/res/drawable/ic_roundabout_slight_right_counterclockwise.png -------------------------------------------------------------------------------- /NOTICE.txt: -------------------------------------------------------------------------------- 1 | Google Maps/Google Earth Additional Terms of Service available at: 2 | https://www.google.com/help/terms_maps.html 3 | 4 | Legal Notices for Google Maps and Google Maps APIs available at: 5 | https://www.google.com/help/legalnotices_maps.html 6 | -------------------------------------------------------------------------------- /map-sample/gradle/wrapper/gradle-wrapper.properties: -------------------------------------------------------------------------------- 1 | distributionBase=GRADLE_USER_HOME 2 | distributionPath=wrapper/dists 3 | distributionUrl=https\://services.gradle.org/distributions/gradle-8.10.2-bin.zip 4 | networkTimeout=10000 5 | validateDistributionUrl=true 6 | zipStoreBase=GRADLE_USER_HOME 7 | zipStorePath=wrapper/dists 8 | -------------------------------------------------------------------------------- /navigation-sample/gradle/wrapper/gradle-wrapper.properties: -------------------------------------------------------------------------------- 1 | distributionBase=GRADLE_USER_HOME 2 | distributionPath=wrapper/dists 3 | distributionUrl=https\://services.gradle.org/distributions/gradle-8.10.2-bin.zip 4 | networkTimeout=10000 5 | validateDistributionUrl=true 6 | zipStoreBase=GRADLE_USER_HOME 7 | zipStorePath=wrapper/dists 8 | -------------------------------------------------------------------------------- /map-sample/app/src/main/res/raw/outline_style.json: -------------------------------------------------------------------------------- 1 | [ 2 | { 3 | "elementType": "labels.text.stroke", 4 | "stylers": [ 5 | { 6 | "visibility": "on" 7 | }, 8 | { 9 | "color": "#ff0000" 10 | }, 11 | { 12 | "lightness": 16 13 | } 14 | ] 15 | } 16 | ] 17 | -------------------------------------------------------------------------------- /map-sample/settings.gradle: -------------------------------------------------------------------------------- 1 | /* 2 | * Copyright 2024 Google LLC 3 | * 4 | * Licensed under the Apache License, Version 2.0 (the "License"); 5 | * you may not use this file except in compliance with the License. 6 | * You may obtain a copy of the License at 7 | * 8 | * http://www.apache.org/licenses/LICENSE-2.0 9 | * 10 | * Unless required by applicable law or agreed to in writing, software 11 | * distributed under the License is distributed on an "AS IS" BASIS, 12 | * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 13 | * See the License for the specific language governing permissions and 14 | * limitations under the License. 15 | */ 16 | include ':app' 17 | -------------------------------------------------------------------------------- /navigation-sample/settings.gradle: -------------------------------------------------------------------------------- 1 | /* 2 | * Copyright 2024 Google LLC 3 | * 4 | * Licensed under the Apache License, Version 2.0 (the "License"); 5 | * you may not use this file except in compliance with the License. 6 | * You may obtain a copy of the License at 7 | * 8 | * http://www.apache.org/licenses/LICENSE-2.0 9 | * 10 | * Unless required by applicable law or agreed to in writing, software 11 | * distributed under the License is distributed on an "AS IS" BASIS, 12 | * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 13 | * See the License for the specific language governing permissions and 14 | * limitations under the License. 15 | */ 16 | include ':app' 17 | -------------------------------------------------------------------------------- /.github/workflows/android.yml: -------------------------------------------------------------------------------- 1 | name: Android CI 2 | 3 | on: 4 | push: 5 | branches: [ "main" ] 6 | pull_request: 7 | branches: [ "main" ] 8 | 9 | jobs: 10 | build: 11 | 12 | runs-on: ubuntu-latest 13 | 14 | steps: 15 | - uses: actions/checkout@v4 16 | - name: set up JDK 21 17 | uses: actions/setup-java@v3 18 | with: 19 | java-version: '21' 20 | distribution: 'temurin' 21 | cache: gradle 22 | 23 | - name: Grant execute permission for gradlew 24 | run: chmod +x map-sample/gradlew && chmod +x navigation-sample/gradlew 25 | - name: Build map-sample with Gradle 26 | run: cd map-sample && ./gradlew build 27 | - name: Build navigation-sample with Gradle 28 | run: cd navigation-sample && ./gradlew build 29 | -------------------------------------------------------------------------------- /navigation-sample/app/src/main/res/values/dimens.xml: -------------------------------------------------------------------------------- 1 | 2 | 17 | 18 | 19 | 10dp 20 | 14sp 21 | 48dp 22 | 23 | -------------------------------------------------------------------------------- /navigation-sample/app/src/main/res/values/colors.xml: -------------------------------------------------------------------------------- 1 | 2 | 17 | 18 | 19 | #3F51B5 20 | #303F9F 21 | #FF4081 22 | #555555 23 | 24 | -------------------------------------------------------------------------------- /map-sample/app/src/main/res/layout/programmatic_demo.xml: -------------------------------------------------------------------------------- 1 | 2 | 17 | 18 | 19 | 23 | -------------------------------------------------------------------------------- /map-sample/app/src/main/res/layout/street_view_panorama_view_demo.xml: -------------------------------------------------------------------------------- 1 | 2 | 17 | 18 | 23 | -------------------------------------------------------------------------------- /map-sample/app/src/main/res/layout/text_fragment.xml: -------------------------------------------------------------------------------- 1 | 2 | 17 | 18 | 24 | -------------------------------------------------------------------------------- /map-sample/app/src/main/res/values/common_strings.xml: -------------------------------------------------------------------------------- 1 | 2 | 17 | 18 | 19 | GoogleMap demo 20 | Demonstrating behaviors with … 21 | MapView 22 | NavView 23 | 24 | -------------------------------------------------------------------------------- /navigation-sample/app/src/main/res/layout/activity_swapping_map_and_nav.xml: -------------------------------------------------------------------------------- 1 | 2 | 17 | 18 | 24 | 25 | -------------------------------------------------------------------------------- /navigation-sample/app/src/main/java/com/example/navigationapidemo/SampleAppGlideModule.kt: -------------------------------------------------------------------------------- 1 | /* 2 | * Copyright 2024 Google LLC 3 | * 4 | * Licensed under the Apache License, Version 2.0 (the "License"); 5 | * you may not use this file except in compliance with the License. 6 | * You may obtain a copy of the License at 7 | * 8 | * http://www.apache.org/licenses/LICENSE-2.0 9 | * 10 | * Unless required by applicable law or agreed to in writing, software 11 | * distributed under the License is distributed on an "AS IS" BASIS, 12 | * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 13 | * See the License for the specific language governing permissions and 14 | * limitations under the License. 15 | */ 16 | 17 | package com.example.navigationapidemo 18 | 19 | import com.bumptech.glide.annotation.GlideModule 20 | import com.bumptech.glide.module.AppGlideModule 21 | 22 | /** An AppGlideModule implementation for Glide's Generated APIs */ 23 | @GlideModule class SampleAppGlideModule : AppGlideModule() 24 | -------------------------------------------------------------------------------- /navigation-sample/app/src/main/java/com/example/navigationapidemo/InitializedMapScope.kt: -------------------------------------------------------------------------------- 1 | /* 2 | * Copyright 2024 Google LLC 3 | * 4 | * Licensed under the Apache License, Version 2.0 (the "License"); 5 | * you may not use this file except in compliance with the License. 6 | * You may obtain a copy of the License at 7 | * 8 | * http://www.apache.org/licenses/LICENSE-2.0 9 | * 10 | * Unless required by applicable law or agreed to in writing, software 11 | * distributed under the License is distributed on an "AS IS" BASIS, 12 | * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 13 | * See the License for the specific language governing permissions and 14 | * limitations under the License. 15 | */ 16 | 17 | package com.example.navigationapidemo 18 | 19 | import com.google.android.gms.maps.GoogleMap 20 | 21 | /** 22 | * Used in [NavViewActivity.withMapAsync] and [NavFragmentActivity.withMapAsync] to provide 23 | * asynchronous access to the Google Map. 24 | */ 25 | interface InitializedMapScope { 26 | val map: GoogleMap 27 | } 28 | -------------------------------------------------------------------------------- /navigation-sample/app/src/main/res/values-w820dp/dimens.xml: -------------------------------------------------------------------------------- 1 | 16 | 17 | 18 | 21 | 64dp 22 | 23 | -------------------------------------------------------------------------------- /navigation-sample/app/src/main/res/layout/control_panels.xml: -------------------------------------------------------------------------------- 1 | 2 | 17 | 18 | 21 | 22 | 23 | 24 | 25 | 26 | 27 | 28 | -------------------------------------------------------------------------------- /navigation-sample/app/src/main/res/values/styles.xml: -------------------------------------------------------------------------------- 1 | 16 | 17 | 18 | 19 | 20 | 26 | 27 | 28 | -------------------------------------------------------------------------------- /map-sample/app/src/main/res/layout/indoor_demo.xml: -------------------------------------------------------------------------------- 1 | 2 | 17 | 18 | 22 | 27 | 28 | -------------------------------------------------------------------------------- /map-sample/app/src/main/res/layout/map_in_pager_demo.xml: -------------------------------------------------------------------------------- 1 | 2 | 17 | 18 | 22 | 26 | 27 | -------------------------------------------------------------------------------- /navigation-sample/app/src/main/java/com/example/navigationapidemo/InitializedNavScope.kt: -------------------------------------------------------------------------------- 1 | /* 2 | * Copyright 2024 Google LLC 3 | * 4 | * Licensed under the Apache License, Version 2.0 (the "License"); 5 | * you may not use this file except in compliance with the License. 6 | * You may obtain a copy of the License at 7 | * 8 | * http://www.apache.org/licenses/LICENSE-2.0 9 | * 10 | * Unless required by applicable law or agreed to in writing, software 11 | * distributed under the License is distributed on an "AS IS" BASIS, 12 | * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 13 | * See the License for the specific language governing permissions and 14 | * limitations under the License. 15 | */ 16 | 17 | package com.example.navigationapidemo 18 | 19 | import com.google.android.libraries.navigation.Navigator 20 | 21 | /** 22 | * Used with in [NavViewActivity.withNavigatorAsync] and [NavFragmentActivity.withNavigatorAsync] to 23 | * provide asynchronous access to the Navigator. 24 | */ 25 | open class InitializedNavScope(val navigator: Navigator) 26 | 27 | typealias InitializedNavRunnable = InitializedNavScope.() -> Unit 28 | -------------------------------------------------------------------------------- /navigation-sample/app/src/main/res/layout/spinner_item.xml: -------------------------------------------------------------------------------- 1 | 2 | 17 | 18 | 28 | -------------------------------------------------------------------------------- /map-sample/app/src/main/java/com/example/mapdemo/PolygonControlFragment.java: -------------------------------------------------------------------------------- 1 | /* 2 | * Copyright 2024 Google LLC 3 | * 4 | * Licensed under the Apache License, Version 2.0 (the "License"); 5 | * you may not use this file except in compliance with the License. 6 | * You may obtain a copy of the License at 7 | * 8 | * http://www.apache.org/licenses/LICENSE-2.0 9 | * 10 | * Unless required by applicable law or agreed to in writing, software 11 | * distributed under the License is distributed on an "AS IS" BASIS, 12 | * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 13 | * See the License for the specific language governing permissions and 14 | * limitations under the License. 15 | */ 16 | 17 | package com.example.mapdemo; 18 | 19 | import androidx.fragment.app.Fragment; 20 | import com.google.android.gms.maps.model.Polygon; 21 | 22 | /** Polygon Control Fragment. */ 23 | public abstract class PolygonControlFragment extends Fragment { 24 | protected Polygon polygon; 25 | 26 | public void setPolygon(Polygon polygon) { 27 | this.polygon = polygon; 28 | refresh(); 29 | } 30 | 31 | public abstract void refresh(); 32 | } 33 | -------------------------------------------------------------------------------- /map-sample/app/src/main/res/layout/raw_view_demo_maps_flavor.xml: -------------------------------------------------------------------------------- 1 | 2 | 17 | 18 | 19 | 23 | 27 | 28 | -------------------------------------------------------------------------------- /map-sample/app/src/main/java/com/example/mapdemo/PolylineControlFragment.java: -------------------------------------------------------------------------------- 1 | /* 2 | * Copyright 2024 Google LLC 3 | * 4 | * Licensed under the Apache License, Version 2.0 (the "License"); 5 | * you may not use this file except in compliance with the License. 6 | * You may obtain a copy of the License at 7 | * 8 | * http://www.apache.org/licenses/LICENSE-2.0 9 | * 10 | * Unless required by applicable law or agreed to in writing, software 11 | * distributed under the License is distributed on an "AS IS" BASIS, 12 | * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 13 | * See the License for the specific language governing permissions and 14 | * limitations under the License. 15 | */ 16 | 17 | package com.example.mapdemo; 18 | 19 | import androidx.fragment.app.Fragment; 20 | import com.google.android.gms.maps.model.Polyline; 21 | 22 | /** Polyline control fragment. */ 23 | public abstract class PolylineControlFragment extends Fragment { 24 | protected Polyline polyline; 25 | 26 | public void setPolyline(Polyline polyline) { 27 | this.polyline = polyline; 28 | refresh(); 29 | } 30 | 31 | public abstract void refresh(); 32 | } 33 | -------------------------------------------------------------------------------- /map-sample/app/src/main/res/layout/day_night_circle_demo_maps_flavor.xml: -------------------------------------------------------------------------------- 1 | 2 | 17 | 18 | 19 | 23 | 28 | 29 | -------------------------------------------------------------------------------- /map-sample/app/src/main/res/layout/raw_view_demo_nav_flavor.xml: -------------------------------------------------------------------------------- 1 | 2 | 17 | 18 | 19 | 23 | 27 | 28 | -------------------------------------------------------------------------------- /navigation-sample/app/src/main/res/layout/activity_splash_screen.xml: -------------------------------------------------------------------------------- 1 | 2 | 17 | 18 | 24 | 25 | 29 | 30 | -------------------------------------------------------------------------------- /map-sample/app/src/main/res/layout/day_night_circle_demo_nav_flavor.xml: -------------------------------------------------------------------------------- 1 | 2 | 17 | 18 | 19 | 23 | 28 | 29 | -------------------------------------------------------------------------------- /map-sample/app/src/main/java/com/example/mapdemo/ActivityIntents.java: -------------------------------------------------------------------------------- 1 | /* 2 | * Copyright 2024 Google LLC 3 | * 4 | * Licensed under the Apache License, Version 2.0 (the "License"); 5 | * you may not use this file except in compliance with the License. 6 | * You may obtain a copy of the License at 7 | * 8 | * http://www.apache.org/licenses/LICENSE-2.0 9 | * 10 | * Unless required by applicable law or agreed to in writing, software 11 | * distributed under the License is distributed on an "AS IS" BASIS, 12 | * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 13 | * See the License for the specific language governing permissions and 14 | * limitations under the License. 15 | */ 16 | 17 | package com.example.mapdemo; 18 | 19 | /** Utilities related to the Intents that start demo Activities. */ 20 | final class ActivityIntents { 21 | 22 | /** 23 | * Identifier for extra that indicates whether to inflate the NavigationView flavor or the MapView 24 | * flavor of the corresponding demo. 25 | */ 26 | public static final String EXTRA_SHOULD_USE_NAVIGATION_FLAVOR_FOR_DEMO = 27 | "should_use_navigation_flavor_for_demo"; 28 | 29 | private ActivityIntents() {} 30 | } 31 | -------------------------------------------------------------------------------- /map-sample/app/src/main/res/layout/marker_close_info_window_on_retap_demo_maps_flavor.xml: -------------------------------------------------------------------------------- 1 | 2 | 17 | 18 | 23 | 28 | 29 | -------------------------------------------------------------------------------- /CONTRIBUTING.md: -------------------------------------------------------------------------------- 1 | # How to Contribute 2 | 3 | We'd love to accept your patches and contributions to this project. There are 4 | just a few small guidelines you need to follow. 5 | 6 | ## Contributor License Agreement 7 | 8 | Contributions to this project must be accompanied by a Contributor License 9 | Agreement (CLA). You (or your employer) retain the copyright to your 10 | contribution; this simply gives us permission to use and redistribute your 11 | contributions as part of the project. Head over to 12 | to see your current agreements on file or 13 | to sign a new one. 14 | 15 | You generally only need to submit a CLA once, so if you've already submitted one 16 | (even if it was for a different project), you probably don't need to do it 17 | again. 18 | 19 | ## Code reviews 20 | 21 | All submissions, including submissions by project members, require review. We 22 | use GitHub pull requests for this purpose. Consult 23 | [GitHub Help](https://help.github.com/articles/about-pull-requests/) for more 24 | information on using pull requests. 25 | 26 | ## Community Guidelines 27 | 28 | This project follows 29 | [Google's Open Source Community Guidelines](https://opensource.google/conduct/). 30 | -------------------------------------------------------------------------------- /map-sample/app/src/main/res/layout/basic_demo_maps_flavor.xml: -------------------------------------------------------------------------------- 1 | 2 | 17 | 18 | 19 | 23 | 28 | 29 | -------------------------------------------------------------------------------- /map-sample/app/src/main/res/layout/marker_close_info_window_on_retap_demo_nav_flavor.xml: -------------------------------------------------------------------------------- 1 | 2 | 17 | 18 | 23 | 28 | 29 | -------------------------------------------------------------------------------- /map-sample/app/src/main/res/layout/street_view_panorama_basic_demo.xml: -------------------------------------------------------------------------------- 1 | 2 | 17 | 18 | 19 | 23 | 28 | 29 | -------------------------------------------------------------------------------- /navigation-sample/app/src/main/res/menu/menu_default.xml: -------------------------------------------------------------------------------- 1 | 2 | 17 | 18 | 20 | 25 | 27 | 28 | -------------------------------------------------------------------------------- /navigation-sample/app/src/main/res/layout/activity_place_picker.xml: -------------------------------------------------------------------------------- 1 | 2 | 17 | 18 | 23 | 28 | -------------------------------------------------------------------------------- /map-sample/app/src/main/res/layout/basic_demo_nav_flavor.xml: -------------------------------------------------------------------------------- 1 | 2 | 17 | 18 | 19 | 23 | 28 | 29 | -------------------------------------------------------------------------------- /navigation-sample/app/src/main/res/menu/menu_swapping_map_and_nav.xml: -------------------------------------------------------------------------------- 1 | 2 | 17 | 18 | 20 | 25 | 28 | 29 | -------------------------------------------------------------------------------- /map-sample/app/src/main/res/layout/width_control_fragment.xml: -------------------------------------------------------------------------------- 1 | 2 | 17 | 18 | 22 | 26 | 31 | 32 | -------------------------------------------------------------------------------- /map-sample/app/src/main/res/layout/feature.xml: -------------------------------------------------------------------------------- 1 | 2 | 17 | 18 | 24 | 29 | 34 | 35 | -------------------------------------------------------------------------------- /map-sample/app/src/main/res/layout/tags_demo_maps_flavor.xml: -------------------------------------------------------------------------------- 1 | 2 | 17 | 18 | 23 | 27 | 33 | 34 | 35 | -------------------------------------------------------------------------------- /map-sample/app/src/main/res/layout/tags_demo_nav_flavor.xml: -------------------------------------------------------------------------------- 1 | 2 | 17 | 18 | 23 | 27 | 33 | 34 | 35 | -------------------------------------------------------------------------------- /map-sample/app/src/main/java/com/example/mapdemo/ConversionUtils.java: -------------------------------------------------------------------------------- 1 | /* 2 | * Copyright 2024 Google LLC 3 | * 4 | * Licensed under the Apache License, Version 2.0 (the "License"); 5 | * you may not use this file except in compliance with the License. 6 | * You may obtain a copy of the License at 7 | * 8 | * http://www.apache.org/licenses/LICENSE-2.0 9 | * 10 | * Unless required by applicable law or agreed to in writing, software 11 | * distributed under the License is distributed on an "AS IS" BASIS, 12 | * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 13 | * See the License for the specific language governing permissions and 14 | * limitations under the License. 15 | */ 16 | 17 | package com.example.mapdemo; 18 | 19 | import com.google.android.gms.maps.GoogleMap.OnCameraMoveStartedListener; 20 | 21 | /** A utility class with methods to convert one objet type to another. */ 22 | public final class ConversionUtils { 23 | public static String toAnimationReasonString(int reason) { 24 | switch (reason) { 25 | case OnCameraMoveStartedListener.REASON_GESTURE: 26 | return "REASON_GESTURE"; 27 | case OnCameraMoveStartedListener.REASON_API_ANIMATION: 28 | return "REASON_API_ANIMATION"; 29 | case OnCameraMoveStartedListener.REASON_DEVELOPER_ANIMATION: 30 | return "REASON_DEVELOPER_ANIMATION"; 31 | default: 32 | return "Unknown"; 33 | } 34 | } 35 | } 36 | -------------------------------------------------------------------------------- /map-sample/app/src/main/res/layout/save_state_demo_maps_flavor.xml: -------------------------------------------------------------------------------- 1 | 2 | 17 | 18 | 23 | 24 | 29 | 30 | 35 | 36 | 37 | -------------------------------------------------------------------------------- /map-sample/app/src/main/res/layout/save_state_demo_nav_flavor.xml: -------------------------------------------------------------------------------- 1 | 2 | 17 | 18 | 23 | 24 | 29 | 30 | 35 | 36 | 37 | -------------------------------------------------------------------------------- /map-sample/app/src/main/java/com/example/mapdemo/DemoDetails.java: -------------------------------------------------------------------------------- 1 | /* 2 | * Copyright 2024 Google LLC 3 | * 4 | * Licensed under the Apache License, Version 2.0 (the "License"); 5 | * you may not use this file except in compliance with the License. 6 | * You may obtain a copy of the License at 7 | * 8 | * http://www.apache.org/licenses/LICENSE-2.0 9 | * 10 | * Unless required by applicable law or agreed to in writing, software 11 | * distributed under the License is distributed on an "AS IS" BASIS, 12 | * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 13 | * See the License for the specific language governing permissions and 14 | * limitations under the License. 15 | */ 16 | 17 | package com.example.mapdemo; 18 | 19 | import android.app.Activity; 20 | 21 | /** A simple POJO that holds the details about the demo that are used by the List Adapter. */ 22 | public class DemoDetails { 23 | /** The resource id of the title of the demo. */ 24 | public final int titleId; 25 | 26 | /** The resources id of the description of the demo. */ 27 | public final int descriptionId; 28 | 29 | /** The demo activity's class. */ 30 | public final Class activityClass; 31 | 32 | public DemoDetails(int titleId, int descriptionId, Class activityClass) { 33 | this.titleId = titleId; 34 | this.descriptionId = descriptionId; 35 | this.activityClass = activityClass; 36 | } 37 | } 38 | -------------------------------------------------------------------------------- /map-sample/app/src/main/res/layout/other_options_control_fragment.xml: -------------------------------------------------------------------------------- 1 | 2 | 17 | 18 | 22 | 26 | 30 | 34 | 35 | -------------------------------------------------------------------------------- /navigation-sample/app/src/main/res/layout/main.xml: -------------------------------------------------------------------------------- 1 | 2 | 17 | 18 | 24 | 33 | 37 | 38 | -------------------------------------------------------------------------------- /navigation-sample/README.md: -------------------------------------------------------------------------------- 1 | # Google Navigation SDK Sample Project 2 | 3 | This sample project provides an example of using the Google Navigation SDK in an 4 | Android Studio project. 5 | 6 | ## Installation 7 | 8 | - Open this sample app in Android Studio. 9 | 10 | - This demo app is compatible with a range of supported Navigation SDK 11 | versions, as indicated by the name of the containing .zip file in Google 12 | Drive. 13 | 14 | - A default compatible version number has been supplied in the app-level 15 | `build.gradle` file under the variable named `navSdkVersion`. Make sure to 16 | update that variable's value to the version of NavSDK you'd like to test. 17 | 18 | - Update the YOUR_API_KEY value in the local.defaults.properties to your own 19 | API key from a project that has been authorized to use the Google Navigation 20 | SDK. This API key must also have access to the Google Places API enabled in 21 | order to be able to search for places in the sample application. 22 | See [instructions](https://developers.google.com/maps/documentation/android-sdk/start#get-key) 23 | for how to get your own key and learn more about 24 | [Secrets Gradle plugin](https://developers.google.com/maps/documentation/android-sdk/secrets-gradle-plugin) 25 | to keep the key out of version control systems. 26 | 27 | - In the **Gradle Scripts folder**, open the `gradle.properties` file and add 28 | the following if not already present: `android.useAndroidX=true` 29 | 30 | - Build and run the sample application. 31 | -------------------------------------------------------------------------------- /map-sample/app/src/main/java/com/example/mapdemo/IndoorDemoActivity.java: -------------------------------------------------------------------------------- 1 | /* 2 | * Copyright 2024 Google LLC 3 | * 4 | * Licensed under the Apache License, Version 2.0 (the "License"); 5 | * you may not use this file except in compliance with the License. 6 | * You may obtain a copy of the License at 7 | * 8 | * http://www.apache.org/licenses/LICENSE-2.0 9 | * 10 | * Unless required by applicable law or agreed to in writing, software 11 | * distributed under the License is distributed on an "AS IS" BASIS, 12 | * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 13 | * See the License for the specific language governing permissions and 14 | * limitations under the License. 15 | */ 16 | 17 | package com.example.mapdemo; 18 | 19 | import android.os.Bundle; 20 | import androidx.appcompat.app.AppCompatActivity; 21 | import com.example.mapdemo.EdgeToEdgeUtil.EdgeToEdgeMarginConfig; 22 | import com.google.common.collect.ImmutableList; 23 | 24 | /** Demo of indoor maps. */ 25 | public class IndoorDemoActivity extends AppCompatActivity { 26 | 27 | @Override 28 | protected void onCreate(Bundle savedInstanceState) { 29 | super.onCreate(savedInstanceState); 30 | setContentView(R.layout.indoor_demo); 31 | // Margins are only set if the edge-to-edge mode is enabled, it's enabled by default for Android 32 | // V+ devices. 33 | // No margins are set for pre-Android V devices. 34 | EdgeToEdgeUtil.setMarginForEdgeToEdgeSupport( 35 | ImmutableList.of( 36 | EdgeToEdgeMarginConfig.builder().setView(findViewById(R.id.layout_container)).build())); 37 | } 38 | } 39 | -------------------------------------------------------------------------------- /map-sample/app/src/main/java/com/example/mapdemo/IndoorMultiMapDemoActivity.java: -------------------------------------------------------------------------------- 1 | /* 2 | * Copyright 2024 Google LLC 3 | * 4 | * Licensed under the Apache License, Version 2.0 (the "License"); 5 | * you may not use this file except in compliance with the License. 6 | * You may obtain a copy of the License at 7 | * 8 | * http://www.apache.org/licenses/LICENSE-2.0 9 | * 10 | * Unless required by applicable law or agreed to in writing, software 11 | * distributed under the License is distributed on an "AS IS" BASIS, 12 | * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 13 | * See the License for the specific language governing permissions and 14 | * limitations under the License. 15 | */ 16 | 17 | package com.example.mapdemo; 18 | 19 | import android.os.Bundle; 20 | import androidx.appcompat.app.AppCompatActivity; 21 | import com.example.mapdemo.EdgeToEdgeUtil.EdgeToEdgeMarginConfig; 22 | import com.google.common.collect.ImmutableList; 23 | 24 | /** Demo for indoor multimaps. */ 25 | public class IndoorMultiMapDemoActivity extends AppCompatActivity { 26 | 27 | @Override 28 | protected void onCreate(Bundle savedInstanceState) { 29 | super.onCreate(savedInstanceState); 30 | setContentView(R.layout.indoor_multimap_demo); 31 | // Margins are only set if the edge-to-edge mode is enabled, it's enabled by default for Android 32 | // V+ devices. 33 | // No margins are set for pre-Android V devices. 34 | EdgeToEdgeUtil.setMarginForEdgeToEdgeSupport( 35 | ImmutableList.of( 36 | EdgeToEdgeMarginConfig.builder().setView(findViewById(R.id.layout_container)).build())); 37 | } 38 | } 39 | -------------------------------------------------------------------------------- /map-sample/app/src/main/res/layout/options_demo_maps_flavor.xml: -------------------------------------------------------------------------------- 1 | 2 | 17 | 18 | 23 | 41 | 42 | -------------------------------------------------------------------------------- /map-sample/app/src/main/res/layout/options_demo_nav_flavor.xml: -------------------------------------------------------------------------------- 1 | 2 | 17 | 18 | 23 | 41 | 42 | -------------------------------------------------------------------------------- /navigation-sample/app/proguard-rules.pro: -------------------------------------------------------------------------------- 1 | # Add project specific ProGuard rules here. 2 | # By default, the flags in this file are appended to flags specified 3 | # in /Users//Library/Android/sdk/tools/proguard/proguard-android.txt 4 | # You can edit the include path and order by changing the proguardFiles 5 | # directive in build.gradle. 6 | # 7 | # For more details, see 8 | # http://developer.android.com/guide/developing/tools/proguard.html 9 | 10 | # Add any project specific keep options here: 11 | 12 | # If your project uses WebView with JS, uncomment the following 13 | # and specify the fully qualified class name to the JavaScript interface 14 | # class: 15 | #-keepclassmembers class fqcn.of.javascript.interface.for.webview { 16 | # public *; 17 | #} 18 | 19 | #glide start 20 | -keep public class * implements com.bumptech.glide.module.GlideModule 21 | -keep public class * extends com.bumptech.glide.module.AppGlideModule 22 | -keep public enum com.bumptech.glide.load.ImageHeaderParser$** { 23 | **[] $VALUES; 24 | public *; 25 | } 26 | #glide end 27 | 28 | #okhttp start 29 | # JSR 305 annotations are for embedding nullability information. 30 | -dontwarn javax.annotation.** 31 | 32 | # A resource is loaded with a relative path so the package of this class must be preserved. 33 | -keepnames class okhttp3.internal.publicsuffix.PublicSuffixDatabase 34 | 35 | # Animal Sniffer compileOnly dependency to ensure APIs are compatible with older versions of Java. 36 | -dontwarn org.codehaus.mojo.animal_sniffer.* 37 | 38 | # OkHttp platform used only on JVM and when Conscrypt dependency is available. 39 | -dontwarn okhttp3.internal.platform.ConscryptPlatform 40 | #okhttp end 41 | -------------------------------------------------------------------------------- /navigation-sample/app/src/main/res/layout/controls_nav.xml: -------------------------------------------------------------------------------- 1 | 2 | 17 | 18 | 25 | 26 |