diff --git a/.github/dependabot.yml b/.github/dependabot.yml
index 9ed40082d..355ea2b94 100644
--- a/.github/dependabot.yml
+++ b/.github/dependabot.yml
@@ -15,14 +15,14 @@
version: 2
updates:
- package-ecosystem: gradle
- directory: "/./ApiDemos/java"
+ directory: "/./ApiDemos/project/java-app"
schedule:
interval: "weekly"
open-pull-requests-limit: 10
commit-message:
prefix: chore(deps)
- package-ecosystem: gradle
- directory: "/./ApiDemos/kotlin"
+ directory: "/./ApiDemos/project/kotlin-app"
schedule:
interval: "weekly"
open-pull-requests-limit: 10
diff --git a/.github/workflows/build.yml b/.github/workflows/build.yml
index 2a721e95f..05ce08458 100644
--- a/.github/workflows/build.yml
+++ b/.github/workflows/build.yml
@@ -83,7 +83,7 @@ jobs:
- name: Build and check
run: |
cd snippets
- ./gradlew assembleDebug lintGmsDebug
+ ./gradlew assembleDebug lintDebug
build-tutorials:
runs-on: ubuntu-latest
diff --git a/.github/workflows/release.yml b/.github/workflows/release.yml
index 2580b32be..b57d8bd6e 100644
--- a/.github/workflows/release.yml
+++ b/.github/workflows/release.yml
@@ -35,14 +35,13 @@ jobs:
- name: Build APKs
run: |
echo "Generating ApiDemos (Java) APKs"
- cd $GITHUB_WORKSPACE/ApiDemos/java
+ cd $GITHUB_WORKSPACE/ApiDemos/project/
./gradlew assemble
- cp ./app/build/outputs/apk/debug/app-debug.apk $GITHUB_WORKSPACE/ApiDemos-java-debug.apk
+ cp ./java-app/build/outputs/apk/debug/java-app-debug.apk $GITHUB_WORKSPACE/ApiDemos-java-debug.apk
echo "Generating Kotlin (Kotlin) APKs"
- cd $GITHUB_WORKSPACE/ApiDemos/kotlin
./gradlew assemble
- cp ./app/build/outputs/apk/debug/app-debug.apk $GITHUB_WORKSPACE/ApiDemos-kotlin-debug.apk
+ cp ./kotlin-app/build/outputs/apk/debug/kotlin-app-debug.apk $GITHUB_WORKSPACE/ApiDemos-kotlin-debug.apk
- uses: actions/setup-node@v2
with:
diff --git a/.releaserc b/.releaserc
index 27f40405e..e0b93f731 100644
--- a/.releaserc
+++ b/.releaserc
@@ -6,14 +6,14 @@ plugins:
- - "@google/semantic-release-replace-plugin"
- replacements:
- files:
- - "./ApiDemos/java/app/build.gradle.kts"
- - "./ApiDemos/kotlin/app/build.gradle.kts"
+ - "./ApiDemos/project/java-app/build.gradle.kts"
+ - "./ApiDemos/project/kotlin-app/build.gradle.kts"
from: "versionName = \".*\""
to: "versionName = \"${nextRelease.version}\""
- - "@semantic-release/git"
- assets:
- - "./ApiDemos/java/app/build.gradle.kts"
- - "./ApiDemos/kotlin/app/build.gradle.kts"
+ - "./ApiDemos/project/java-app/build.gradle.kts"
+ - "./ApiDemos/project/kotlin-app/build.gradle.kts"
- - "@semantic-release/github"
- assets:
- "./ApiDemos-java-debug.apk"
diff --git a/ApiDemos/java/app/src/main/java/com/example/mapdemo/DemoDetailsList.java b/ApiDemos/java/app/src/main/java/com/example/mapdemo/DemoDetailsList.java
deleted file mode 100755
index 0139f80b8..000000000
--- a/ApiDemos/java/app/src/main/java/com/example/mapdemo/DemoDetailsList.java
+++ /dev/null
@@ -1,162 +0,0 @@
-// Copyright 2020 Google LLC
-//
-// Licensed under the Apache License, Version 2.0 (the "License");
-// you may not use this file except in compliance with the License.
-// You may obtain a copy of the License at
-//
-// http://www.apache.org/licenses/LICENSE-2.0
-//
-// Unless required by applicable law or agreed to in writing, software
-// distributed under the License is distributed on an "AS IS" BASIS,
-// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
-// See the License for the specific language governing permissions and
-// limitations under the License.
-
-
-package com.example.mapdemo;
-
-/**
- * A list of all the demos we have available.
- */
-public final class DemoDetailsList {
-
- /**
- * This class should not be instantiated.
- */
- private DemoDetailsList() {
- }
-
- public static final DemoDetails[] DEMOS = {
- new DemoDetails(R.string.advanced_markers_demo_label,
- R.string.advanced_markers_demo_details,
- AdvancedMarkersDemoActivity.class),
- new DemoDetails(R.string.basic_map_demo_label,
- R.string.basic_map_demo_description,
- BasicMapDemoActivity.class),
- new DemoDetails(
- R.string.background_color_customization_demo_label,
- R.string.background_color_customization_demo_description,
- BackgroundColorCustomizationDemoActivity.class),
- new DemoDetails(
- R.string.background_color_customization_programmatic_demo_label,
- R.string.background_color_customization_programmatic_demo_description,
- BackgroundColorCustomizationProgrammaticDemoActivity.class),
- new DemoDetails(R.string.camera_demo_label,
- R.string.camera_demo_description,
- CameraDemoActivity.class),
- new DemoDetails(R.string.camera_clamping_demo_label,
- R.string.camera_clamping_demo_description,
- CameraClampingDemoActivity.class),
- new DemoDetails(R.string.cloud_styling_label,
- R.string.cloud_styling_description,
- CloudBasedMapStylingDemoActivity.class),
- new DemoDetails(R.string.circle_demo_label,
- R.string.circle_demo_description,
- CircleDemoActivity.class),
- new DemoDetails(R.string.data_driven_styling_label,
- R.string.data_driven_styling_description,
- DataDrivenDatasetStylingActivity.class),
- new DemoDetails(R.string.data_driven_boundaries_label,
- R.string.data_driven_boundaries_description,
- DataDrivenBoundariesActivity.class),
- new DemoDetails(R.string.events_demo_label,
- R.string.events_demo_description,
- EventsDemoActivity.class),
- new DemoDetails(R.string.ground_overlay_demo_label,
- R.string.ground_overlay_demo_description,
- GroundOverlayDemoActivity.class),
- new DemoDetails(R.string.indoor_demo_label,
- R.string.indoor_demo_description,
- IndoorDemoActivity.class),
- new DemoDetails(R.string.layers_demo_label,
- R.string.layers_demo_description,
- LayersDemoActivity.class),
- new DemoDetails(R.string.lite_demo_label,
- R.string.lite_demo_description,
- LiteDemoActivity.class),
- new DemoDetails(R.string.lite_list_demo_label,
- R.string.lite_list_demo_description,
- LiteListDemoActivity.class),
- new DemoDetails(R.string.location_source_demo_label,
- R.string.location_source_demo_description,
- LocationSourceDemoActivity.class),
- new DemoDetails(R.string.map_in_pager_demo_label,
- R.string.map_in_pager_demo_description,
- MapInPagerDemoActivity.class),
- new DemoDetails(R.string.map_color_scheme_demo_label,
- R.string.map_color_scheme_demo_description,
- MapColorSchemeActivity.class),
- new DemoDetails(R.string.marker_demo_label,
- R.string.marker_demo_description,
- MarkerDemoActivity.class),
- new DemoDetails(R.string.marker_close_info_window_on_retap_demo_label,
- R.string.marker_close_info_window_on_retap_demo_description,
- MarkerCloseInfoWindowOnRetapDemoActivity.class),
- new DemoDetails(R.string.multi_map_demo_label,
- R.string.multi_map_demo_description,
- MultiMapDemoActivity.class),
- new DemoDetails(R.string.my_location_demo_label,
- R.string.my_location_demo_description,
- MyLocationDemoActivity.class),
- new DemoDetails(R.string.options_demo_label,
- R.string.options_demo_description,
- OptionsDemoActivity.class),
- new DemoDetails(R.string.polygon_demo_label,
- R.string.polygon_demo_description,
- PolygonDemoActivity.class),
- new DemoDetails(R.string.polyline_demo_label,
- R.string.polyline_demo_description,
- PolylineDemoActivity.class),
- new DemoDetails(R.string.programmatic_demo_label,
- R.string.programmatic_demo_description,
- ProgrammaticDemoActivity.class),
- new DemoDetails(R.string.raw_map_view_demo_label,
- R.string.raw_map_view_demo_description,
- RawMapViewDemoActivity.class),
- new DemoDetails(R.string.retain_map_demo_label,
- R.string.retain_map_demo_description,
- RetainMapDemoActivity.class),
- new DemoDetails(R.string.save_state_demo_label,
- R.string.save_state_demo_description,
- SaveStateDemoActivity.class),
- new DemoDetails(R.string.snapshot_demo_label,
- R.string.snapshot_demo_description,
- SnapshotDemoActivity.class),
- new DemoDetails(R.string.split_street_view_panorama_and_map_demo_label,
- R.string.split_street_view_panorama_and_map_demo_description,
- SplitStreetViewPanoramaAndMapDemoActivity.class),
- new DemoDetails(R.string.street_view_panorama_basic_demo_label,
- R.string.street_view_panorama_basic_demo_description,
- StreetViewPanoramaBasicDemoActivity.class),
- new DemoDetails(R.string.street_view_panorama_events_demo_label,
- R.string.street_view_panorama_events_demo_description,
- StreetViewPanoramaEventsDemoActivity.class),
- new DemoDetails(R.string.street_view_panorama_navigation_demo_label,
- R.string.street_view_panorama_navigation_demo_description,
- StreetViewPanoramaNavigationDemoActivity.class),
- new DemoDetails(R.string.street_view_panorama_options_demo_label,
- R.string.street_view_panorama_options_demo_description,
- StreetViewPanoramaOptionsDemoActivity.class),
- new DemoDetails(R.string.street_view_panorama_view_demo_label,
- R.string.street_view_panorama_view_demo_description,
- StreetViewPanoramaViewDemoActivity.class),
- new DemoDetails(R.string.styled_map_demo_label,
- R.string.styled_map_demo_description,
- StyledMapDemoActivity.class),
- new DemoDetails(R.string.tags_demo_label,
- R.string.tags_demo_description,
- TagsDemoActivity.class),
- new DemoDetails(R.string.tile_coordinate_demo_label,
- R.string.tile_coordinate_demo_description,
- TileCoordinateDemoActivity.class),
- new DemoDetails(R.string.tile_overlay_demo_label,
- R.string.tile_overlay_demo_description,
- TileOverlayDemoActivity.class),
- new DemoDetails(R.string.ui_settings_demo_label,
- R.string.ui_settings_demo_description,
- UiSettingsDemoActivity.class),
- new DemoDetails(R.string.visible_region_demo_label,
- R.string.visible_region_demo_description,
- VisibleRegionDemoActivity.class),
- };
-}
diff --git a/ApiDemos/java/app/src/v3/java/com/example/mapdemo/DemoDetailsList.java b/ApiDemos/java/app/src/v3/java/com/example/mapdemo/DemoDetailsList.java
deleted file mode 100755
index a9d2aae76..000000000
--- a/ApiDemos/java/app/src/v3/java/com/example/mapdemo/DemoDetailsList.java
+++ /dev/null
@@ -1,150 +0,0 @@
-// Copyright 2020 Google LLC
-//
-// Licensed under the Apache License, Version 2.0 (the "License");
-// you may not use this file except in compliance with the License.
-// You may obtain a copy of the License at
-//
-// http://www.apache.org/licenses/LICENSE-2.0
-//
-// Unless required by applicable law or agreed to in writing, software
-// distributed under the License is distributed on an "AS IS" BASIS,
-// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
-// See the License for the specific language governing permissions and
-// limitations under the License.
-
-
-package com.example.mapdemo;
-
-import com.example.mapdemo.polyline.PolylineDemoActivity;
-
-/**
- * A list of all the demos we have available.
- */
-public final class DemoDetailsList {
-
- /**
- * This class should not be instantiated.
- */
- private DemoDetailsList() {
- }
-
- public static final DemoDetails[] DEMOS = {
- new DemoDetails(R.string.basic_map_demo_label,
- R.string.basic_map_demo_description,
- BasicMapDemoActivity.class),
- new DemoDetails(R.string.camera_demo_label,
- R.string.camera_demo_description,
- CameraDemoActivity.class),
- new DemoDetails(R.string.camera_clamping_demo_label,
- R.string.camera_clamping_demo_description,
- CameraClampingDemoActivity.class),
- new DemoDetails(R.string.circle_demo_label,
- R.string.circle_demo_description,
- CircleDemoActivity.class),
- new DemoDetails(R.string.cloud_styling_label,
- R.string.cloud_styling_description,
- CloudBasedMapStylingDemoActivity.class),
- new DemoDetails(R.string.events_demo_label,
- R.string.events_demo_description,
- EventsDemoActivity.class),
- new DemoDetails(R.string.ground_overlay_demo_label,
- R.string.ground_overlay_demo_description,
- GroundOverlayDemoActivity.class),
- new DemoDetails(R.string.indoor_demo_label,
- R.string.indoor_demo_description,
- IndoorDemoActivity.class),
- new DemoDetails(R.string.layers_demo_label,
- R.string.layers_demo_description,
- LayersDemoActivity.class),
- new DemoDetails(R.string.lite_demo_label,
- R.string.lite_demo_description,
- LiteDemoActivity.class),
- new DemoDetails(R.string.lite_list_demo_label,
- R.string.lite_list_demo_description,
- LiteListDemoActivity.class),
- new DemoDetails(R.string.location_source_demo_label,
- R.string.location_source_demo_description,
- LocationSourceDemoActivity.class),
- new DemoDetails(R.string.map_in_pager_demo_label,
- R.string.map_in_pager_demo_description,
- MapInPagerDemoActivity.class),
- new DemoDetails(R.string.marker_demo_label,
- R.string.marker_demo_description,
- MarkerDemoActivity.class),
- new DemoDetails(R.string.marker_collision_label,
- R.string.marker_collision_description,
- MarkerCollisionDemoActivity.class),
- new DemoDetails(R.string.marker_close_info_window_on_retap_demo_label,
- R.string.marker_close_info_window_on_retap_demo_description,
- MarkerCloseInfoWindowOnRetapDemoActivity.class),
- new DemoDetails(R.string.polyline_demo_label,
- R.string.polyline_demo_description,
- PolylineDemoActivity.class),
- new DemoDetails(R.string.multi_map_demo_label,
- R.string.multi_map_demo_description,
- MultiMapDemoActivity.class),
- new DemoDetails(R.string.my_location_demo_label,
- R.string.my_location_demo_description,
- MyLocationDemoActivity.class),
- new DemoDetails(R.string.options_demo_label,
- R.string.options_demo_description,
- OptionsDemoActivity.class),
- new DemoDetails(R.string.polygon_demo_label,
- R.string.polygon_demo_description,
- PolygonDemoActivity.class),
- new DemoDetails(R.string.polyline_demo_label,
- R.string.polyline_demo_description,
- PolylineDemoActivity.class),
- new DemoDetails(R.string.programmatic_demo_label,
- R.string.programmatic_demo_description,
- ProgrammaticDemoActivity.class),
- new DemoDetails(R.string.raw_map_view_demo_label,
- R.string.raw_map_view_demo_description,
- RawMapViewDemoActivity.class),
- new DemoDetails(R.string.retain_map_demo_label,
- R.string.retain_map_demo_description,
- RetainMapDemoActivity.class),
- new DemoDetails(R.string.save_state_demo_label,
- R.string.save_state_demo_description,
- SaveStateDemoActivity.class),
- new DemoDetails(R.string.snapshot_demo_label,
- R.string.snapshot_demo_description,
- SnapshotDemoActivity.class),
- new DemoDetails(R.string.split_street_view_panorama_and_map_demo_label,
- R.string.split_street_view_panorama_and_map_demo_description,
- SplitStreetViewPanoramaAndMapDemoActivity.class),
- new DemoDetails(R.string.street_view_panorama_basic_demo_label,
- R.string.street_view_panorama_basic_demo_description,
- StreetViewPanoramaBasicDemoActivity.class),
- new DemoDetails(R.string.street_view_panorama_events_demo_label,
- R.string.street_view_panorama_events_demo_description,
- StreetViewPanoramaEventsDemoActivity.class),
- new DemoDetails(R.string.street_view_panorama_navigation_demo_label,
- R.string.street_view_panorama_navigation_demo_description,
- StreetViewPanoramaNavigationDemoActivity.class),
- new DemoDetails(R.string.street_view_panorama_options_demo_label,
- R.string.street_view_panorama_options_demo_description,
- StreetViewPanoramaOptionsDemoActivity.class),
- new DemoDetails(R.string.street_view_panorama_view_demo_label,
- R.string.street_view_panorama_view_demo_description,
- StreetViewPanoramaViewDemoActivity.class),
- new DemoDetails(R.string.styled_map_demo_label,
- R.string.styled_map_demo_description,
- StyledMapDemoActivity.class),
- new DemoDetails(R.string.tags_demo_label,
- R.string.tags_demo_description,
- TagsDemoActivity.class),
- new DemoDetails(R.string.tile_coordinate_demo_label,
- R.string.tile_coordinate_demo_description,
- TileCoordinateDemoActivity.class),
- new DemoDetails(R.string.tile_overlay_demo_label,
- R.string.tile_overlay_demo_description,
- TileOverlayDemoActivity.class),
- new DemoDetails(R.string.ui_settings_demo_label,
- R.string.ui_settings_demo_description,
- UiSettingsDemoActivity.class),
- new DemoDetails(R.string.visible_region_demo_label,
- R.string.visible_region_demo_description,
- VisibleRegionDemoActivity.class),
- };
-}
diff --git a/ApiDemos/java/app/src/v3/res/layout/camera_clamping_demo.xml b/ApiDemos/java/app/src/v3/res/layout/camera_clamping_demo.xml
deleted file mode 100644
index d5a54872e..000000000
--- a/ApiDemos/java/app/src/v3/res/layout/camera_clamping_demo.xml
+++ /dev/null
@@ -1,99 +0,0 @@
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
diff --git a/ApiDemos/java/app/src/v3/res/layout/marker_close_info_window_on_retap_demo.xml b/ApiDemos/java/app/src/v3/res/layout/marker_close_info_window_on_retap_demo.xml
deleted file mode 100644
index 87016084e..000000000
--- a/ApiDemos/java/app/src/v3/res/layout/marker_close_info_window_on_retap_demo.xml
+++ /dev/null
@@ -1,26 +0,0 @@
-
-
-
-
-
diff --git a/ApiDemos/java/app/src/v3/res/layout/marker_collision_demo.xml b/ApiDemos/java/app/src/v3/res/layout/marker_collision_demo.xml
deleted file mode 100644
index d5e2a7ec7..000000000
--- a/ApiDemos/java/app/src/v3/res/layout/marker_collision_demo.xml
+++ /dev/null
@@ -1,20 +0,0 @@
-
-
diff --git a/ApiDemos/java/app/src/v3/res/layout/polyline_width_control_fragment.xml b/ApiDemos/java/app/src/v3/res/layout/polyline_width_control_fragment.xml
deleted file mode 100644
index 4854255c3..000000000
--- a/ApiDemos/java/app/src/v3/res/layout/polyline_width_control_fragment.xml
+++ /dev/null
@@ -1,29 +0,0 @@
-
-
-
-
-
diff --git a/ApiDemos/java/app/src/v3/res/layout/snapshot_demo.xml b/ApiDemos/java/app/src/v3/res/layout/snapshot_demo.xml
deleted file mode 100755
index 77a9b9b0e..000000000
--- a/ApiDemos/java/app/src/v3/res/layout/snapshot_demo.xml
+++ /dev/null
@@ -1,67 +0,0 @@
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
diff --git a/ApiDemos/java/app/src/v3/res/layout/styled_map_demo.xml b/ApiDemos/java/app/src/v3/res/layout/styled_map_demo.xml
deleted file mode 100644
index f6abef393..000000000
--- a/ApiDemos/java/app/src/v3/res/layout/styled_map_demo.xml
+++ /dev/null
@@ -1,20 +0,0 @@
-
-
diff --git a/ApiDemos/java/app/src/v3/res/layout/tags_demo.xml b/ApiDemos/java/app/src/v3/res/layout/tags_demo.xml
deleted file mode 100644
index cc7e5fbfe..000000000
--- a/ApiDemos/java/app/src/v3/res/layout/tags_demo.xml
+++ /dev/null
@@ -1,32 +0,0 @@
-
-
-
-
-
-
-
-
\ No newline at end of file
diff --git a/ApiDemos/java/app/src/v3/res/layout/text_fragment.xml b/ApiDemos/java/app/src/v3/res/layout/text_fragment.xml
deleted file mode 100755
index 5fcc62a2d..000000000
--- a/ApiDemos/java/app/src/v3/res/layout/text_fragment.xml
+++ /dev/null
@@ -1,21 +0,0 @@
-
-
-
diff --git a/ApiDemos/java/build.gradle.kts b/ApiDemos/java/build.gradle.kts
deleted file mode 100644
index d191bfef1..000000000
--- a/ApiDemos/java/build.gradle.kts
+++ /dev/null
@@ -1,43 +0,0 @@
-/*
- * Copyright 2025 Google LLC
- *
- * Licensed under the Apache License, Version 2.0 (the "License");
- * you may not use this file except in compliance with the License.
- * You may obtain a copy of the License at
- *
- * http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- */
-
-// Top-level build file where you can add configuration options common to all sub-projects/modules.
-
-buildscript {
- repositories {
- google()
- mavenCentral()
- }
- dependencies {
- classpath("com.android.tools.build:gradle:8.8.0")
- classpath("com.google.android.libraries.mapsplatform.secrets-gradle-plugin:secrets-gradle-plugin:2.0.1")
-
- // NOTE: Do not place your application dependencies here; they belong
- // in the individual module build.gradle files
- }
-}
-
-allprojects {
- repositories {
- mavenLocal()
- google()
- mavenCentral()
- }
-}
-
-tasks.register("clean") {
- delete(rootProject.layout.projectDirectory)
-}
diff --git a/ApiDemos/java/gradle/libs.versions.toml b/ApiDemos/java/gradle/libs.versions.toml
deleted file mode 100644
index 2ae50057c..000000000
--- a/ApiDemos/java/gradle/libs.versions.toml
+++ /dev/null
@@ -1,21 +0,0 @@
-[versions]
-activity = "1.10.0"
-androidxJunit = "1.2.1"
-appcompat = "1.7.0"
-espresso = "3.6.1"
-junit = "4.13.2"
-material = "1.12.0"
-playServicesMaps = "19.0.0"
-recyclerview = "1.4.0"
-volley = "1.2.1"
-
-[libraries]
-activity = { module = "androidx.activity:activity", version.ref = "activity" }
-androidxJunit = { group = "androidx.test.ext", name = "junit", version.ref = "androidxJunit" }
-appcompat = { group = "androidx.appcompat", name = "appcompat", version.ref = "appcompat" }
-espressoCore = { group = "androidx.test.espresso", name = "espresso-core", version.ref = "espresso" }
-junit = { group = "junit", name = "junit", version.ref = "junit" }
-material = { group = "com.google.android.material", name = "material", version.ref = "material" }
-playServicesMaps = { group = "com.google.android.gms", name = "play-services-maps", version.ref = "playServicesMaps" }
-recyclerview = { group = "androidx.recyclerview", name = "recyclerview", version.ref = "recyclerview" }
-volley = { group = "com.android.volley", name = "volley", version.ref = "volley" }
\ No newline at end of file
diff --git a/ApiDemos/java/gradle/wrapper/gradle-wrapper.jar b/ApiDemos/java/gradle/wrapper/gradle-wrapper.jar
deleted file mode 100644
index 8c0fb64a8..000000000
Binary files a/ApiDemos/java/gradle/wrapper/gradle-wrapper.jar and /dev/null differ
diff --git a/ApiDemos/java/gradle/wrapper/gradle-wrapper.properties b/ApiDemos/java/gradle/wrapper/gradle-wrapper.properties
deleted file mode 100644
index cd0b4fa22..000000000
--- a/ApiDemos/java/gradle/wrapper/gradle-wrapper.properties
+++ /dev/null
@@ -1,6 +0,0 @@
-#Wed Jul 10 22:13:55 CEST 2024
-distributionBase=GRADLE_USER_HOME
-distributionPath=wrapper/dists
-distributionUrl=https\://services.gradle.org/distributions/gradle-8.10.2-bin.zip
-zipStoreBase=GRADLE_USER_HOME
-zipStorePath=wrapper/dists
diff --git a/ApiDemos/java/gradlew b/ApiDemos/java/gradlew
deleted file mode 100755
index 91a7e269e..000000000
--- a/ApiDemos/java/gradlew
+++ /dev/null
@@ -1,164 +0,0 @@
-#!/usr/bin/env bash
-
-##############################################################################
-##
-## Gradle start up script for UN*X
-##
-##############################################################################
-
-# Add default JVM options here. You can also use JAVA_OPTS and GRADLE_OPTS to pass JVM options to this script.
-DEFAULT_JVM_OPTS=""
-
-APP_NAME="Gradle"
-APP_BASE_NAME=`basename "$0"`
-
-# Use the maximum available, or set MAX_FD != -1 to use that value.
-MAX_FD="maximum"
-
-warn ( ) {
- echo "$*"
-}
-
-die ( ) {
- echo
- echo "$*"
- echo
- exit 1
-}
-
-# OS specific support (must be 'true' or 'false').
-cygwin=false
-msys=false
-darwin=false
-case "`uname`" in
- CYGWIN* )
- cygwin=true
- ;;
- Darwin* )
- darwin=true
- ;;
- MINGW* )
- msys=true
- ;;
-esac
-
-# For Cygwin, ensure paths are in UNIX format before anything is touched.
-if $cygwin ; then
- [ -n "$JAVA_HOME" ] && JAVA_HOME=`cygpath --unix "$JAVA_HOME"`
-fi
-
-# Attempt to set APP_HOME
-# Resolve links: $0 may be a link
-PRG="$0"
-# Need this for relative symlinks.
-while [ -h "$PRG" ] ; do
- ls=`ls -ld "$PRG"`
- link=`expr "$ls" : '.*-> \(.*\)$'`
- if expr "$link" : '/.*' > /dev/null; then
- PRG="$link"
- else
- PRG=`dirname "$PRG"`"/$link"
- fi
-done
-SAVED="`pwd`"
-cd "`dirname \"$PRG\"`/" >&-
-APP_HOME="`pwd -P`"
-cd "$SAVED" >&-
-
-CLASSPATH=$APP_HOME/gradle/wrapper/gradle-wrapper.jar
-
-# Determine the Java command to use to start the JVM.
-if [ -n "$JAVA_HOME" ] ; then
- if [ -x "$JAVA_HOME/jre/sh/java" ] ; then
- # IBM's JDK on AIX uses strange locations for the executables
- JAVACMD="$JAVA_HOME/jre/sh/java"
- else
- JAVACMD="$JAVA_HOME/bin/java"
- fi
- if [ ! -x "$JAVACMD" ] ; then
- die "ERROR: JAVA_HOME is set to an invalid directory: $JAVA_HOME
-
-Please set the JAVA_HOME variable in your environment to match the
-location of your Java installation."
- fi
-else
- JAVACMD="java"
- which java >/dev/null 2>&1 || die "ERROR: JAVA_HOME is not set and no 'java' command could be found in your PATH.
-
-Please set the JAVA_HOME variable in your environment to match the
-location of your Java installation."
-fi
-
-# Increase the maximum file descriptors if we can.
-if [ "$cygwin" = "false" -a "$darwin" = "false" ] ; then
- MAX_FD_LIMIT=`ulimit -H -n`
- if [ $? -eq 0 ] ; then
- if [ "$MAX_FD" = "maximum" -o "$MAX_FD" = "max" ] ; then
- MAX_FD="$MAX_FD_LIMIT"
- fi
- ulimit -n $MAX_FD
- if [ $? -ne 0 ] ; then
- warn "Could not set maximum file descriptor limit: $MAX_FD"
- fi
- else
- warn "Could not query maximum file descriptor limit: $MAX_FD_LIMIT"
- fi
-fi
-
-# For Darwin, add options to specify how the application appears in the dock
-if $darwin; then
- GRADLE_OPTS="$GRADLE_OPTS \"-Xdock:name=$APP_NAME\" \"-Xdock:icon=$APP_HOME/media/gradle.icns\""
-fi
-
-# For Cygwin, switch paths to Windows format before running java
-if $cygwin ; then
- APP_HOME=`cygpath --path --mixed "$APP_HOME"`
- CLASSPATH=`cygpath --path --mixed "$CLASSPATH"`
-
- # We build the pattern for arguments to be converted via cygpath
- ROOTDIRSRAW=`find -L / -maxdepth 1 -mindepth 1 -type d 2>/dev/null`
- SEP=""
- for dir in $ROOTDIRSRAW ; do
- ROOTDIRS="$ROOTDIRS$SEP$dir"
- SEP="|"
- done
- OURCYGPATTERN="(^($ROOTDIRS))"
- # Add a user-defined pattern to the cygpath arguments
- if [ "$GRADLE_CYGPATTERN" != "" ] ; then
- OURCYGPATTERN="$OURCYGPATTERN|($GRADLE_CYGPATTERN)"
- fi
- # Now convert the arguments - kludge to limit ourselves to /bin/sh
- i=0
- for arg in "$@" ; do
- CHECK=`echo "$arg"|egrep -c "$OURCYGPATTERN" -`
- CHECK2=`echo "$arg"|egrep -c "^-"` ### Determine if an option
-
- if [ $CHECK -ne 0 ] && [ $CHECK2 -eq 0 ] ; then ### Added a condition
- eval `echo args$i`=`cygpath --path --ignore --mixed "$arg"`
- else
- eval `echo args$i`="\"$arg\""
- fi
- i=$((i+1))
- done
- case $i in
- (0) set -- ;;
- (1) set -- "$args0" ;;
- (2) set -- "$args0" "$args1" ;;
- (3) set -- "$args0" "$args1" "$args2" ;;
- (4) set -- "$args0" "$args1" "$args2" "$args3" ;;
- (5) set -- "$args0" "$args1" "$args2" "$args3" "$args4" ;;
- (6) set -- "$args0" "$args1" "$args2" "$args3" "$args4" "$args5" ;;
- (7) set -- "$args0" "$args1" "$args2" "$args3" "$args4" "$args5" "$args6" ;;
- (8) set -- "$args0" "$args1" "$args2" "$args3" "$args4" "$args5" "$args6" "$args7" ;;
- (9) set -- "$args0" "$args1" "$args2" "$args3" "$args4" "$args5" "$args6" "$args7" "$args8" ;;
- esac
-fi
-
-# Split up the JVM_OPTS And GRADLE_OPTS values into an array, following the shell quoting and substitution rules
-function splitJvmOpts() {
- JVM_OPTS=("$@")
-}
-eval splitJvmOpts $DEFAULT_JVM_OPTS $JAVA_OPTS $GRADLE_OPTS
-JVM_OPTS[${#JVM_OPTS[*]}]="-Dorg.gradle.appname=$APP_BASE_NAME"
-
-exec "$JAVACMD" "${JVM_OPTS[@]}" -classpath "$CLASSPATH" org.gradle.wrapper.GradleWrapperMain "$@"
diff --git a/ApiDemos/java/gradlew.bat b/ApiDemos/java/gradlew.bat
deleted file mode 100644
index aec99730b..000000000
--- a/ApiDemos/java/gradlew.bat
+++ /dev/null
@@ -1,90 +0,0 @@
-@if "%DEBUG%" == "" @echo off
-@rem ##########################################################################
-@rem
-@rem Gradle startup script for Windows
-@rem
-@rem ##########################################################################
-
-@rem Set local scope for the variables with windows NT shell
-if "%OS%"=="Windows_NT" setlocal
-
-@rem Add default JVM options here. You can also use JAVA_OPTS and GRADLE_OPTS to pass JVM options to this script.
-set DEFAULT_JVM_OPTS=
-
-set DIRNAME=%~dp0
-if "%DIRNAME%" == "" set DIRNAME=.
-set APP_BASE_NAME=%~n0
-set APP_HOME=%DIRNAME%
-
-@rem Find java.exe
-if defined JAVA_HOME goto findJavaFromJavaHome
-
-set JAVA_EXE=java.exe
-%JAVA_EXE% -version >NUL 2>&1
-if "%ERRORLEVEL%" == "0" goto init
-
-echo.
-echo ERROR: JAVA_HOME is not set and no 'java' command could be found in your PATH.
-echo.
-echo Please set the JAVA_HOME variable in your environment to match the
-echo location of your Java installation.
-
-goto fail
-
-:findJavaFromJavaHome
-set JAVA_HOME=%JAVA_HOME:"=%
-set JAVA_EXE=%JAVA_HOME%/bin/java.exe
-
-if exist "%JAVA_EXE%" goto init
-
-echo.
-echo ERROR: JAVA_HOME is set to an invalid directory: %JAVA_HOME%
-echo.
-echo Please set the JAVA_HOME variable in your environment to match the
-echo location of your Java installation.
-
-goto fail
-
-:init
-@rem Get command-line arguments, handling Windowz variants
-
-if not "%OS%" == "Windows_NT" goto win9xME_args
-if "%@eval[2+2]" == "4" goto 4NT_args
-
-:win9xME_args
-@rem Slurp the command line arguments.
-set CMD_LINE_ARGS=
-set _SKIP=2
-
-:win9xME_args_slurp
-if "x%~1" == "x" goto execute
-
-set CMD_LINE_ARGS=%*
-goto execute
-
-:4NT_args
-@rem Get arguments from the 4NT Shell from JP Software
-set CMD_LINE_ARGS=%$
-
-:execute
-@rem Setup the command line
-
-set CLASSPATH=%APP_HOME%\gradle\wrapper\gradle-wrapper.jar
-
-@rem Execute Gradle
-"%JAVA_EXE%" %DEFAULT_JVM_OPTS% %JAVA_OPTS% %GRADLE_OPTS% "-Dorg.gradle.appname=%APP_BASE_NAME%" -classpath "%CLASSPATH%" org.gradle.wrapper.GradleWrapperMain %CMD_LINE_ARGS%
-
-:end
-@rem End local scope for the variables with windows NT shell
-if "%ERRORLEVEL%"=="0" goto mainEnd
-
-:fail
-rem Set variable GRADLE_EXIT_CONSOLE if you need the _script_ return code instead of
-rem the _cmd.exe /c_ return code!
-if not "" == "%GRADLE_EXIT_CONSOLE%" exit 1
-exit /b 1
-
-:mainEnd
-if "%OS%"=="Windows_NT" endlocal
-
-:omega
diff --git a/ApiDemos/kotlin/.gitignore b/ApiDemos/kotlin/.gitignore
deleted file mode 100644
index 1f87191a4..000000000
--- a/ApiDemos/kotlin/.gitignore
+++ /dev/null
@@ -1,10 +0,0 @@
-*.iml
-.gradle
-/local.properties
-/.idea/workspace.xml
-/.idea/libraries
-.DS_Store
-/build
-/captures
-.externalNativeBuild
-secure.properties
diff --git a/ApiDemos/kotlin/README.md b/ApiDemos/kotlin/README.md
deleted file mode 100644
index fd5e0697b..000000000
--- a/ApiDemos/kotlin/README.md
+++ /dev/null
@@ -1,82 +0,0 @@
-Google Maps Android API Demos
-===================================
-
-These are demos for the [Maps SDK for Android](https://developers.google.com/maps/documentation/android-api/)
-and [Maps SDK for Android V3 BETA](https://developers.google.com/maps/documentation/android-sdk/v3-client-migration) libraries
-in Kotlin.
-
-They demonstrate most of the features available in the API.
-
-The Maps SDK for Android samples can be found under the `main` gradle product
-flavor, while the Maps SDK V3 BETA samples can be found under the `v3` gradle
-product flavor. The active product flavor can be modified through
-Android Studio’s “Build Variants” toolbar options.
-
-Pre-requisites
---------------
-
-- Android API level 21+
-- Latest Android Build Tools
-- Google Repository
-- Google Play Services
-
-Getting Started
----------------
-
-This sample uses the Gradle build system.
-
-First download the samples by cloning this repository or downloading an archived
-snapshot. (See the options at the top of the page.)
-
-In Android Studio, use "Open an existing Android Studio project". Next select
-the `ApiDemos/kotlin/` directory that you downloaded from this repository.
-If prompted for a gradle configuration accept the default settings.
-
-Alternatively use the `gradlew build` command to build the project directly.
-
-This demo app requires that you add your own Google Maps API key. See [Get an API key](https://developers.google.com/maps/documentation/android-sdk/get-api-key) for more instructions.
-
-# Using Dataset Styles in Android
-
-This guide explains how to create and apply dataset styles in Android by creating a map style, associating it with a map ID, uploading a dataset, and linking the dataset to the map style.
-
-## 1. Create a Map ID
-To create a new map ID, follow the steps in [Create a map ID](https://developers.google.com/maps/documentation/get-map-id#create-a-map-id). Make sure to set the **Map type** to **Android**.
-
-## 2. Create a New Map Style
-Follow the instructions in [Manage map styles](https://developers.google.com/maps/documentation/android-sdk/cloud-customization/map-styles) to create a new style and [associate it with the map ID you just created](https://developers.google.com/maps/documentation/android-sdk/cloud-customization/map-styles#associate-style-with-map-id).
-
-## 3. Upload a Dataset
-To include data-driven styling in your map:
-
-1. Upload the dataset on the [Google Maps Platform Datasets](https://console.cloud.google.com/google/maps-apis/datasets) page.
-2. Confirm that the dataset upload is successful (sometimes there can be issues due to an invalid structure).
-
-## 4. Link the Dataset to the Map Style
-To enable data-driven styling:
-
-1. Open your dataset in the [Google Maps Platform Datasets](https://console.cloud.google.com/google/maps-apis/datasets) page.
-2. Click on the **Preview** of the dataset.
-3. Associate the dataset with one of the previously created styles
-
-
-Support
--------
-
-- Stack Overflow: https://stackoverflow.com/questions/tagged/android+google-maps
-
-If you have discovered an issue with the Google Maps Android API v2, please see
-the resources here: https://developers.google.com/maps/documentation/android-api/support
-
-If you've found an error in these samples, please file an issue:
-https://github.com/googlemaps/android-samples/issues
-
-Patches are encouraged, and may be submitted according to the instructions in
-CONTRIBUTING.md.
-
-
-
-License
--------
-
-Please refer to the [LICENSE](https://github.com/googlemaps/android-samples/blob/main/LICENSE) at the root of this repo.
diff --git a/ApiDemos/kotlin/app/src/main/java/com/example/kotlindemos/DataDrivenBoundariesActivity.kt b/ApiDemos/kotlin/app/src/main/java/com/example/kotlindemos/DataDrivenBoundariesActivity.kt
deleted file mode 100644
index 8d410cadc..000000000
--- a/ApiDemos/kotlin/app/src/main/java/com/example/kotlindemos/DataDrivenBoundariesActivity.kt
+++ /dev/null
@@ -1,225 +0,0 @@
-// Copyright 2025 Google LLC
-//
-// Licensed under the Apache License, Version 2.0 (the "License");
-// you may not use this file except in compliance with the License.
-// You may obtain a copy of the License at
-//
-// http://www.apache.org/licenses/LICENSE-2.0
-//
-// Unless required by applicable law or agreed to in writing, software
-// distributed under the License is distributed on an "AS IS" BASIS,
-// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
-// See the License for the specific language governing permissions and
-// limitations under the License.
-package com.example.kotlindemos
-
-import android.graphics.Color
-import android.os.Build
-import android.os.Bundle
-import android.widget.Button
-import androidx.annotation.RequiresApi
-import androidx.appcompat.app.AppCompatActivity
-import com.google.android.gms.maps.CameraUpdateFactory
-import com.google.android.gms.maps.GoogleMap
-import com.google.android.gms.maps.OnMapReadyCallback
-import com.google.android.gms.maps.SupportMapFragment
-import com.google.android.gms.maps.model.Feature
-import com.google.android.gms.maps.model.FeatureClickEvent
-import com.google.android.gms.maps.model.FeatureLayer
-import com.google.android.gms.maps.model.FeatureLayerOptions
-import com.google.android.gms.maps.model.FeatureStyle
-import com.google.android.gms.maps.model.FeatureType
-import com.google.android.gms.maps.model.LatLng
-import com.google.android.gms.maps.model.MapCapabilities
-import com.google.android.gms.maps.model.PlaceFeature
-
-/**
- * This sample showcases how to use the Data-driven styling for boundaries. For more information
- * on how the Data-driven styling for boundaries work, check out the following link:
- * https://developers.google.com/maps/documentation/android-sdk/dds-boundaries/overview
- */
-class DataDrivenBoundariesActivity : AppCompatActivity(), OnMapReadyCallback,
- FeatureLayer.OnFeatureClickListener {
-
-
- private lateinit var map: GoogleMap
-
- private var localityLayer: FeatureLayer? = null
-
- private var areaLevel1Layer: FeatureLayer? = null
-
- private var countryLayer: FeatureLayer? = null
-
- private val HANA_HAWAII = LatLng(20.7522, -155.9877) // Hana, Hawaii
- private val CENTER_US = LatLng(39.8283, -98.5795) // Approximate geographical center of the contiguous US
-
-
- override fun onCreate(savedInstanceState: Bundle?) {
- super.onCreate(savedInstanceState)
- setContentView(R.layout.data_driven_boundaries_demo)
-
- val mapFragment = supportFragmentManager.findFragmentById(R.id.map) as SupportMapFragment?
- mapFragment?.getMapAsync(this)
-
- findViewById(R.id.button_hawaii).setOnClickListener {
- centerMapOnLocation(HANA_HAWAII, 13.5f) // Seattle coordinates
- }
-
- findViewById(R.id.button_us).setOnClickListener {
- centerMapOnLocation(CENTER_US, 1f) // New York coordinates
- }
- }
-
- private fun centerMapOnLocation(location: LatLng, zoomLevel: Float) {
- map.moveCamera(CameraUpdateFactory.newLatLngZoom(location, zoomLevel))
- }
-
-
- @RequiresApi(Build.VERSION_CODES.O)
- override fun onMapReady(googleMap: GoogleMap) {
-
- map = googleMap
- val capabilities: MapCapabilities = map.mapCapabilities
- println("Data-driven Styling is available: " + capabilities.isDataDrivenStylingAvailable)
-
- // Get the LOCALITY feature layer.
- localityLayer = googleMap.getFeatureLayer(
- FeatureLayerOptions.Builder()
- .featureType(FeatureType.LOCALITY)
- .build()
- )
-
- // Apply style factory function to LOCALITY layer.
- styleLocalityLayer()
-
- // Get the ADMINISTRATIVE_AREA_LEVEL_1 feature layer.
- areaLevel1Layer = googleMap.getFeatureLayer(
- FeatureLayerOptions.Builder()
- .featureType(FeatureType.ADMINISTRATIVE_AREA_LEVEL_1)
- .build()
- )
-
- // Apply style factory function to ADMINISTRATIVE_AREA_LEVEL_1 layer.
- styleAreaLevel1Layer()
-
- // Get the COUNTRY feature layer.
- countryLayer = googleMap.getFeatureLayer(
- FeatureLayerOptions.Builder()
- .featureType(FeatureType.COUNTRY)
- .build()
- )
-
- // Register the click event handler for the Country layer.
- countryLayer?.addOnFeatureClickListener(this)
-
- // Apply default style to all countries on load to enable clicking.
- styleCountryLayer()
- }
-
-
- private fun styleLocalityLayer() {
-
- // Create the style factory function.
- val styleFactory = FeatureLayer.StyleFactory { feature: Feature ->
-
- // Check if the feature is an instance of PlaceFeature,
- // which contains a place ID.
- if (feature is PlaceFeature) {
- val placeFeature: PlaceFeature = feature
-
- // Determine if the place ID is for Hana, HI.
- if (placeFeature.placeId == "ChIJ0zQtYiWsVHkRk8lRoB1RNPo") {
- // Use FeatureStyle.Builder to configure the FeatureStyle object
- // returned by the style factory function.
- return@StyleFactory FeatureStyle.Builder()
- // Define a style with purple fill at 50% opacity and
- // solid purple border.
- .fillColor(0x80810FCB.toInt())
- .strokeColor(0xFF810FCB.toInt())
- .build()
- }
- }
- return@StyleFactory null
- }
-
- // Apply the style factory function to the feature layer.
- localityLayer?.featureStyle = styleFactory
- }
-
- private fun styleAreaLevel1Layer() {
- val styleFactory = FeatureLayer.StyleFactory { feature: Feature ->
- if (feature is PlaceFeature) {
- val placeFeature: PlaceFeature = feature
-
- // Return a hueColor in the range [-299,299]. If the value is
- // negative, add 300 to make the value positive.
- var hueColor: Int = placeFeature.placeId.hashCode() % 300
- if (hueColor < 0) {
- hueColor += 300
- }
- return@StyleFactory FeatureStyle.Builder()
- // Set the fill color for the state based on the hashed hue color.
- .fillColor(Color.HSVToColor(150, floatArrayOf(hueColor.toFloat(), 1f, 1f)))
- .build()
- }
- return@StyleFactory null
- }
-
- // Apply the style factory function to the feature layer.
- areaLevel1Layer?.featureStyle = styleFactory
- }
-
- // Set default fill and border for all countries to ensure that they respond
- // to click events.
- @RequiresApi(Build.VERSION_CODES.O)
- private fun styleCountryLayer() {
- val styleFactory = FeatureLayer.StyleFactory { _: Feature ->
- return@StyleFactory FeatureStyle.Builder()
- // Set the fill color for the country as white with a 10% opacity.
- // This requires minApi 26
- .fillColor(Color.argb(0.1f, 0f, 0f, 0f))
- // Set border color to solid black.
- .strokeColor(Color.BLACK)
- .build()
- }
-
- // Apply the style factory function to the country feature layer.
- countryLayer?.featureStyle = styleFactory
- }
-
- // Define the click event handler.
- override fun onFeatureClick(event: FeatureClickEvent) {
-
- // Get the list of features affected by the click using
- // getPlaceIds() defined below.
- val selectedPlaceIds = getPlaceIds(event.features)
- if (selectedPlaceIds.isNotEmpty()) {
- val styleFactory = FeatureLayer.StyleFactory { feature: Feature ->
- // Use PlaceFeature to get the placeID of the country.
- if (feature is PlaceFeature) {
- if (selectedPlaceIds.contains(feature.placeId)) {
- return@StyleFactory FeatureStyle.Builder()
- // Set the fill color to red.
- .fillColor(Color.RED)
- .build()
- }
- }
- return@StyleFactory null
- }
-
- // Apply the style factory function to the feature layer.
- countryLayer?.featureStyle = styleFactory
- }
- }
-
- // Get a List of place IDs from the FeatureClickEvent object.
- private fun getPlaceIds(features: List): List {
- val placeIds: MutableList = ArrayList()
- for (feature in features) {
- if (feature is PlaceFeature) {
- placeIds.add(feature.placeId)
- }
- }
- return placeIds
- }
-}
\ No newline at end of file
diff --git a/ApiDemos/kotlin/app/src/main/java/com/example/kotlindemos/DemoDetailsList.kt b/ApiDemos/kotlin/app/src/main/java/com/example/kotlindemos/DemoDetailsList.kt
deleted file mode 100644
index f3039419b..000000000
--- a/ApiDemos/kotlin/app/src/main/java/com/example/kotlindemos/DemoDetailsList.kt
+++ /dev/null
@@ -1,237 +0,0 @@
-/*
- * Copyright 2023 Google LLC
- *
- * Licensed under the Apache License, Version 2.0 (the "License");
- * you may not use this file except in compliance with the License.
- * You may obtain a copy of the License at
- *
- * https://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- */
-
-package com.example.kotlindemos
-
-import com.example.kotlindemos.polyline.PolylineDemoActivity
-
-/**
- * A list of all the demos we have available.
- */
-class DemoDetailsList {
- companion object {
- val DEMOS = listOf(
- DemoDetails(
- R.string.advanced_markers_demo_label,
- R.string.advanced_markers_demo_details,
- AdvancedMarkersDemoActivity::class.java
- ),
- DemoDetails(
- R.string.basic_demo_label,
- R.string.basic_demo_details,
- BasicMapDemoActivity::class.java
- ),
- DemoDetails(
- R.string.background_color_customization_demo_label,
- R.string.background_color_customization_demo_description,
- BackgroundColorCustomizationDemoActivity::class.java
- ),
- DemoDetails(
- R.string.background_color_customization_programmatic_demo_label,
- R.string.background_color_customization_programmatic_demo_description,
- BackgroundColorCustomizationProgrammaticDemoActivity::class.java
- ),
- DemoDetails(
- R.string.camera_demo_label,
- R.string.camera_demo_description,
- CameraDemoActivity::class.java
- ),
- DemoDetails(
- R.string.camera_clamping_demo_label,
- R.string.camera_clamping_demo_description,
- CameraClampingDemoActivity::class.java
- ),
- DemoDetails(
- R.string.circle_demo_label, R.string.circle_demo_details,
- CircleDemoActivity::class.java
- ),
- DemoDetails(
- R.string.cloud_styling_label, R.string.cloud_styling_description,
- CloudBasedMapStylingDemoActivity::class.java
- ),
- DemoDetails(
- R.string.close_info_window_demo_label,
- R.string.close_info_window_demo_details,
- MarkerCloseInfoWindowOnRetapDemoActivity::class.java
- ),
- DemoDetails(
- R.string.data_driven_styling_label,
- R.string.data_driven_styling_details,
- DataDrivenDatasetStylingActivity::class.java
- ),
- DemoDetails(
- R.string.data_driven_boundaries_label,
- R.string.data_driven_boundaries_details,
- DataDrivenBoundariesActivity::class.java
- ),
- DemoDetails(
- R.string.events_demo_label,
- R.string.events_demo_details,
- EventsDemoActivity::class.java
- ),
- DemoDetails(
- R.string.ground_overlay_demo_label,
- R.string.ground_overlay_demo_details,
- GroundOverlayDemoActivity::class.java
- ),
- DemoDetails(
- R.string.indoor_demo_label,
- R.string.indoor_demo_details,
- IndoorDemoActivity::class.java
- ),
- DemoDetails(
- R.string.layers_demo_label,
- R.string.layers_demo_description,
- LayersDemoActivity::class.java
- ),
- DemoDetails(
- R.string.lite_demo_label,
- R.string.lite_demo_details,
- LiteDemoActivity::class.java
- ),
- DemoDetails(
- R.string.location_source_demo_label,
- R.string.location_source_demo_description,
- LocationSourceDemoActivity::class.java
- ),
- DemoDetails(
- R.string.lite_list_demo_label,
- R.string.lite_list_demo_details,
- LiteListDemoActivity::class.java
- ),
- DemoDetails(
- R.string.map_in_pager_demo_label,
- R.string.map_in_pager_demo_description,
- MapInPagerDemoActivity::class.java
- ),
- DemoDetails(
- R.string.map_color_scheme_demo_label,
- R.string.map_color_scheme_demo_description,
- MapColorSchemeActivity::class.java
- ),
- DemoDetails(
- R.string.markers_demo_label,
- R.string.markers_demo_description,
- MarkerDemoActivity::class.java
- ),
- DemoDetails(
- R.string.multi_map_demo_label,
- R.string.multi_map_demo_description,
- MultiMapDemoActivity::class.java
- ),
- DemoDetails(
- R.string.my_location_demo_label,
- R.string.my_location_demo_details,
- MyLocationDemoActivity::class.java
- ),
- DemoDetails(
- R.string.options_demo_label,
- R.string.options_demo_description,
- OptionsDemoActivity::class.java
- ),
- DemoDetails(
- R.string.polygon_demo_label,
- R.string.polygon_demo_details,
- PolygonDemoActivity::class.java
- ),
- DemoDetails(
- R.string.polyline_demo_label,
- R.string.polyline_demo_description,
- PolylineDemoActivity::class.java
- ),
- DemoDetails(
- R.string.programmatic_demo_label,
- R.string.programmatic_demo_description,
- ProgrammaticDemoActivity::class.java
- ),
- DemoDetails(
- R.string.raw_map_view_demo_label,
- R.string.raw_map_view_demo_description,
- RawMapViewDemoActivity::class.java
- ),
- DemoDetails(
- R.string.save_state_demo_label,
- R.string.save_state_demo_description,
- SaveStateDemoActivity::class.java
- ),
- DemoDetails(
- R.string.snapshot_demo_label,
- R.string.snapshot_demo_description,
- SnapshotDemoActivity::class.java
- ),
- DemoDetails(
- R.string.street_view_panorama_basic_demo_label,
- R.string.street_view_panorama_basic_demo_details,
- StreetViewPanoramaBasicDemoActivity::class.java
- ),
- DemoDetails(
- R.string.street_view_panorama_navigation_demo_label,
- R.string.street_view_panorama_navigation_demo_details,
- StreetViewPanoramaNavigationDemoActivity::class.java
- ),
- DemoDetails(
- R.string.split_street_view_panorama_and_map_demo_label,
- R.string.split_street_view_panorama_and_map_demo_details,
- SplitStreetViewPanoramaAndMapDemoActivity::class.java
- ),
- DemoDetails(
- R.string.street_view_panorama_options_demo_label,
- R.string.street_view_panorama_options_demo_details,
- StreetViewPanoramaOptionsDemoActivity::class.java
- ),
- DemoDetails(
- R.string.street_view_panorama_events_demo_label,
- R.string.street_view_panorama_events_demo_details,
- StreetViewPanoramaEventsDemoActivity::class.java
- ),
- DemoDetails(
- R.string.street_view_panorama_view_demo_label,
- R.string.street_view_panorama_view_demo_details,
- StreetViewPanoramaViewDemoActivity::class.java
- ),
- DemoDetails(
- R.string.styled_map_demo_label,
- R.string.styled_map_demo_description,
- StyledMapDemoActivity::class.java
- ),
- DemoDetails(
- R.string.tags_demo_label,
- R.string.tags_demo_details,
- TagsDemoActivity::class.java
- ),
- DemoDetails(
- R.string.tile_coordinate_demo_label,
- R.string.tile_coordinate_demo_description,
- TileCoordinateDemoActivity::class.java
- ),
- DemoDetails(
- R.string.tile_overlay_demo_label,
- R.string.tile_overlay_demo_description,
- TileOverlayDemoActivity::class.java
- ),
- DemoDetails(
- R.string.ui_settings_demo_label,
- R.string.ui_settings_demo_details,
- UiSettingsDemoActivity::class.java
- ),
- DemoDetails(
- R.string.region_demo_label,
- R.string.region_demo_details,
- VisibleRegionDemoActivity::class.java
- )
- )
- }
-}
\ No newline at end of file
diff --git a/ApiDemos/kotlin/app/src/main/java/com/example/kotlindemos/ProgrammaticDemoActivity.kt b/ApiDemos/kotlin/app/src/main/java/com/example/kotlindemos/ProgrammaticDemoActivity.kt
deleted file mode 100644
index b19cf94c5..000000000
--- a/ApiDemos/kotlin/app/src/main/java/com/example/kotlindemos/ProgrammaticDemoActivity.kt
+++ /dev/null
@@ -1,55 +0,0 @@
-// Copyright 2020 Google LLC
-//
-// Licensed under the Apache License, Version 2.0 (the "License");
-// you may not use this file except in compliance with the License.
-// You may obtain a copy of the License at
-//
-// http://www.apache.org/licenses/LICENSE-2.0
-//
-// Unless required by applicable law or agreed to in writing, software
-// distributed under the License is distributed on an "AS IS" BASIS,
-// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
-// See the License for the specific language governing permissions and
-// limitations under the License.
-package com.example.kotlindemos
-
-import android.R
-import android.os.Bundle
-import androidx.appcompat.app.AppCompatActivity
-import androidx.lifecycle.lifecycleScope
-import com.google.android.gms.maps.SupportMapFragment
-import com.google.android.gms.maps.model.LatLng
-import com.google.maps.android.ktx.addMarker
-import com.google.maps.android.ktx.awaitMap
-
-/**
- * Demonstrates how to instantiate a SupportMapFragment programmatically and add a marker to it.
- */
-class ProgrammaticDemoActivity : AppCompatActivity() {
- override fun onCreate(savedInstanceState: Bundle?) {
- super.onCreate(savedInstanceState)
-
- // It isn't possible to set a fragment's id programmatically so we set a tag instead and
- // search for it using that.
- val mapFragment =
- supportFragmentManager.findFragmentByTag(MAP_FRAGMENT_TAG) as SupportMapFragment? ?:
- SupportMapFragment.newInstance().also {
- // Then we add it using a FragmentTransaction.
- val fragmentTransaction = supportFragmentManager.beginTransaction()
- fragmentTransaction.add(R.id.content, it, MAP_FRAGMENT_TAG)
- fragmentTransaction.commit()
- }
-
- lifecycleScope.launchWhenCreated {
- val map = mapFragment.awaitMap()
- map.addMarker {
- position(LatLng(0.0, 0.0))
- title("Marker")
- }
- }
- }
-
- companion object {
- private const val MAP_FRAGMENT_TAG = "map"
- }
-}
\ No newline at end of file
diff --git a/ApiDemos/kotlin/app/src/main/java/com/example/kotlindemos/SnapshotDemoActivity.kt b/ApiDemos/kotlin/app/src/main/java/com/example/kotlindemos/SnapshotDemoActivity.kt
deleted file mode 100755
index f3bc0b06c..000000000
--- a/ApiDemos/kotlin/app/src/main/java/com/example/kotlindemos/SnapshotDemoActivity.kt
+++ /dev/null
@@ -1,78 +0,0 @@
-// Copyright 2020 Google LLC
-//
-// Licensed under the Apache License, Version 2.0 (the "License");
-// you may not use this file except in compliance with the License.
-// You may obtain a copy of the License at
-//
-// http://www.apache.org/licenses/LICENSE-2.0
-//
-// Unless required by applicable law or agreed to in writing, software
-// distributed under the License is distributed on an "AS IS" BASIS,
-// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
-// See the License for the specific language governing permissions and
-// limitations under the License.
-package com.example.kotlindemos
-
-import android.os.Bundle
-import android.view.View
-import android.widget.Button
-import android.widget.CheckBox
-import android.widget.ImageView
-import androidx.appcompat.app.AppCompatActivity
-import androidx.lifecycle.lifecycleScope
-import com.google.android.gms.maps.GoogleMap
-import com.google.android.gms.maps.GoogleMap.SnapshotReadyCallback
-import com.google.android.gms.maps.SupportMapFragment
-import com.google.maps.android.ktx.awaitMap
-
-/**
- * This shows how to take a snapshot of the map.
- */
-class SnapshotDemoActivity : AppCompatActivity() {
- /**
- * Note that this may be null if the Google Play services APK is not available.
- */
- private lateinit var map: GoogleMap
- private lateinit var waitForMapLoadCheckBox: CheckBox
- private lateinit var snapshotHolder: ImageView
-
- override fun onCreate(savedInstanceState: Bundle?) {
- super.onCreate(savedInstanceState)
- setContentView(R.layout.snapshot_demo)
- waitForMapLoadCheckBox = findViewById(R.id.wait_for_map_load)
- snapshotHolder = findViewById(R.id.snapshot_holder)
- val mapFragment = supportFragmentManager.findFragmentById(R.id.map) as SupportMapFragment
- lifecycleScope.launchWhenCreated {
- map = mapFragment.awaitMap()
- attachButtonListeners()
- }
- }
-
- private fun attachButtonListeners() {
- findViewById(R.id.button_take_snapshot).setOnClickListener {
- takeSnapshot()
- }
- findViewById(R.id.button_clear_snapshot).setOnClickListener {
- clearSnapshot()
- }
- }
-
- private fun takeSnapshot() {
- val callback =
- SnapshotReadyCallback { snapshot -> // Callback is called from the main thread, so we can modify the ImageView safely.
- snapshotHolder.setImageBitmap(snapshot)
- }
- if (waitForMapLoadCheckBox.isChecked) {
- map.setOnMapLoadedCallback { map.snapshot(callback) }
- } else {
- map.snapshot(callback)
- }
- }
-
- /**
- * Called when the clear button is clicked.
- */
- private fun clearSnapshot() {
- snapshotHolder.setImageDrawable(null)
- }
-}
\ No newline at end of file
diff --git a/ApiDemos/kotlin/app/src/main/java/com/example/kotlindemos/UiSettingsDemoActivity.kt b/ApiDemos/kotlin/app/src/main/java/com/example/kotlindemos/UiSettingsDemoActivity.kt
deleted file mode 100644
index e0f378392..000000000
--- a/ApiDemos/kotlin/app/src/main/java/com/example/kotlindemos/UiSettingsDemoActivity.kt
+++ /dev/null
@@ -1,122 +0,0 @@
-/*
- * Copyright 2018 Google LLC
- *
- * Licensed under the Apache License, Version 2.0 (the "License");
- * you may not use this file except in compliance with the License.
- * You may obtain a copy of the License at
- *
- * https://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- */
-
-package com.example.kotlindemos
-
-import android.Manifest
-import android.annotation.SuppressLint
-import android.os.Bundle
-import android.view.View
-import android.widget.CheckBox
-import androidx.appcompat.app.AppCompatActivity
-import com.google.android.gms.maps.GoogleMap
-import com.google.android.gms.maps.OnMapReadyCallback
-import com.google.android.gms.maps.SupportMapFragment
-import pub.devrel.easypermissions.AfterPermissionGranted
-import pub.devrel.easypermissions.EasyPermissions
-
-const val REQUEST_CODE_LOCATION = 123
-
-class UiSettingsDemoActivity :
- AppCompatActivity(),
- OnMapReadyCallback {
-
- private lateinit var map: GoogleMap
-
- override fun onCreate(savedInstanceState: Bundle?) {
- super.onCreate(savedInstanceState)
- setContentView(R.layout.activity_ui_settings_demo)
- val mapFragment: SupportMapFragment =
- supportFragmentManager.findFragmentById(R.id.map) as SupportMapFragment
- mapFragment.getMapAsync(this)
- }
-
- override fun onMapReady(googleMap: GoogleMap) {
- // Return early if map is not initialised properly
- map = googleMap ?: return
- enableMyLocation()
- // Set all the settings of the map to match the current state of the checkboxes
- with(map.uiSettings) {
- isZoomControlsEnabled = isChecked(R.id.zoom_button)
- isCompassEnabled = isChecked(R.id.compass_button)
- isMyLocationButtonEnabled = isChecked(R.id.myloc_button)
- isIndoorLevelPickerEnabled = isChecked(R.id.level_button)
- isMapToolbarEnabled = isChecked(R.id.maptoolbar_button)
- isZoomGesturesEnabled = isChecked(R.id.zoomgest_button)
- isScrollGesturesEnabled = isChecked(R.id.scrollgest_button)
- isTiltGesturesEnabled = isChecked(R.id.tiltgest_button)
- isRotateGesturesEnabled = isChecked(R.id.rotategest_button)
- }
- }
-
- /** On click listener for checkboxes */
- fun onClick(view: View) {
- if (view !is CheckBox) {
- return
- }
- val isChecked: Boolean = view.isChecked
- with(map.uiSettings) {
- when (view.id) {
- R.id.zoom_button -> isZoomControlsEnabled = isChecked
- R.id.compass_button -> isCompassEnabled = isChecked
- R.id.myloc_button -> isMyLocationButtonEnabled = isChecked
- R.id.level_button -> isIndoorLevelPickerEnabled = isChecked
- R.id.maptoolbar_button -> isMapToolbarEnabled = isChecked
- R.id.zoomgest_button -> isZoomGesturesEnabled = isChecked
- R.id.scrollgest_button -> isScrollGesturesEnabled = isChecked
- R.id.tiltgest_button -> isTiltGesturesEnabled = isChecked
- R.id.rotategest_button -> isRotateGesturesEnabled = isChecked
- }
- }
- }
-
- /** Returns whether the checkbox with the given id is checked */
- private fun isChecked(id: Int) = findViewById(id)?.isChecked ?: false
-
- /** Override the onRequestPermissionResult to use EasyPermissions */
- override fun onRequestPermissionsResult(
- requestCode: Int,
- permissions: Array,
- grantResults: IntArray
- ) {
- super.onRequestPermissionsResult(requestCode, permissions, grantResults)
- EasyPermissions.onRequestPermissionsResult(requestCode, permissions, grantResults, this)
- }
-
- /**
- * enableMyLocation() will enable the location of the map if the user has given permission
- * for the app to access their device location.
- * Android Studio requires an explicit check before setting map.isMyLocationEnabled to true
- * but we are using EasyPermissions to handle it so we can suppress the "MissingPermission"
- * check.
- */
- @SuppressLint("MissingPermission")
- @AfterPermissionGranted(REQUEST_CODE_LOCATION)
- private fun enableMyLocation() {
- if (hasLocationPermission()) {
- map.isMyLocationEnabled = true
- } else {
- EasyPermissions.requestPermissions(this, getString(R.string.location),
- REQUEST_CODE_LOCATION, Manifest.permission.ACCESS_FINE_LOCATION, Manifest.permission.ACCESS_COARSE_LOCATION
- )
- }
- }
-
- private fun hasLocationPermission(): Boolean {
- return EasyPermissions.hasPermissions(this, Manifest.permission.ACCESS_FINE_LOCATION) ||
- EasyPermissions.hasPermissions(this, Manifest.permission.ACCESS_COARSE_LOCATION)
- }
-}
diff --git a/ApiDemos/kotlin/app/src/main/res/drawable-hdpi/pegman.png b/ApiDemos/kotlin/app/src/main/res/drawable-hdpi/pegman.png
deleted file mode 100644
index 9508e9101..000000000
Binary files a/ApiDemos/kotlin/app/src/main/res/drawable-hdpi/pegman.png and /dev/null differ
diff --git a/ApiDemos/kotlin/app/src/main/res/drawable-mdpi/pegman.png b/ApiDemos/kotlin/app/src/main/res/drawable-mdpi/pegman.png
deleted file mode 100644
index bcb7aee42..000000000
Binary files a/ApiDemos/kotlin/app/src/main/res/drawable-mdpi/pegman.png and /dev/null differ
diff --git a/ApiDemos/kotlin/app/src/main/res/drawable-nodpi/chevron.png b/ApiDemos/kotlin/app/src/main/res/drawable-nodpi/chevron.png
deleted file mode 100644
index 399ad1e00..000000000
Binary files a/ApiDemos/kotlin/app/src/main/res/drawable-nodpi/chevron.png and /dev/null differ
diff --git a/ApiDemos/kotlin/app/src/main/res/drawable-nodpi/ook.png b/ApiDemos/kotlin/app/src/main/res/drawable-nodpi/ook.png
deleted file mode 100644
index c55fc4a1f..000000000
Binary files a/ApiDemos/kotlin/app/src/main/res/drawable-nodpi/ook.png and /dev/null differ
diff --git a/ApiDemos/kotlin/app/src/main/res/drawable-xhdpi/pegman.png b/ApiDemos/kotlin/app/src/main/res/drawable-xhdpi/pegman.png
deleted file mode 100644
index f1c8b5ccb..000000000
Binary files a/ApiDemos/kotlin/app/src/main/res/drawable-xhdpi/pegman.png and /dev/null differ
diff --git a/ApiDemos/kotlin/app/src/main/res/drawable-xxhdpi/pegman.png b/ApiDemos/kotlin/app/src/main/res/drawable-xxhdpi/pegman.png
deleted file mode 100644
index 8ff1e3359..000000000
Binary files a/ApiDemos/kotlin/app/src/main/res/drawable-xxhdpi/pegman.png and /dev/null differ
diff --git a/ApiDemos/kotlin/app/src/main/res/drawable/arrow.png b/ApiDemos/kotlin/app/src/main/res/drawable/arrow.png
deleted file mode 100644
index 77b3f5aaa..000000000
Binary files a/ApiDemos/kotlin/app/src/main/res/drawable/arrow.png and /dev/null differ
diff --git a/ApiDemos/kotlin/app/src/main/res/drawable/badge_nsw.png b/ApiDemos/kotlin/app/src/main/res/drawable/badge_nsw.png
deleted file mode 100644
index 3a1210462..000000000
Binary files a/ApiDemos/kotlin/app/src/main/res/drawable/badge_nsw.png and /dev/null differ
diff --git a/ApiDemos/kotlin/app/src/main/res/drawable/badge_nt.png b/ApiDemos/kotlin/app/src/main/res/drawable/badge_nt.png
deleted file mode 100644
index b85cf6c7e..000000000
Binary files a/ApiDemos/kotlin/app/src/main/res/drawable/badge_nt.png and /dev/null differ
diff --git a/ApiDemos/kotlin/app/src/main/res/drawable/badge_qld.png b/ApiDemos/kotlin/app/src/main/res/drawable/badge_qld.png
deleted file mode 100644
index 9787fb156..000000000
Binary files a/ApiDemos/kotlin/app/src/main/res/drawable/badge_qld.png and /dev/null differ
diff --git a/ApiDemos/kotlin/app/src/main/res/drawable/badge_sa.png b/ApiDemos/kotlin/app/src/main/res/drawable/badge_sa.png
deleted file mode 100644
index 11aa229f7..000000000
Binary files a/ApiDemos/kotlin/app/src/main/res/drawable/badge_sa.png and /dev/null differ
diff --git a/ApiDemos/kotlin/app/src/main/res/drawable/badge_victoria.png b/ApiDemos/kotlin/app/src/main/res/drawable/badge_victoria.png
deleted file mode 100644
index 80db77e77..000000000
Binary files a/ApiDemos/kotlin/app/src/main/res/drawable/badge_victoria.png and /dev/null differ
diff --git a/ApiDemos/kotlin/app/src/main/res/drawable/badge_wa.png b/ApiDemos/kotlin/app/src/main/res/drawable/badge_wa.png
deleted file mode 100644
index 7c0dc76c5..000000000
Binary files a/ApiDemos/kotlin/app/src/main/res/drawable/badge_wa.png and /dev/null differ
diff --git a/ApiDemos/kotlin/app/src/main/res/drawable/chevron.png b/ApiDemos/kotlin/app/src/main/res/drawable/chevron.png
deleted file mode 100644
index 259e277d4..000000000
Binary files a/ApiDemos/kotlin/app/src/main/res/drawable/chevron.png and /dev/null differ
diff --git a/ApiDemos/kotlin/app/src/main/res/drawable/custom_info_bubble.9.png b/ApiDemos/kotlin/app/src/main/res/drawable/custom_info_bubble.9.png
deleted file mode 100644
index b6bf33b75..000000000
Binary files a/ApiDemos/kotlin/app/src/main/res/drawable/custom_info_bubble.9.png and /dev/null differ
diff --git a/ApiDemos/kotlin/app/src/main/res/drawable/harbour_bridge.jpg b/ApiDemos/kotlin/app/src/main/res/drawable/harbour_bridge.jpg
deleted file mode 100644
index f13125903..000000000
Binary files a/ApiDemos/kotlin/app/src/main/res/drawable/harbour_bridge.jpg and /dev/null differ
diff --git a/ApiDemos/kotlin/app/src/main/res/drawable/newark_nj_1922.png b/ApiDemos/kotlin/app/src/main/res/drawable/newark_nj_1922.png
deleted file mode 100644
index 6139abb16..000000000
Binary files a/ApiDemos/kotlin/app/src/main/res/drawable/newark_nj_1922.png and /dev/null differ
diff --git a/ApiDemos/kotlin/app/src/main/res/drawable/newark_prudential_sunny.jpg b/ApiDemos/kotlin/app/src/main/res/drawable/newark_prudential_sunny.jpg
deleted file mode 100644
index 294fe5efb..000000000
Binary files a/ApiDemos/kotlin/app/src/main/res/drawable/newark_prudential_sunny.jpg and /dev/null differ
diff --git a/ApiDemos/kotlin/app/src/main/res/layout-land b/ApiDemos/kotlin/app/src/main/res/layout-land
deleted file mode 100755
index 20856a210..000000000
--- a/ApiDemos/kotlin/app/src/main/res/layout-land
+++ /dev/null
@@ -1,68 +0,0 @@
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
diff --git a/ApiDemos/kotlin/app/src/main/res/layout/activity_circle_demo.xml b/ApiDemos/kotlin/app/src/main/res/layout/activity_circle_demo.xml
deleted file mode 100644
index b64cf0413..000000000
--- a/ApiDemos/kotlin/app/src/main/res/layout/activity_circle_demo.xml
+++ /dev/null
@@ -1,108 +0,0 @@
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
diff --git a/ApiDemos/kotlin/app/src/main/res/layout/activity_main.xml b/ApiDemos/kotlin/app/src/main/res/layout/activity_main.xml
deleted file mode 100644
index 53c2c8280..000000000
--- a/ApiDemos/kotlin/app/src/main/res/layout/activity_main.xml
+++ /dev/null
@@ -1,37 +0,0 @@
-
-
-
-
-
-
-
-
\ No newline at end of file
diff --git a/ApiDemos/kotlin/app/src/main/res/layout/activity_street_view_panorama_navigation_demo.xml b/ApiDemos/kotlin/app/src/main/res/layout/activity_street_view_panorama_navigation_demo.xml
deleted file mode 100644
index 58f7425b5..000000000
--- a/ApiDemos/kotlin/app/src/main/res/layout/activity_street_view_panorama_navigation_demo.xml
+++ /dev/null
@@ -1,191 +0,0 @@
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
diff --git a/ApiDemos/kotlin/app/src/main/res/layout/activity_ui_settings_demo.xml b/ApiDemos/kotlin/app/src/main/res/layout/activity_ui_settings_demo.xml
deleted file mode 100644
index 23bb84a60..000000000
--- a/ApiDemos/kotlin/app/src/main/res/layout/activity_ui_settings_demo.xml
+++ /dev/null
@@ -1,112 +0,0 @@
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
\ No newline at end of file
diff --git a/ApiDemos/kotlin/app/src/main/res/layout/advanced_markers_demo.xml b/ApiDemos/kotlin/app/src/main/res/layout/advanced_markers_demo.xml
deleted file mode 100644
index c32d5e3a3..000000000
--- a/ApiDemos/kotlin/app/src/main/res/layout/advanced_markers_demo.xml
+++ /dev/null
@@ -1,30 +0,0 @@
-
-
-
-
-
-
\ No newline at end of file
diff --git a/ApiDemos/kotlin/app/src/main/res/layout/background_color_customization_demo.xml b/ApiDemos/kotlin/app/src/main/res/layout/background_color_customization_demo.xml
deleted file mode 100644
index 82c0d70fc..000000000
--- a/ApiDemos/kotlin/app/src/main/res/layout/background_color_customization_demo.xml
+++ /dev/null
@@ -1,41 +0,0 @@
-
-
-
-
-
-
-
-
\ No newline at end of file
diff --git a/ApiDemos/kotlin/app/src/main/res/layout/background_color_customization_programmatic_demo.xml b/ApiDemos/kotlin/app/src/main/res/layout/background_color_customization_programmatic_demo.xml
deleted file mode 100644
index 172f7a79f..000000000
--- a/ApiDemos/kotlin/app/src/main/res/layout/background_color_customization_programmatic_demo.xml
+++ /dev/null
@@ -1,41 +0,0 @@
-
-
-
-
-
-
-
-
\ No newline at end of file
diff --git a/ApiDemos/kotlin/app/src/main/res/layout/camera_demo.xml b/ApiDemos/kotlin/app/src/main/res/layout/camera_demo.xml
deleted file mode 100644
index 53653d019..000000000
--- a/ApiDemos/kotlin/app/src/main/res/layout/camera_demo.xml
+++ /dev/null
@@ -1,195 +0,0 @@
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
diff --git a/ApiDemos/kotlin/app/src/main/res/layout/cloud_styling_basic_demo.xml b/ApiDemos/kotlin/app/src/main/res/layout/cloud_styling_basic_demo.xml
deleted file mode 100644
index e16d806ca..000000000
--- a/ApiDemos/kotlin/app/src/main/res/layout/cloud_styling_basic_demo.xml
+++ /dev/null
@@ -1,65 +0,0 @@
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
\ No newline at end of file
diff --git a/ApiDemos/kotlin/app/src/main/res/layout/data_driven_boundaries_demo.xml b/ApiDemos/kotlin/app/src/main/res/layout/data_driven_boundaries_demo.xml
deleted file mode 100644
index 04780ce92..000000000
--- a/ApiDemos/kotlin/app/src/main/res/layout/data_driven_boundaries_demo.xml
+++ /dev/null
@@ -1,53 +0,0 @@
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
\ No newline at end of file
diff --git a/ApiDemos/kotlin/app/src/main/res/layout/data_driven_styling_demo.xml b/ApiDemos/kotlin/app/src/main/res/layout/data_driven_styling_demo.xml
deleted file mode 100644
index a07c76864..000000000
--- a/ApiDemos/kotlin/app/src/main/res/layout/data_driven_styling_demo.xml
+++ /dev/null
@@ -1,84 +0,0 @@
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
diff --git a/ApiDemos/kotlin/app/src/main/res/layout/events_demo.xml b/ApiDemos/kotlin/app/src/main/res/layout/events_demo.xml
deleted file mode 100644
index 866405820..000000000
--- a/ApiDemos/kotlin/app/src/main/res/layout/events_demo.xml
+++ /dev/null
@@ -1,45 +0,0 @@
-
-
-
-
-
-
-
-
-
-
-
-
-
diff --git a/ApiDemos/kotlin/app/src/main/res/layout/ground_overlay_demo.xml b/ApiDemos/kotlin/app/src/main/res/layout/ground_overlay_demo.xml
deleted file mode 100644
index 17e75a84d..000000000
--- a/ApiDemos/kotlin/app/src/main/res/layout/ground_overlay_demo.xml
+++ /dev/null
@@ -1,69 +0,0 @@
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
diff --git a/ApiDemos/kotlin/app/src/main/res/layout/indoor_demo.xml b/ApiDemos/kotlin/app/src/main/res/layout/indoor_demo.xml
deleted file mode 100644
index a638b0d18..000000000
--- a/ApiDemos/kotlin/app/src/main/res/layout/indoor_demo.xml
+++ /dev/null
@@ -1,85 +0,0 @@
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
diff --git a/ApiDemos/kotlin/app/src/main/res/layout/layers_demo.xml b/ApiDemos/kotlin/app/src/main/res/layout/layers_demo.xml
deleted file mode 100755
index b0fb87089..000000000
--- a/ApiDemos/kotlin/app/src/main/res/layout/layers_demo.xml
+++ /dev/null
@@ -1,71 +0,0 @@
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
diff --git a/ApiDemos/kotlin/app/src/main/res/layout/lite_demo.xml b/ApiDemos/kotlin/app/src/main/res/layout/lite_demo.xml
deleted file mode 100644
index 1d25ef2c2..000000000
--- a/ApiDemos/kotlin/app/src/main/res/layout/lite_demo.xml
+++ /dev/null
@@ -1,78 +0,0 @@
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
diff --git a/ApiDemos/kotlin/app/src/main/res/layout/lite_list_demo_row.xml b/ApiDemos/kotlin/app/src/main/res/layout/lite_list_demo_row.xml
deleted file mode 100644
index 8a1553b93..000000000
--- a/ApiDemos/kotlin/app/src/main/res/layout/lite_list_demo_row.xml
+++ /dev/null
@@ -1,56 +0,0 @@
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
diff --git a/ApiDemos/kotlin/app/src/main/res/layout/map_color_scheme_demo.xml b/ApiDemos/kotlin/app/src/main/res/layout/map_color_scheme_demo.xml
deleted file mode 100644
index 3951769a1..000000000
--- a/ApiDemos/kotlin/app/src/main/res/layout/map_color_scheme_demo.xml
+++ /dev/null
@@ -1,61 +0,0 @@
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
\ No newline at end of file
diff --git a/ApiDemos/kotlin/app/src/main/res/layout/marker_demo.xml b/ApiDemos/kotlin/app/src/main/res/layout/marker_demo.xml
deleted file mode 100644
index 3f1be3b01..000000000
--- a/ApiDemos/kotlin/app/src/main/res/layout/marker_demo.xml
+++ /dev/null
@@ -1,120 +0,0 @@
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
diff --git a/ApiDemos/kotlin/app/src/main/res/layout/multimap_demo.xml b/ApiDemos/kotlin/app/src/main/res/layout/multimap_demo.xml
deleted file mode 100644
index 2c59d2219..000000000
--- a/ApiDemos/kotlin/app/src/main/res/layout/multimap_demo.xml
+++ /dev/null
@@ -1,79 +0,0 @@
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
diff --git a/ApiDemos/kotlin/app/src/main/res/layout/my_location_demo.xml b/ApiDemos/kotlin/app/src/main/res/layout/my_location_demo.xml
deleted file mode 100644
index bee5a647c..000000000
--- a/ApiDemos/kotlin/app/src/main/res/layout/my_location_demo.xml
+++ /dev/null
@@ -1,28 +0,0 @@
-
-
-
-
-
-
-
diff --git a/ApiDemos/kotlin/app/src/main/res/layout/options_demo.xml b/ApiDemos/kotlin/app/src/main/res/layout/options_demo.xml
deleted file mode 100644
index abebc7172..000000000
--- a/ApiDemos/kotlin/app/src/main/res/layout/options_demo.xml
+++ /dev/null
@@ -1,35 +0,0 @@
-
-
-
diff --git a/ApiDemos/kotlin/app/src/main/res/layout/polygon_demo.xml b/ApiDemos/kotlin/app/src/main/res/layout/polygon_demo.xml
deleted file mode 100644
index 2942d2880..000000000
--- a/ApiDemos/kotlin/app/src/main/res/layout/polygon_demo.xml
+++ /dev/null
@@ -1,115 +0,0 @@
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
diff --git a/ApiDemos/kotlin/app/src/main/res/layout/polyline_demo.xml b/ApiDemos/kotlin/app/src/main/res/layout/polyline_demo.xml
deleted file mode 100644
index b49a6736e..000000000
--- a/ApiDemos/kotlin/app/src/main/res/layout/polyline_demo.xml
+++ /dev/null
@@ -1,117 +0,0 @@
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
diff --git a/ApiDemos/kotlin/app/src/main/res/layout/split_street_view_panorama_and_map_demo.xml b/ApiDemos/kotlin/app/src/main/res/layout/split_street_view_panorama_and_map_demo.xml
deleted file mode 100644
index 498388e25..000000000
--- a/ApiDemos/kotlin/app/src/main/res/layout/split_street_view_panorama_and_map_demo.xml
+++ /dev/null
@@ -1,50 +0,0 @@
-
-
-
-
-
-
-
-
-
-
-
-
-
diff --git a/ApiDemos/kotlin/app/src/main/res/layout/street_view_panorama_events_demo.xml b/ApiDemos/kotlin/app/src/main/res/layout/street_view_panorama_events_demo.xml
deleted file mode 100644
index bfc7becff..000000000
--- a/ApiDemos/kotlin/app/src/main/res/layout/street_view_panorama_events_demo.xml
+++ /dev/null
@@ -1,57 +0,0 @@
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
diff --git a/ApiDemos/kotlin/app/src/main/res/layout/street_view_panorama_options_demo.xml b/ApiDemos/kotlin/app/src/main/res/layout/street_view_panorama_options_demo.xml
deleted file mode 100644
index aaa08eefe..000000000
--- a/ApiDemos/kotlin/app/src/main/res/layout/street_view_panorama_options_demo.xml
+++ /dev/null
@@ -1,80 +0,0 @@
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
diff --git a/ApiDemos/kotlin/app/src/main/res/layout/tile_overlay_demo.xml b/ApiDemos/kotlin/app/src/main/res/layout/tile_overlay_demo.xml
deleted file mode 100755
index 95a9a1328..000000000
--- a/ApiDemos/kotlin/app/src/main/res/layout/tile_overlay_demo.xml
+++ /dev/null
@@ -1,57 +0,0 @@
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
diff --git a/ApiDemos/kotlin/app/src/main/res/layout/visible_region_demo.xml b/ApiDemos/kotlin/app/src/main/res/layout/visible_region_demo.xml
deleted file mode 100755
index 1955f84b3..000000000
--- a/ApiDemos/kotlin/app/src/main/res/layout/visible_region_demo.xml
+++ /dev/null
@@ -1,82 +0,0 @@
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
diff --git a/ApiDemos/kotlin/app/src/main/res/mipmap-hdpi/ic_launcher.png b/ApiDemos/kotlin/app/src/main/res/mipmap-hdpi/ic_launcher.png
deleted file mode 100644
index a2f590828..000000000
Binary files a/ApiDemos/kotlin/app/src/main/res/mipmap-hdpi/ic_launcher.png and /dev/null differ
diff --git a/ApiDemos/kotlin/app/src/main/res/mipmap-hdpi/ic_launcher_round.png b/ApiDemos/kotlin/app/src/main/res/mipmap-hdpi/ic_launcher_round.png
deleted file mode 100644
index 1b5239980..000000000
Binary files a/ApiDemos/kotlin/app/src/main/res/mipmap-hdpi/ic_launcher_round.png and /dev/null differ
diff --git a/ApiDemos/kotlin/app/src/main/res/mipmap-mdpi/ic_launcher.png b/ApiDemos/kotlin/app/src/main/res/mipmap-mdpi/ic_launcher.png
deleted file mode 100644
index ff10afd6e..000000000
Binary files a/ApiDemos/kotlin/app/src/main/res/mipmap-mdpi/ic_launcher.png and /dev/null differ
diff --git a/ApiDemos/kotlin/app/src/main/res/mipmap-mdpi/ic_launcher_round.png b/ApiDemos/kotlin/app/src/main/res/mipmap-mdpi/ic_launcher_round.png
deleted file mode 100644
index 115a4c768..000000000
Binary files a/ApiDemos/kotlin/app/src/main/res/mipmap-mdpi/ic_launcher_round.png and /dev/null differ
diff --git a/ApiDemos/kotlin/app/src/main/res/mipmap-xhdpi/ic_launcher.png b/ApiDemos/kotlin/app/src/main/res/mipmap-xhdpi/ic_launcher.png
deleted file mode 100644
index dcd3cd808..000000000
Binary files a/ApiDemos/kotlin/app/src/main/res/mipmap-xhdpi/ic_launcher.png and /dev/null differ
diff --git a/ApiDemos/kotlin/app/src/main/res/mipmap-xhdpi/ic_launcher_round.png b/ApiDemos/kotlin/app/src/main/res/mipmap-xhdpi/ic_launcher_round.png
deleted file mode 100644
index 459ca609d..000000000
Binary files a/ApiDemos/kotlin/app/src/main/res/mipmap-xhdpi/ic_launcher_round.png and /dev/null differ
diff --git a/ApiDemos/kotlin/app/src/main/res/mipmap-xxhdpi/ic_launcher.png b/ApiDemos/kotlin/app/src/main/res/mipmap-xxhdpi/ic_launcher.png
deleted file mode 100644
index 8ca12fe02..000000000
Binary files a/ApiDemos/kotlin/app/src/main/res/mipmap-xxhdpi/ic_launcher.png and /dev/null differ
diff --git a/ApiDemos/kotlin/app/src/main/res/mipmap-xxhdpi/ic_launcher_round.png b/ApiDemos/kotlin/app/src/main/res/mipmap-xxhdpi/ic_launcher_round.png
deleted file mode 100644
index 8e19b410a..000000000
Binary files a/ApiDemos/kotlin/app/src/main/res/mipmap-xxhdpi/ic_launcher_round.png and /dev/null differ
diff --git a/ApiDemos/kotlin/app/src/main/res/mipmap-xxxhdpi/ic_launcher.png b/ApiDemos/kotlin/app/src/main/res/mipmap-xxxhdpi/ic_launcher.png
deleted file mode 100644
index b824ebdd4..000000000
Binary files a/ApiDemos/kotlin/app/src/main/res/mipmap-xxxhdpi/ic_launcher.png and /dev/null differ
diff --git a/ApiDemos/kotlin/app/src/main/res/mipmap-xxxhdpi/ic_launcher_round.png b/ApiDemos/kotlin/app/src/main/res/mipmap-xxxhdpi/ic_launcher_round.png
deleted file mode 100644
index 4c19a13c2..000000000
Binary files a/ApiDemos/kotlin/app/src/main/res/mipmap-xxxhdpi/ic_launcher_round.png and /dev/null differ
diff --git a/ApiDemos/kotlin/app/src/main/res/raw/mapstyle_grayscale.json b/ApiDemos/kotlin/app/src/main/res/raw/mapstyle_grayscale.json
deleted file mode 100644
index 1cdce0c9f..000000000
--- a/ApiDemos/kotlin/app/src/main/res/raw/mapstyle_grayscale.json
+++ /dev/null
@@ -1,101 +0,0 @@
-[
- {
- "featureType": "all",
- "elementType": "geometry",
- "stylers": [
- {
- "color": "#f5f5f5"
- }
- ]
- },
- {
- "featureType": "all",
- "elementType": "labels.icon",
- "stylers": [
- {
- "saturation": -100
- }
- ]
- },
- {
- "featureType": "all",
- "elementType": "labels.text",
- "stylers": [
- {
- "saturation": -100
- }
- ]
- },
- {
- "featureType": "poi",
- "elementType": "geometry",
- "stylers": [
- {
- "color": "#eeeeee"
- }
- ]
- },
- {
- "featureType": "poi.park",
- "elementType": "geometry",
- "stylers": [
- {
- "color": "#e5e5e5"
- }
- ]
- },
- {
- "featureType": "road",
- "elementType": "geometry",
- "stylers": [
- {
- "color": "#ffffff"
- }
- ]
- },
- {
- "featureType": "road.highway",
- "elementType": "geometry",
- "stylers": [
- {
- "color": "#dadada"
- }
- ]
- },
- {
- "featureType": "road.highway",
- "elementType": "labels.icon",
- "stylers": [
- {
- "lightness": 30
- }
- ]
- },
- {
- "featureType": "transit.line",
- "elementType": "geometry",
- "stylers": [
- {
- "color": "#e5e5e5"
- }
- ]
- },
- {
- "featureType": "transit.station",
- "elementType": "geometry",
- "stylers": [
- {
- "color": "#eeeeee"
- }
- ]
- },
- {
- "featureType": "water",
- "elementType": "geometry",
- "stylers": [
- {
- "color": "#c9c9c9"
- }
- ]
- }
-]
\ No newline at end of file
diff --git a/ApiDemos/kotlin/app/src/main/res/raw/mapstyle_night.json b/ApiDemos/kotlin/app/src/main/res/raw/mapstyle_night.json
deleted file mode 100644
index 0d2c32bcf..000000000
--- a/ApiDemos/kotlin/app/src/main/res/raw/mapstyle_night.json
+++ /dev/null
@@ -1,191 +0,0 @@
-[
- {
- "featureType": "all",
- "elementType": "geometry",
- "stylers": [
- {
- "color": "#242f3e"
- }
- ]
- },
- {
- "featureType": "all",
- "elementType": "labels.text.stroke",
- "stylers": [
- {
- "lightness": -80
- }
- ]
- },
- {
- "featureType": "administrative",
- "elementType": "labels.text.fill",
- "stylers": [
- {
- "color": "#746855"
- }
- ]
- },
- {
- "featureType": "administrative.locality",
- "elementType": "labels.text.fill",
- "stylers": [
- {
- "color": "#d59563"
- }
- ]
- },
- {
- "featureType": "poi",
- "elementType": "labels.text.fill",
- "stylers": [
- {
- "color": "#d59563"
- }
- ]
- },
- {
- "featureType": "poi.park",
- "elementType": "geometry",
- "stylers": [
- {
- "color": "#263c3f"
- }
- ]
- },
- {
- "featureType": "poi.park",
- "elementType": "labels.text.fill",
- "stylers": [
- {
- "color": "#6b9a76"
- }
- ]
- },
- {
- "featureType": "road",
- "elementType": "geometry.fill",
- "stylers": [
- {
- "color": "#2b3544"
- }
- ]
- },
- {
- "featureType": "road",
- "elementType": "labels.text.fill",
- "stylers": [
- {
- "color": "#9ca5b3"
- }
- ]
- },
- {
- "featureType": "road.arterial",
- "elementType": "geometry.fill",
- "stylers": [
- {
- "color": "#38414e"
- }
- ]
- },
- {
- "featureType": "road.arterial",
- "elementType": "geometry.stroke",
- "stylers": [
- {
- "color": "#212a37"
- }
- ]
- },
- {
- "featureType": "road.highway",
- "elementType": "geometry.fill",
- "stylers": [
- {
- "color": "#746855"
- }
- ]
- },
- {
- "featureType": "road.highway",
- "elementType": "geometry.stroke",
- "stylers": [
- {
- "color": "#1f2835"
- }
- ]
- },
- {
- "featureType": "road.highway",
- "elementType": "labels.text.fill",
- "stylers": [
- {
- "color": "#f3d19c"
- }
- ]
- },
- {
- "featureType": "road.local",
- "elementType": "geometry.fill",
- "stylers": [
- {
- "color": "#38414e"
- }
- ]
- },
- {
- "featureType": "road.local",
- "elementType": "geometry.stroke",
- "stylers": [
- {
- "color": "#212a37"
- }
- ]
- },
- {
- "featureType": "transit",
- "elementType": "geometry",
- "stylers": [
- {
- "color": "#2f3948"
- }
- ]
- },
- {
- "featureType": "transit.station",
- "elementType": "labels.text.fill",
- "stylers": [
- {
- "color": "#d59563"
- }
- ]
- },
- {
- "featureType": "water",
- "elementType": "geometry",
- "stylers": [
- {
- "color": "#17263c"
- }
- ]
- },
- {
- "featureType": "water",
- "elementType": "labels.text.fill",
- "stylers": [
- {
- "color": "#515c6d"
- }
- ]
- },
- {
- "featureType": "water",
- "elementType": "labels.text.stroke",
- "stylers": [
- {
- "lightness": -20
- }
- ]
- }
-]
\ No newline at end of file
diff --git a/ApiDemos/kotlin/app/src/main/res/raw/mapstyle_retro.json b/ApiDemos/kotlin/app/src/main/res/raw/mapstyle_retro.json
deleted file mode 100644
index b1342101e..000000000
--- a/ApiDemos/kotlin/app/src/main/res/raw/mapstyle_retro.json
+++ /dev/null
@@ -1,191 +0,0 @@
-[
- {
- "featureType": "all",
- "elementType": "labels.text.fill",
- "stylers": [
- {
- "color": "#755f5d"
- }
- ]
- },
- {
- "featureType": "administrative",
- "elementType": "geometry.fill",
- "stylers": [
- {
- "color": "#d4ccb9"
- }
- ]
- },
- {
- "featureType": "administrative.country",
- "elementType": "geometry.stroke",
- "stylers": [
- {
- "color": "#baafae"
- }
- ]
- },
- {
- "featureType": "administrative.land_parcel",
- "elementType": "geometry.stroke",
- "stylers": [
- {
- "color": "#d4ccb9"
- }
- ]
- },
- {
- "featureType": "landscape.man_made",
- "elementType": "geometry.fill",
- "stylers": [
- {
- "color": "#ebe3cd"
- }
- ]
- },
- {
- "featureType": "landscape.natural",
- "elementType": "geometry",
- "stylers": [
- {
- "color": "#ebe3cd"
- }
- ]
- },
- {
- "featureType": "landscape.natural",
- "elementType": "geometry.fill",
- "stylers": [
- {
- "lightness": -10
- }
- ]
- },
- {
- "featureType": "poi",
- "elementType": "geometry.fill",
- "stylers": [
- {
- "color": "#d4ccb9"
- }
- ]
- },
- {
- "featureType": "poi",
- "elementType": "labels.icon",
- "stylers": [
- {
- "hue": "#ff7f00"
- }
- ]
- },
- {
- "featureType": "poi.park",
- "elementType": "geometry.fill",
- "stylers": [
- {
- "color": "#9ba56f"
- }
- ]
- },
- {
- "featureType": "road",
- "elementType": "geometry.fill",
- "stylers": [
- {
- "color": "#f5f1e6"
- }
- ]
- },
- {
- "featureType": "road",
- "elementType": "geometry.stroke",
- "stylers": [
- {
- "color": "#dfd8c3"
- }
- ]
- },
- {
- "featureType": "road.arterial",
- "elementType": "geometry.fill",
- "stylers": [
- {
- "color": "#fdfcf8"
- }
- ]
- },
- {
- "featureType": "road.arterial",
- "elementType": "geometry.stroke",
- "stylers": [
- {
- "color": "#e4e3df"
- }
- ]
- },
- {
- "featureType": "road.highway",
- "elementType": "geometry.fill",
- "stylers": [
- {
- "color": "#f2cb77"
- }
- ]
- },
- {
- "featureType": "road.highway",
- "elementType": "geometry.stroke",
- "stylers": [
- {
- "color": "#ecb43d"
- }
- ]
- },
- {
- "featureType": "road.highway.controlled_access",
- "elementType": "geometry.fill",
- "stylers": [
- {
- "color": "#e98d58"
- }
- ]
- },
- {
- "featureType": "road.highway.controlled_access",
- "elementType": "geometry.stroke",
- "stylers": [
- {
- "color": "#d27f4f"
- }
- ]
- },
- {
- "featureType": "transit.line",
- "elementType": "geometry",
- "stylers": [
- {
- "color": "#d4ccb9"
- }
- ]
- },
- {
- "featureType": "transit.station.airport",
- "elementType": "geometry.fill",
- "stylers": [
- {
- "color": "#d4ccb9"
- }
- ]
- },
- {
- "featureType": "water",
- "elementType": "geometry.fill",
- "stylers": [
- {
- "color": "#b9d3c2"
- }
- ]
- }
-]
\ No newline at end of file
diff --git a/ApiDemos/kotlin/app/src/main/res/values/strings.xml b/ApiDemos/kotlin/app/src/main/res/values/strings.xml
deleted file mode 100644
index c9c5d969e..000000000
--- a/ApiDemos/kotlin/app/src/main/res/values/strings.xml
+++ /dev/null
@@ -1,372 +0,0 @@
-
-
- Maps SDK for Android Demos (Kotlin)
- Default
- Google Maps API Demos
- No demos
- Google Play services is not installed on this device.
- Select Preferred Map Renderer
-
-
- Tile Overlays
- Demonstrates how to add a tile overlay to a map.
- Tile Coordinate Overlay
- Demonstrates how to add a tile overlay with tile coordinates to a map.
- Fade In Tiles
-
-
- Advanced Markers
- Showcases the usage of Advanced Markers.
- DEMO_MAP_ID
-
-
- Basic Map
- Launches a map with marker pointing at Sydney.
-
-
- Animate
- Demonstrates Camera Functions
- Camera
- \u2193
- Custom Duration
- Go to Bondi
- Go to Sydney
- \u2190
- \u2192
- \u25A0
- \u2193
- \u2191
- \u2191
- +
- -
-
-
- Circle Demo
- Demonstrate how to add circles to a map
- Properties for Circle(s)
-
-
- Close Info Window Demo
- Demonstrates how to close the info window when the currently selected marker is retapped.
-
-
- Data Driven Dataset Styling Demo
- Demonstrates how to use Data Driven styling for datasets.
-
-
- Data Driven Boundaries Demo
- Demonstrates how to use Data Driven styling for .
-
-
- Events
- Demonstrates event handling.
- Move the camera
- Tap or long press on the map
-
-
- Ground Overlays
- Demonstrates how to add a GroundOverlay to a map.
- Transparency
- Switch Image
-
-
- Indoor
- Demonstrates how to use the Indoor API.
- Activate Higher Level
- Focused Building
- Focused Level
- Toggle Level Picker
-
-
- Buildings
- Hybrid
- Indoor
-
- - @string/normal
- - @string/hybrid
- - @string/satellite
- - @string/terrain
- - @string/none_map
-
- Layers
- Demonstrates the different map layers.
- My Location
- None
- Normal
- OK
- Satellite
- Terrain
- Traffic
-
-
- Lite Mode
- Demonstrates some features on a map in lite mode.
- Click the map with no, one or multiple markers displayed to open the Google Maps Mobile app.
- Go to Darwin (No Markers)
- Go to Adelaide (One Marker)
- Go to Australia (Five Markers)
-
-
- Lite List Demo
- Show a list of Lite Map of different locations using RecyclerView with LinearLayoutManager and GridLayoutManager
- Linear
- Grid
-
-
- Custom Info Contents
- Custom Info Window
- Default Info Window
- Drag Melbourne
- Clear
- Flat
- Reset
- Map is not ready
- Demonstrates how to use the MapColorScheme.
- MapColorScheme
- Demonstrates how to add Markers to a map.
- Markers
- onMarkerDrag. Current Position: (%1$f, %2$f)
- Started dragging marker
- Marker stopped dragging
- Rotation
- State badge
-
-
- My Location Demo
- Demonstrates how to use GMS Location.
-
-
- Access to the location service is required to demonstrate the \'my location\' feature, which shows your current location on the map.
- This sample requires location permission to enable the \'my location\' layer. Please try again and grant access to use the location.\nIf the permission has been permanently denied, it can be enabled from the System Settings > Apps > \'Google Maps API Demos\'.
- Location permission is required for this demo.
-
-
- Clickable
- Fill Alpha
- Fill Hue
- Bevel
- Default
- Round
- Dashed
- Dotted
- Mixed
- Solid
- Demonstrates how to add Polygons to a map.
- Demonstrates how to add Polygons to a map
- Polygons
- Properties for Polygon over Australia
- Stroke Alpha
- Stroke Hue
- Stroke Joint Type
- Stroke Pattern
- Stroke Width
-
-
- Street View Panorama Navigation Demo
- Street View Panorama with programmatic navigation
- Position
- Walk
- Go to Invalid Point
- Go to San Francisco
- Go to Santorini
-
-
- Street View Panorama and Map
- Demonstrates how to show a Street View panorama and map.
-
-
- Street View Panorama
- Standard Street View Panorama using a Fragment.
-
-
- Street View Panorama Options
- Street View Panorama with toggles for options.
- Navigation
- Outdoor Only
- Zoom Gestures
- Panning Gestures
- Streetnames
-
-
- Street View Panorama Events
- Standard Street View Panorama with event handling.
- navigate to another panorama
- pan camera
- tap screen
- long press screen
-
-
- Street View Panorama View
- Standard Street View Panorama using a View.
-
-
- Tags
- Demonstrates how to get and set tags on API objects.
- Map with a circle, ground overlay, marker, polygon and polyline.
-
-
- UI Settings Demo
- Demonstrate how to toggle the UI of a map
- Location permission is required to run the demo
- Zoom
- Compass
- My Location
- Level Picker
- Map Toolbar
- Zoom Gestures
- Scroll Gestures
- Tilt Gestures
- Rotate Gestures
-
-
- CameraChangeListener: %1$s
- Visible Regions
- Demonstrates how to use Visible Regions.
- Normal
- More
- SOH
- SFO
- AUS
-
-
- 26a66b031807a453
- Normal
- Satellite
- Hybrid
- Terrain
- Cloud Styling
- Demonstrates how to use a simple map using Cloud Styling.
-
-
- Raw MapView
- Demonstrates how to use a raw MapView.
-
-
- Alpha
- Butt
- Image
- Round
- Square
- End Cap
- Hue
- Joint Type
- Pattern
- Demonstrates how to add and configure Polylines to a map
- Polyline
- Start Cap
- Width
- Select polyline
- Sydney
- Melbourne
- Australia
- World
- ARGB
- Chevron
- Ook
- Default
- Bevel
- Round
- Solid color
- Gradient color
- Textured
- Point sprite
- Default
- Geodesic
- Visible
-
-
- Marker Collision
- Demonstrates different supported marker collision behaviors.
-
-
- Camera Clamping
- Demonstrates how to constrain the camera to specific boundaries and zoom levels.
- Clamp to Adelaide
- Clamp to Pacific
- Reset LatLng Bounds
- MinZoom++
- MaxZoom--
- Reset Zoom Bounds
-
-
- Location Source Demo
- Demonstrates how to use a custom location source.
-
-
- Map In Pager
- Demonstrates how to add a map to a ViewPager.
- \u2190 Swipe \u2192
-
-
- Multiple Maps
- Demonstrates how to show multiple maps in a single activity.
-
-
- Options
- Demonstrates how to use Options to initialize a map.
-
-
- Programmatically add map
- Demonstrates how to add a MapFragment programmatically.
-
-
- Retain map
- Demonstrates how to reuse a MapFragment.
-
-
- Save the state of a MapFragment.
- Demonstrates how to save the state of a MapFragment upon rotation of the device.
- Drag the marker, tap on it to change its color and rotate the device to check that the state of the map is preserved.
-
-
- Clear
- Snapshot
- Demonstrates how to take a snapshot of the map.
- Area for the map snapshot.
- Take snapshot
- Wait for Map Load
-
-
- Background Color Customization
- Demonstrates how to set a custom background color to a map.
- Background Color Customization - Programmatic
- Demonstrates how to programmatically set a custom background color to a map.
- Show Map Tiles
-
-
- Styled Map
- Demonstrates how to style a map.
- Retro
- Night
- Grayscale
- No POIs or transit
- Default
- Choose style
- Style set to: %1$s
- Light
- Dark
- Follow System\n
-
-
- Kyoto
- New York
- Boulder
-
\ No newline at end of file
diff --git a/ApiDemos/kotlin/app/src/v3/java/com/example/kotlindemos/DemoDetailsList.kt b/ApiDemos/kotlin/app/src/v3/java/com/example/kotlindemos/DemoDetailsList.kt
deleted file mode 100644
index f60cfe1f9..000000000
--- a/ApiDemos/kotlin/app/src/v3/java/com/example/kotlindemos/DemoDetailsList.kt
+++ /dev/null
@@ -1,143 +0,0 @@
-/*
- * Copyright 2018 Google LLC
- *
- * Licensed under the Apache License, Version 2.0 (the "License");
- * you may not use this file except in compliance with the License.
- * You may obtain a copy of the License at
- *
- * https://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- */
-
-package com.example.kotlindemos
-
-import com.example.kotlindemos.polyline.PolylineDemoActivity
-
-/**
- * A list of all the demos we have available.
- */
-class DemoDetailsList {
- companion object {
- val DEMOS = listOf(
- DemoDetails(
- R.string.basic_demo_label,
- R.string.basic_demo_details,
- BasicMapDemoActivity::class.java),
- DemoDetails(
- R.string.camera_demo_label,
- R.string.camera_demo_description,
- CameraDemoActivity::class.java),
- DemoDetails(
- R.string.circle_demo_label,
- R.string.circle_demo_details,
- CircleDemoActivity::class.java),
- DemoDetails(
- R.string.close_info_window_demo_label,
- R.string.close_info_window_demo_details,
- CloseInfoWindowDemoActivity::class.java),
- DemoDetails(
- R.string.cloud_styling_label,
- R.string.cloud_styling_description,
- CloudBasedMapStylingDemoActivity::class.java),
- DemoDetails(
- R.string.events_demo_label,
- R.string.events_demo_details,
- EventsDemoActivity::class.java),
- DemoDetails(
- R.string.ground_overlay_demo_label,
- R.string.ground_overlay_demo_details,
- GroundOverlayDemoActivity::class.java),
- DemoDetails(
- R.string.indoor_demo_label,
- R.string.indoor_demo_details,
- IndoorDemoActivity::class.java),
- DemoDetails(
- R.string.layers_demo_label,
- R.string.layers_demo_description,
- LayersDemoActivity::class.java),
- DemoDetails(
- R.string.lite_demo_label,
- R.string.lite_demo_details,
- LiteDemoActivity::class.java),
- DemoDetails(
- R.string.lite_list_demo_label,
- R.string.lite_list_demo_details,
- LiteListDemoActivity::class.java),
- DemoDetails(
- R.string.marker_collision_label,
- R.string.marker_collision_description,
- MarkerCollisionDemoActivity::class.java),
- DemoDetails(
- R.string.markers_demo_label,
- R.string.markers_demo_description,
- MarkerDemoActivity::class.java),
- DemoDetails(
- R.string.my_location_demo_label,
- R.string.my_location_demo_details,
- MyLocationDemoActivity::class.java),
- DemoDetails(
- R.string.polygon_demo_label,
- R.string.polygon_demo_details,
- PolygonDemoActivity::class.java),
- DemoDetails(
- R.string.polyline_demo_label,
- R.string.polyline_demo_description,
- PolylineDemoActivity::class.java),
- DemoDetails(
- R.string.raw_map_view_demo_label,
- R.string.raw_map_view_demo_description,
- RawMapViewDemoActivity::class.java),
- DemoDetails(
- R.string.street_view_panorama_basic_demo_label,
- R.string.street_view_panorama_basic_demo_details,
- StreetViewPanoramaBasicDemoActivity::class.java),
- DemoDetails(
- R.string.street_view_panorama_navigation_demo_label,
- R.string.street_view_panorama_navigation_demo_details,
- StreetViewPanoramaNavigationDemoActivity::class.java),
- DemoDetails(
- R.string.split_street_view_panorama_and_map_demo_label,
- R.string.split_street_view_panorama_and_map_demo_details,
- SplitStreetViewPanoramaAndMapDemoActivity::class.java),
- DemoDetails(
- R.string.street_view_panorama_options_demo_label,
- R.string.street_view_panorama_options_demo_details,
- StreetViewPanoramaOptionsDemoActivity::class.java),
- DemoDetails(
- R.string.street_view_panorama_events_demo_label,
- R.string.street_view_panorama_events_demo_details,
- StreetViewPanoramaEventsDemoActivity::class.java),
- DemoDetails(
- R.string.street_view_panorama_view_demo_label,
- R.string.street_view_panorama_view_demo_details,
- StreetViewPanoramaViewDemoActivity::class.java),
- DemoDetails(
- R.string.tags_demo_label,
- R.string.tags_demo_details,
- TagsDemoActivity::class.java),
- DemoDetails(
- R.string.tile_coordinate_demo_label,
- R.string.tile_coordinate_demo_description,
- TileCoordinateDemoActivity::class.java
- ),
- DemoDetails(
- R.string.tile_overlay_demo_label,
- R.string.tile_overlay_demo_description,
- TileOverlayDemoActivity::class.java
- ),
- DemoDetails(
- R.string.ui_settings_demo_label,
- R.string.ui_settings_demo_details,
- UiSettingsDemoActivity::class.java),
- DemoDetails(
- R.string.region_demo_label,
- R.string.region_demo_details,
- VisibleRegionDemoActivity::class.java)
- )
- }
-}
\ No newline at end of file
diff --git a/ApiDemos/kotlin/app/src/v3/res/layout/custom_info_contents.xml b/ApiDemos/kotlin/app/src/v3/res/layout/custom_info_contents.xml
deleted file mode 100644
index 62a248139..000000000
--- a/ApiDemos/kotlin/app/src/v3/res/layout/custom_info_contents.xml
+++ /dev/null
@@ -1,55 +0,0 @@
-
-
-
-
-
-
-
-
-
-
-
-
diff --git a/ApiDemos/kotlin/app/src/v3/res/layout/custom_info_window.xml b/ApiDemos/kotlin/app/src/v3/res/layout/custom_info_window.xml
deleted file mode 100644
index 0cfe93c6b..000000000
--- a/ApiDemos/kotlin/app/src/v3/res/layout/custom_info_window.xml
+++ /dev/null
@@ -1,56 +0,0 @@
-
-
-
-
-
-
-
-
-
-
-
-
diff --git a/ApiDemos/kotlin/app/src/v3/res/layout/feature.xml b/ApiDemos/kotlin/app/src/v3/res/layout/feature.xml
deleted file mode 100644
index b434861f1..000000000
--- a/ApiDemos/kotlin/app/src/v3/res/layout/feature.xml
+++ /dev/null
@@ -1,37 +0,0 @@
-
-
-
-
-
-
-
-
-
\ No newline at end of file
diff --git a/ApiDemos/kotlin/app/src/v3/res/layout/marker_collision_demo.xml b/ApiDemos/kotlin/app/src/v3/res/layout/marker_collision_demo.xml
deleted file mode 100644
index d5e2a7ec7..000000000
--- a/ApiDemos/kotlin/app/src/v3/res/layout/marker_collision_demo.xml
+++ /dev/null
@@ -1,20 +0,0 @@
-
-
diff --git a/ApiDemos/kotlin/app/src/v3/res/layout/my_location_demo.xml b/ApiDemos/kotlin/app/src/v3/res/layout/my_location_demo.xml
deleted file mode 100644
index 06ec085e3..000000000
--- a/ApiDemos/kotlin/app/src/v3/res/layout/my_location_demo.xml
+++ /dev/null
@@ -1,27 +0,0 @@
-
-
-
-
-
-
diff --git a/ApiDemos/kotlin/app/src/v3/res/layout/polyline_width_control_fragment.xml b/ApiDemos/kotlin/app/src/v3/res/layout/polyline_width_control_fragment.xml
deleted file mode 100644
index 4854255c3..000000000
--- a/ApiDemos/kotlin/app/src/v3/res/layout/polyline_width_control_fragment.xml
+++ /dev/null
@@ -1,29 +0,0 @@
-
-
-
-
-
diff --git a/ApiDemos/kotlin/app/src/v3/res/layout/raw_mapview_demo.xml b/ApiDemos/kotlin/app/src/v3/res/layout/raw_mapview_demo.xml
deleted file mode 100644
index 6af0bbde9..000000000
--- a/ApiDemos/kotlin/app/src/v3/res/layout/raw_mapview_demo.xml
+++ /dev/null
@@ -1,19 +0,0 @@
-
-
diff --git a/ApiDemos/kotlin/app/src/v3/res/layout/street_view_panorama_basic_demo.xml b/ApiDemos/kotlin/app/src/v3/res/layout/street_view_panorama_basic_demo.xml
deleted file mode 100644
index 01cadcbd5..000000000
--- a/ApiDemos/kotlin/app/src/v3/res/layout/street_view_panorama_basic_demo.xml
+++ /dev/null
@@ -1,25 +0,0 @@
-
-
-
-
-
diff --git a/ApiDemos/kotlin/app/src/v3/res/layout/tile_coordinate_demo.xml b/ApiDemos/kotlin/app/src/v3/res/layout/tile_coordinate_demo.xml
deleted file mode 100755
index 873c4c3ba..000000000
--- a/ApiDemos/kotlin/app/src/v3/res/layout/tile_coordinate_demo.xml
+++ /dev/null
@@ -1,20 +0,0 @@
-
-
diff --git a/ApiDemos/kotlin/gradle.properties b/ApiDemos/kotlin/gradle.properties
deleted file mode 100644
index 313f8e09c..000000000
--- a/ApiDemos/kotlin/gradle.properties
+++ /dev/null
@@ -1,19 +0,0 @@
-# Project-wide Gradle settings.
-
-# IDE (e.g. Android Studio) users:
-# Gradle settings configured through the IDE *will override*
-# any settings specified in this file.
-
-# For more details on how to configure your build environment visit
-# http://www.gradle.org/docs/current/userguide/build_environment.html
-
-# Specifies the JVM arguments used for the daemon process.
-# The setting is particularly useful for tweaking memory settings.
-org.gradle.jvmargs=-Xmx1536m
-
-# When configured, Gradle will run in incubating parallel mode.
-# This option should only be used with decoupled projects. More details, visit
-# http://www.gradle.org/docs/current/userguide/multi_project_builds.html#sec:decoupled_projects
-# org.gradle.parallel=true
-android.enableJetifier=true
-android.useAndroidX=true
\ No newline at end of file
diff --git a/ApiDemos/kotlin/gradle/wrapper/gradle-wrapper.jar b/ApiDemos/kotlin/gradle/wrapper/gradle-wrapper.jar
deleted file mode 100644
index 13372aef5..000000000
Binary files a/ApiDemos/kotlin/gradle/wrapper/gradle-wrapper.jar and /dev/null differ
diff --git a/ApiDemos/kotlin/gradlew b/ApiDemos/kotlin/gradlew
deleted file mode 100755
index 9d82f7891..000000000
--- a/ApiDemos/kotlin/gradlew
+++ /dev/null
@@ -1,160 +0,0 @@
-#!/usr/bin/env bash
-
-##############################################################################
-##
-## Gradle start up script for UN*X
-##
-##############################################################################
-
-# Add default JVM options here. You can also use JAVA_OPTS and GRADLE_OPTS to pass JVM options to this script.
-DEFAULT_JVM_OPTS=""
-
-APP_NAME="Gradle"
-APP_BASE_NAME=`basename "$0"`
-
-# Use the maximum available, or set MAX_FD != -1 to use that value.
-MAX_FD="maximum"
-
-warn ( ) {
- echo "$*"
-}
-
-die ( ) {
- echo
- echo "$*"
- echo
- exit 1
-}
-
-# OS specific support (must be 'true' or 'false').
-cygwin=false
-msys=false
-darwin=false
-case "`uname`" in
- CYGWIN* )
- cygwin=true
- ;;
- Darwin* )
- darwin=true
- ;;
- MINGW* )
- msys=true
- ;;
-esac
-
-# Attempt to set APP_HOME
-# Resolve links: $0 may be a link
-PRG="$0"
-# Need this for relative symlinks.
-while [ -h "$PRG" ] ; do
- ls=`ls -ld "$PRG"`
- link=`expr "$ls" : '.*-> \(.*\)$'`
- if expr "$link" : '/.*' > /dev/null; then
- PRG="$link"
- else
- PRG=`dirname "$PRG"`"/$link"
- fi
-done
-SAVED="`pwd`"
-cd "`dirname \"$PRG\"`/" >/dev/null
-APP_HOME="`pwd -P`"
-cd "$SAVED" >/dev/null
-
-CLASSPATH=$APP_HOME/gradle/wrapper/gradle-wrapper.jar
-
-# Determine the Java command to use to start the JVM.
-if [ -n "$JAVA_HOME" ] ; then
- if [ -x "$JAVA_HOME/jre/sh/java" ] ; then
- # IBM's JDK on AIX uses strange locations for the executables
- JAVACMD="$JAVA_HOME/jre/sh/java"
- else
- JAVACMD="$JAVA_HOME/bin/java"
- fi
- if [ ! -x "$JAVACMD" ] ; then
- die "ERROR: JAVA_HOME is set to an invalid directory: $JAVA_HOME
-
-Please set the JAVA_HOME variable in your environment to match the
-location of your Java installation."
- fi
-else
- JAVACMD="java"
- which java >/dev/null 2>&1 || die "ERROR: JAVA_HOME is not set and no 'java' command could be found in your PATH.
-
-Please set the JAVA_HOME variable in your environment to match the
-location of your Java installation."
-fi
-
-# Increase the maximum file descriptors if we can.
-if [ "$cygwin" = "false" -a "$darwin" = "false" ] ; then
- MAX_FD_LIMIT=`ulimit -H -n`
- if [ $? -eq 0 ] ; then
- if [ "$MAX_FD" = "maximum" -o "$MAX_FD" = "max" ] ; then
- MAX_FD="$MAX_FD_LIMIT"
- fi
- ulimit -n $MAX_FD
- if [ $? -ne 0 ] ; then
- warn "Could not set maximum file descriptor limit: $MAX_FD"
- fi
- else
- warn "Could not query maximum file descriptor limit: $MAX_FD_LIMIT"
- fi
-fi
-
-# For Darwin, add options to specify how the application appears in the dock
-if $darwin; then
- GRADLE_OPTS="$GRADLE_OPTS \"-Xdock:name=$APP_NAME\" \"-Xdock:icon=$APP_HOME/media/gradle.icns\""
-fi
-
-# For Cygwin, switch paths to Windows format before running java
-if $cygwin ; then
- APP_HOME=`cygpath --path --mixed "$APP_HOME"`
- CLASSPATH=`cygpath --path --mixed "$CLASSPATH"`
- JAVACMD=`cygpath --unix "$JAVACMD"`
-
- # We build the pattern for arguments to be converted via cygpath
- ROOTDIRSRAW=`find -L / -maxdepth 1 -mindepth 1 -type d 2>/dev/null`
- SEP=""
- for dir in $ROOTDIRSRAW ; do
- ROOTDIRS="$ROOTDIRS$SEP$dir"
- SEP="|"
- done
- OURCYGPATTERN="(^($ROOTDIRS))"
- # Add a user-defined pattern to the cygpath arguments
- if [ "$GRADLE_CYGPATTERN" != "" ] ; then
- OURCYGPATTERN="$OURCYGPATTERN|($GRADLE_CYGPATTERN)"
- fi
- # Now convert the arguments - kludge to limit ourselves to /bin/sh
- i=0
- for arg in "$@" ; do
- CHECK=`echo "$arg"|egrep -c "$OURCYGPATTERN" -`
- CHECK2=`echo "$arg"|egrep -c "^-"` ### Determine if an option
-
- if [ $CHECK -ne 0 ] && [ $CHECK2 -eq 0 ] ; then ### Added a condition
- eval `echo args$i`=`cygpath --path --ignore --mixed "$arg"`
- else
- eval `echo args$i`="\"$arg\""
- fi
- i=$((i+1))
- done
- case $i in
- (0) set -- ;;
- (1) set -- "$args0" ;;
- (2) set -- "$args0" "$args1" ;;
- (3) set -- "$args0" "$args1" "$args2" ;;
- (4) set -- "$args0" "$args1" "$args2" "$args3" ;;
- (5) set -- "$args0" "$args1" "$args2" "$args3" "$args4" ;;
- (6) set -- "$args0" "$args1" "$args2" "$args3" "$args4" "$args5" ;;
- (7) set -- "$args0" "$args1" "$args2" "$args3" "$args4" "$args5" "$args6" ;;
- (8) set -- "$args0" "$args1" "$args2" "$args3" "$args4" "$args5" "$args6" "$args7" ;;
- (9) set -- "$args0" "$args1" "$args2" "$args3" "$args4" "$args5" "$args6" "$args7" "$args8" ;;
- esac
-fi
-
-# Split up the JVM_OPTS And GRADLE_OPTS values into an array, following the shell quoting and substitution rules
-function splitJvmOpts() {
- JVM_OPTS=("$@")
-}
-eval splitJvmOpts $DEFAULT_JVM_OPTS $JAVA_OPTS $GRADLE_OPTS
-JVM_OPTS[${#JVM_OPTS[*]}]="-Dorg.gradle.appname=$APP_BASE_NAME"
-
-exec "$JAVACMD" "${JVM_OPTS[@]}" -classpath "$CLASSPATH" org.gradle.wrapper.GradleWrapperMain "$@"
diff --git a/ApiDemos/kotlin/gradlew.bat b/ApiDemos/kotlin/gradlew.bat
deleted file mode 100644
index aec99730b..000000000
--- a/ApiDemos/kotlin/gradlew.bat
+++ /dev/null
@@ -1,90 +0,0 @@
-@if "%DEBUG%" == "" @echo off
-@rem ##########################################################################
-@rem
-@rem Gradle startup script for Windows
-@rem
-@rem ##########################################################################
-
-@rem Set local scope for the variables with windows NT shell
-if "%OS%"=="Windows_NT" setlocal
-
-@rem Add default JVM options here. You can also use JAVA_OPTS and GRADLE_OPTS to pass JVM options to this script.
-set DEFAULT_JVM_OPTS=
-
-set DIRNAME=%~dp0
-if "%DIRNAME%" == "" set DIRNAME=.
-set APP_BASE_NAME=%~n0
-set APP_HOME=%DIRNAME%
-
-@rem Find java.exe
-if defined JAVA_HOME goto findJavaFromJavaHome
-
-set JAVA_EXE=java.exe
-%JAVA_EXE% -version >NUL 2>&1
-if "%ERRORLEVEL%" == "0" goto init
-
-echo.
-echo ERROR: JAVA_HOME is not set and no 'java' command could be found in your PATH.
-echo.
-echo Please set the JAVA_HOME variable in your environment to match the
-echo location of your Java installation.
-
-goto fail
-
-:findJavaFromJavaHome
-set JAVA_HOME=%JAVA_HOME:"=%
-set JAVA_EXE=%JAVA_HOME%/bin/java.exe
-
-if exist "%JAVA_EXE%" goto init
-
-echo.
-echo ERROR: JAVA_HOME is set to an invalid directory: %JAVA_HOME%
-echo.
-echo Please set the JAVA_HOME variable in your environment to match the
-echo location of your Java installation.
-
-goto fail
-
-:init
-@rem Get command-line arguments, handling Windowz variants
-
-if not "%OS%" == "Windows_NT" goto win9xME_args
-if "%@eval[2+2]" == "4" goto 4NT_args
-
-:win9xME_args
-@rem Slurp the command line arguments.
-set CMD_LINE_ARGS=
-set _SKIP=2
-
-:win9xME_args_slurp
-if "x%~1" == "x" goto execute
-
-set CMD_LINE_ARGS=%*
-goto execute
-
-:4NT_args
-@rem Get arguments from the 4NT Shell from JP Software
-set CMD_LINE_ARGS=%$
-
-:execute
-@rem Setup the command line
-
-set CLASSPATH=%APP_HOME%\gradle\wrapper\gradle-wrapper.jar
-
-@rem Execute Gradle
-"%JAVA_EXE%" %DEFAULT_JVM_OPTS% %JAVA_OPTS% %GRADLE_OPTS% "-Dorg.gradle.appname=%APP_BASE_NAME%" -classpath "%CLASSPATH%" org.gradle.wrapper.GradleWrapperMain %CMD_LINE_ARGS%
-
-:end
-@rem End local scope for the variables with windows NT shell
-if "%ERRORLEVEL%"=="0" goto mainEnd
-
-:fail
-rem Set variable GRADLE_EXIT_CONSOLE if you need the _script_ return code instead of
-rem the _cmd.exe /c_ return code!
-if not "" == "%GRADLE_EXIT_CONSOLE%" exit 1
-exit /b 1
-
-:mainEnd
-if "%OS%"=="Windows_NT" endlocal
-
-:omega
diff --git a/ApiDemos/kotlin/local.defaults.properties b/ApiDemos/kotlin/local.defaults.properties
deleted file mode 100644
index 915765c1f..000000000
--- a/ApiDemos/kotlin/local.defaults.properties
+++ /dev/null
@@ -1,5 +0,0 @@
-MAPS_API_KEY=DEFAULT_API_KEY
-BOULDER_DATASET_ID=BOULDER_DATASET_ID
-NEW_YORK_DATASET_ID=NEW_YORK_DATASET_ID
-KYOTO_DATASET_ID=KYOTO_DATASET_ID
-MAP_ID=MAP_ID
diff --git a/ApiDemos/java/.gitignore b/ApiDemos/project/.gitignore
similarity index 100%
rename from ApiDemos/java/.gitignore
rename to ApiDemos/project/.gitignore
diff --git a/ApiDemos/java/README.md b/ApiDemos/project/README.md
similarity index 96%
rename from ApiDemos/java/README.md
rename to ApiDemos/project/README.md
index c25738bae..ee8ffe876 100644
--- a/ApiDemos/java/README.md
+++ b/ApiDemos/project/README.md
@@ -28,7 +28,7 @@ This sample use the Gradle build system.
First download the samples by cloning this repository or downloading an archived snapshot. (See the options at the top of the page.)
In Android Studio, use "Open an existing Android Studio project".
-Next select the `ApiDemos/java/` directory that you downloaded from this repository.
+Next select the `ApiDemos/project/` directory that you downloaded from this repository.
If prompted for a gradle configuration accept the default settings.
Alternatively use the `gradlew build` command to build the project directly.
diff --git a/ApiDemos/kotlin/build.gradle.kts b/ApiDemos/project/build.gradle.kts
similarity index 89%
rename from ApiDemos/kotlin/build.gradle.kts
rename to ApiDemos/project/build.gradle.kts
index fd6e8ddea..cd0212623 100644
--- a/ApiDemos/kotlin/build.gradle.kts
+++ b/ApiDemos/project/build.gradle.kts
@@ -27,17 +27,18 @@ buildscript {
classpath(libs.secretsGradlePlugin)
// NOTE: Do not place your application dependencies here; they belong
- // in the individual module build.gradle.kts files
+ // in the individual module build.gradle files
}
}
allprojects {
repositories {
+ mavenLocal()
google()
mavenCentral()
}
}
tasks.register("clean") {
- delete(rootProject.layout.buildDirectory)
-}
\ No newline at end of file
+ delete(rootProject.layout.projectDirectory)
+}
diff --git a/ApiDemos/project/common-ui/.gitignore b/ApiDemos/project/common-ui/.gitignore
new file mode 100644
index 000000000..42afabfd2
--- /dev/null
+++ b/ApiDemos/project/common-ui/.gitignore
@@ -0,0 +1 @@
+/build
\ No newline at end of file
diff --git a/ApiDemos/project/common-ui/build.gradle.kts b/ApiDemos/project/common-ui/build.gradle.kts
new file mode 100644
index 000000000..faa1fde46
--- /dev/null
+++ b/ApiDemos/project/common-ui/build.gradle.kts
@@ -0,0 +1,65 @@
+import org.jetbrains.kotlin.gradle.dsl.JvmTarget
+
+/*
+ * Copyright 2025 Google LLC
+ *
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+
+plugins {
+ id("com.android.library")
+ id("org.jetbrains.kotlin.android")
+}
+
+android {
+ namespace = "com.example.common_ui"
+ compileSdk = 35
+
+ defaultConfig {
+ minSdk = 21
+
+ testInstrumentationRunner = "androidx.test.runner.AndroidJUnitRunner"
+ consumerProguardFiles("consumer-rules.pro")
+ }
+
+ buildTypes {
+ release {
+ isMinifyEnabled = false
+ proguardFiles(
+ getDefaultProguardFile("proguard-android-optimize.txt"),
+ "proguard-rules.pro"
+ )
+ }
+ }
+ compileOptions {
+ sourceCompatibility = JavaVersion.VERSION_11
+ targetCompatibility = JavaVersion.VERSION_11
+ }
+ kotlin {
+ compilerOptions {
+ jvmTarget.set(JvmTarget.JVM_17)
+ javaParameters.set(true)
+ }
+ }
+}
+
+dependencies {
+
+ implementation(libs.coreKtx)
+ implementation(libs.appcompat)
+ implementation(libs.material)
+ implementation(libs.playServicesMaps)
+ testImplementation(libs.junit)
+ androidTestImplementation(libs.androidxJunit)
+ androidTestImplementation(libs.espressoCore)
+}
\ No newline at end of file
diff --git a/ApiDemos/project/common-ui/consumer-rules.pro b/ApiDemos/project/common-ui/consumer-rules.pro
new file mode 100644
index 000000000..e69de29bb
diff --git a/ApiDemos/project/common-ui/proguard-rules.pro b/ApiDemos/project/common-ui/proguard-rules.pro
new file mode 100644
index 000000000..481bb4348
--- /dev/null
+++ b/ApiDemos/project/common-ui/proguard-rules.pro
@@ -0,0 +1,21 @@
+# Add project specific ProGuard rules here.
+# You can control the set of applied configuration files using the
+# proguardFiles setting in build.gradle.
+#
+# For more details, see
+# http://developer.android.com/guide/developing/tools/proguard.html
+
+# If your project uses WebView with JS, uncomment the following
+# and specify the fully qualified class name to the JavaScript interface
+# class:
+#-keepclassmembers class fqcn.of.javascript.interface.for.webview {
+# public *;
+#}
+
+# Uncomment this to preserve the line number information for
+# debugging stack traces.
+#-keepattributes SourceFile,LineNumberTable
+
+# If you keep the line number information, uncomment this to
+# hide the original source file name.
+#-renamesourcefileattribute SourceFile
\ No newline at end of file
diff --git a/ApiDemos/project/common-ui/src/androidTest/java/com/example/common_ui/ExampleInstrumentedTest.kt b/ApiDemos/project/common-ui/src/androidTest/java/com/example/common_ui/ExampleInstrumentedTest.kt
new file mode 100644
index 000000000..ed6abffea
--- /dev/null
+++ b/ApiDemos/project/common-ui/src/androidTest/java/com/example/common_ui/ExampleInstrumentedTest.kt
@@ -0,0 +1,40 @@
+/*
+ * Copyright 2025 Google LLC
+ *
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+
+package com.example.common_ui
+
+import androidx.test.platform.app.InstrumentationRegistry
+import androidx.test.ext.junit.runners.AndroidJUnit4
+
+import org.junit.Test
+import org.junit.runner.RunWith
+
+import org.junit.Assert.*
+
+/**
+ * Instrumented test, which will execute on an Android device.
+ *
+ * See [testing documentation](http://d.android.com/tools/testing).
+ */
+@RunWith(AndroidJUnit4::class)
+class ExampleInstrumentedTest {
+ @Test
+ fun useAppContext() {
+ // Context of the app under test.
+ val appContext = InstrumentationRegistry.getInstrumentation().targetContext
+ assertEquals("com.example.common_ui.test", appContext.packageName)
+ }
+}
\ No newline at end of file
diff --git a/ApiDemos/kotlin/app/src/main/res/layout/map_in_pager_demo.xml b/ApiDemos/project/common-ui/src/main/AndroidManifest.xml
old mode 100755
new mode 100644
similarity index 68%
rename from ApiDemos/kotlin/app/src/main/res/layout/map_in_pager_demo.xml
rename to ApiDemos/project/common-ui/src/main/AndroidManifest.xml
index dde498d1f..9b8e936e6
--- a/ApiDemos/kotlin/app/src/main/res/layout/map_in_pager_demo.xml
+++ b/ApiDemos/project/common-ui/src/main/AndroidManifest.xml
@@ -6,7 +6,7 @@
you may not use this file except in compliance with the License.
You may obtain a copy of the License at
- http://www.apache.org/licenses/LICENSE-2.0
+ http://www.apache.org/licenses/LICENSE-2.0
Unless required by applicable law or agreed to in writing, software
distributed under the License is distributed on an "AS IS" BASIS,
@@ -14,7 +14,7 @@
See the License for the specific language governing permissions and
limitations under the License.
-->
-
+
+
+
+
\ No newline at end of file
diff --git a/ApiDemos/java/app/src/main/res/drawable-hdpi/arrow.png b/ApiDemos/project/common-ui/src/main/res/drawable-hdpi/arrow.png
similarity index 100%
rename from ApiDemos/java/app/src/main/res/drawable-hdpi/arrow.png
rename to ApiDemos/project/common-ui/src/main/res/drawable-hdpi/arrow.png
diff --git a/ApiDemos/java/app/src/main/res/drawable-hdpi/badge_nsw.png b/ApiDemos/project/common-ui/src/main/res/drawable-hdpi/badge_nsw.png
similarity index 100%
rename from ApiDemos/java/app/src/main/res/drawable-hdpi/badge_nsw.png
rename to ApiDemos/project/common-ui/src/main/res/drawable-hdpi/badge_nsw.png
diff --git a/ApiDemos/java/app/src/main/res/drawable-hdpi/badge_nt.png b/ApiDemos/project/common-ui/src/main/res/drawable-hdpi/badge_nt.png
similarity index 100%
rename from ApiDemos/java/app/src/main/res/drawable-hdpi/badge_nt.png
rename to ApiDemos/project/common-ui/src/main/res/drawable-hdpi/badge_nt.png
diff --git a/ApiDemos/java/app/src/main/res/drawable-hdpi/badge_qld.png b/ApiDemos/project/common-ui/src/main/res/drawable-hdpi/badge_qld.png
similarity index 100%
rename from ApiDemos/java/app/src/main/res/drawable-hdpi/badge_qld.png
rename to ApiDemos/project/common-ui/src/main/res/drawable-hdpi/badge_qld.png
diff --git a/ApiDemos/java/app/src/main/res/drawable-hdpi/badge_sa.png b/ApiDemos/project/common-ui/src/main/res/drawable-hdpi/badge_sa.png
similarity index 100%
rename from ApiDemos/java/app/src/main/res/drawable-hdpi/badge_sa.png
rename to ApiDemos/project/common-ui/src/main/res/drawable-hdpi/badge_sa.png
diff --git a/ApiDemos/java/app/src/main/res/drawable-hdpi/badge_victoria.png b/ApiDemos/project/common-ui/src/main/res/drawable-hdpi/badge_victoria.png
similarity index 100%
rename from ApiDemos/java/app/src/main/res/drawable-hdpi/badge_victoria.png
rename to ApiDemos/project/common-ui/src/main/res/drawable-hdpi/badge_victoria.png
diff --git a/ApiDemos/java/app/src/main/res/drawable-hdpi/badge_wa.png b/ApiDemos/project/common-ui/src/main/res/drawable-hdpi/badge_wa.png
similarity index 100%
rename from ApiDemos/java/app/src/main/res/drawable-hdpi/badge_wa.png
rename to ApiDemos/project/common-ui/src/main/res/drawable-hdpi/badge_wa.png
diff --git a/ApiDemos/java/app/src/main/res/drawable-hdpi/custom_info_bubble.9.png b/ApiDemos/project/common-ui/src/main/res/drawable-hdpi/custom_info_bubble.9.png
similarity index 100%
rename from ApiDemos/java/app/src/main/res/drawable-hdpi/custom_info_bubble.9.png
rename to ApiDemos/project/common-ui/src/main/res/drawable-hdpi/custom_info_bubble.9.png
diff --git a/ApiDemos/java/app/src/main/res/drawable-hdpi/pegman.png b/ApiDemos/project/common-ui/src/main/res/drawable-hdpi/pegman.png
similarity index 100%
rename from ApiDemos/java/app/src/main/res/drawable-hdpi/pegman.png
rename to ApiDemos/project/common-ui/src/main/res/drawable-hdpi/pegman.png
diff --git a/ApiDemos/java/app/src/main/res/drawable-mdpi/arrow.png b/ApiDemos/project/common-ui/src/main/res/drawable-mdpi/arrow.png
similarity index 100%
rename from ApiDemos/java/app/src/main/res/drawable-mdpi/arrow.png
rename to ApiDemos/project/common-ui/src/main/res/drawable-mdpi/arrow.png
diff --git a/ApiDemos/java/app/src/main/res/drawable-mdpi/custom_info_bubble.9.png b/ApiDemos/project/common-ui/src/main/res/drawable-mdpi/custom_info_bubble.9.png
similarity index 100%
rename from ApiDemos/java/app/src/main/res/drawable-mdpi/custom_info_bubble.9.png
rename to ApiDemos/project/common-ui/src/main/res/drawable-mdpi/custom_info_bubble.9.png
diff --git a/ApiDemos/java/app/src/main/res/drawable-mdpi/pegman.png b/ApiDemos/project/common-ui/src/main/res/drawable-mdpi/pegman.png
similarity index 100%
rename from ApiDemos/java/app/src/main/res/drawable-mdpi/pegman.png
rename to ApiDemos/project/common-ui/src/main/res/drawable-mdpi/pegman.png
diff --git a/ApiDemos/java/app/src/main/res/drawable-nodpi/chevron.png b/ApiDemos/project/common-ui/src/main/res/drawable-nodpi/chevron.png
similarity index 100%
rename from ApiDemos/java/app/src/main/res/drawable-nodpi/chevron.png
rename to ApiDemos/project/common-ui/src/main/res/drawable-nodpi/chevron.png
diff --git a/ApiDemos/java/app/src/main/res/drawable-nodpi/ook.png b/ApiDemos/project/common-ui/src/main/res/drawable-nodpi/ook.png
similarity index 100%
rename from ApiDemos/java/app/src/main/res/drawable-nodpi/ook.png
rename to ApiDemos/project/common-ui/src/main/res/drawable-nodpi/ook.png
diff --git a/ApiDemos/java/app/src/main/res/drawable-xhdpi/pegman.png b/ApiDemos/project/common-ui/src/main/res/drawable-xhdpi/pegman.png
similarity index 100%
rename from ApiDemos/java/app/src/main/res/drawable-xhdpi/pegman.png
rename to ApiDemos/project/common-ui/src/main/res/drawable-xhdpi/pegman.png
diff --git a/ApiDemos/java/app/src/main/res/drawable-xxhdpi/pegman.png b/ApiDemos/project/common-ui/src/main/res/drawable-xxhdpi/pegman.png
similarity index 100%
rename from ApiDemos/java/app/src/main/res/drawable-xxhdpi/pegman.png
rename to ApiDemos/project/common-ui/src/main/res/drawable-xxhdpi/pegman.png
diff --git a/ApiDemos/java/app/src/main/res/drawable/baseline_arrow_drop_down_24.xml b/ApiDemos/project/common-ui/src/main/res/drawable/baseline_arrow_drop_down_24.xml
similarity index 100%
rename from ApiDemos/java/app/src/main/res/drawable/baseline_arrow_drop_down_24.xml
rename to ApiDemos/project/common-ui/src/main/res/drawable/baseline_arrow_drop_down_24.xml
diff --git a/ApiDemos/java/app/src/main/res/drawable/chevron.png b/ApiDemos/project/common-ui/src/main/res/drawable/chevron.png
similarity index 100%
rename from ApiDemos/java/app/src/main/res/drawable/chevron.png
rename to ApiDemos/project/common-ui/src/main/res/drawable/chevron.png
diff --git a/ApiDemos/java/app/src/main/res/drawable/harbour_bridge.jpg b/ApiDemos/project/common-ui/src/main/res/drawable/harbour_bridge.jpg
similarity index 100%
rename from ApiDemos/java/app/src/main/res/drawable/harbour_bridge.jpg
rename to ApiDemos/project/common-ui/src/main/res/drawable/harbour_bridge.jpg
diff --git a/ApiDemos/java/app/src/main/res/drawable/ic_android.xml b/ApiDemos/project/common-ui/src/main/res/drawable/ic_android.xml
similarity index 100%
rename from ApiDemos/java/app/src/main/res/drawable/ic_android.xml
rename to ApiDemos/project/common-ui/src/main/res/drawable/ic_android.xml
diff --git a/ApiDemos/java/app/src/main/res/drawable/newark_nj_1922.png b/ApiDemos/project/common-ui/src/main/res/drawable/newark_nj_1922.png
similarity index 100%
rename from ApiDemos/java/app/src/main/res/drawable/newark_nj_1922.png
rename to ApiDemos/project/common-ui/src/main/res/drawable/newark_nj_1922.png
diff --git a/ApiDemos/java/app/src/main/res/drawable/newark_prudential_sunny.jpg b/ApiDemos/project/common-ui/src/main/res/drawable/newark_prudential_sunny.jpg
similarity index 100%
rename from ApiDemos/java/app/src/main/res/drawable/newark_prudential_sunny.jpg
rename to ApiDemos/project/common-ui/src/main/res/drawable/newark_prudential_sunny.jpg
diff --git a/ApiDemos/java/app/src/main/res/layout-land/snapshot_demo.xml b/ApiDemos/project/common-ui/src/main/res/layout-land/snapshot_demo.xml
similarity index 100%
rename from ApiDemos/java/app/src/main/res/layout-land/snapshot_demo.xml
rename to ApiDemos/project/common-ui/src/main/res/layout-land/snapshot_demo.xml
diff --git a/ApiDemos/java/app/src/main/res/layout/advanced_markers_demo.xml b/ApiDemos/project/common-ui/src/main/res/layout/advanced_markers_demo.xml
similarity index 100%
rename from ApiDemos/java/app/src/main/res/layout/advanced_markers_demo.xml
rename to ApiDemos/project/common-ui/src/main/res/layout/advanced_markers_demo.xml
diff --git a/ApiDemos/java/app/src/main/res/layout/background_color_customization_demo.xml b/ApiDemos/project/common-ui/src/main/res/layout/background_color_customization_demo.xml
similarity index 100%
rename from ApiDemos/java/app/src/main/res/layout/background_color_customization_demo.xml
rename to ApiDemos/project/common-ui/src/main/res/layout/background_color_customization_demo.xml
diff --git a/ApiDemos/java/app/src/main/res/layout/background_color_customization_programmatic_demo.xml b/ApiDemos/project/common-ui/src/main/res/layout/background_color_customization_programmatic_demo.xml
similarity index 90%
rename from ApiDemos/java/app/src/main/res/layout/background_color_customization_programmatic_demo.xml
rename to ApiDemos/project/common-ui/src/main/res/layout/background_color_customization_programmatic_demo.xml
index 24d769a72..6758bf911 100644
--- a/ApiDemos/java/app/src/main/res/layout/background_color_customization_programmatic_demo.xml
+++ b/ApiDemos/project/common-ui/src/main/res/layout/background_color_customization_programmatic_demo.xml
@@ -55,14 +55,12 @@
app:layout_constraintEnd_toEndOf="parent"
app:layout_constraintStart_toStartOf="parent">
-
+ android:layout_height="48dp"
+ android:text="@string/show_map_tiles"
+ android:checked="false"/>
-
+ app:layout_constraintTop_toBottomOf="@+id/top_bar"
+ />
@@ -33,17 +32,15 @@
style="@style/Widget.MaterialComponents.Toolbar.Primary"
/>
-
+ app:layout_constraintTop_toBottomOf="@+id/top_bar"
+ />
Maps SDK for Android Demos (Java)
+ Maps SDK for Android Demos (Java)
+ Maps SDK for Android Demos (Kotlin)
No demos
Google Play services is not installed on this device.
@@ -158,6 +160,13 @@
+
-
+ Demonstrates how to add Markers to a map.
+ Markers
+ onMarkerDrag. Current Position: (%1$f, %2$f)
+ Started dragging marker
+ Marker stopped dragging
+ CameraChangeListener: %1$s
+
Grid
Lite Mode
@@ -314,4 +323,10 @@
Administrative Area Level 1
Country
Boundary
+
+ OK
+
+ Location permission is required to run the demo
+
+
diff --git a/ApiDemos/java/app/src/main/res/values/styles.xml b/ApiDemos/project/common-ui/src/main/res/values/styles.xml
similarity index 100%
rename from ApiDemos/java/app/src/main/res/values/styles.xml
rename to ApiDemos/project/common-ui/src/main/res/values/styles.xml
diff --git a/ApiDemos/kotlin/settings.gradle.kts b/ApiDemos/project/common-ui/src/test/java/com/example/common_ui/ExampleUnitTest.kt
similarity index 63%
rename from ApiDemos/kotlin/settings.gradle.kts
rename to ApiDemos/project/common-ui/src/test/java/com/example/common_ui/ExampleUnitTest.kt
index 598f94db3..03d5b72a7 100644
--- a/ApiDemos/kotlin/settings.gradle.kts
+++ b/ApiDemos/project/common-ui/src/test/java/com/example/common_ui/ExampleUnitTest.kt
@@ -14,4 +14,20 @@
* limitations under the License.
*/
-include(":app")
\ No newline at end of file
+package com.example.common_ui
+
+import org.junit.Test
+
+import org.junit.Assert.*
+
+/**
+ * Example local unit test, which will execute on the development machine (host).
+ *
+ * See [testing documentation](http://d.android.com/tools/testing).
+ */
+class ExampleUnitTest {
+ @Test
+ fun addition_isCorrect() {
+ assertEquals(4, 2 + 2)
+ }
+}
\ No newline at end of file
diff --git a/ApiDemos/java/gradle.properties b/ApiDemos/project/gradle.properties
similarity index 100%
rename from ApiDemos/java/gradle.properties
rename to ApiDemos/project/gradle.properties
diff --git a/ApiDemos/kotlin/gradle/libs.versions.toml b/ApiDemos/project/gradle/libs.versions.toml
similarity index 80%
rename from ApiDemos/kotlin/gradle/libs.versions.toml
rename to ApiDemos/project/gradle/libs.versions.toml
index bbaafd646..3f2396142 100644
--- a/ApiDemos/kotlin/gradle/libs.versions.toml
+++ b/ApiDemos/project/gradle/libs.versions.toml
@@ -1,22 +1,26 @@
[versions]
-activityKtx = "1.10.0"
+activity = "1.10.1"
+activityKtx = "1.10.1"
androidxJunit = "1.2.1"
-appcompat = "1.7.0"
+appcompat = "1.7.1"
cardview = "1.0.0"
easypermissions = "3.0.0"
espresso = "3.6.1"
-gradle = "8.8.0"
+gradle = "8.10.1"
junit = "4.13.2"
-kotlin = "2.1.0"
-lifecycle = "2.8.7"
-mapsKtx = "5.1.1"
+kotlin = "2.2.0"
+lifecycle = "2.9.1"
+mapsKtx = "5.2.0"
material = "1.12.0"
multidex = "2.0.1"
+playServicesMaps = "19.2.0"
recyclerview = "1.4.0"
secretsGradlePlugin = "2.0.1"
volley = "1.2.1"
+coreKtx = "1.16.0"
[libraries]
+activity = { module = "androidx.activity:activity", version.ref = "activity" }
activityKtx = { module = "androidx.activity:activity-ktx", version.ref = "activityKtx" }
androidxJunit = { group = "androidx.test.ext", name = "junit", version.ref = "androidxJunit" }
appcompat = { group = "androidx.appcompat", name = "appcompat", version.ref = "appcompat" }
@@ -31,6 +35,8 @@ lifecycleRuntimeKtx = { group = "androidx.lifecycle", name = "lifecycle-runtime-
mapsKtx = { group = "com.google.maps.android", name = "maps-ktx", version.ref = "mapsKtx" }
material = { group = "com.google.android.material", name = "material", version.ref = "material" }
multidex = { group = "androidx.multidex", name = "multidex", version.ref = "multidex" }
+playServicesMaps = { group = "com.google.android.gms", name = "play-services-maps", version.ref = "playServicesMaps" }
recyclerview = { group = "androidx.recyclerview", name = "recyclerview", version.ref = "recyclerview" }
secretsGradlePlugin = { module = "com.google.android.libraries.mapsplatform.secrets-gradle-plugin:secrets-gradle-plugin", version.ref = "secretsGradlePlugin" }
volley = { group = "com.android.volley", name = "volley", version.ref = "volley" }
+coreKtx = { group = "androidx.core", name = "core-ktx", version.ref = "coreKtx" }
diff --git a/ApiDemos/project/gradle/wrapper/gradle-wrapper.jar b/ApiDemos/project/gradle/wrapper/gradle-wrapper.jar
new file mode 100644
index 000000000..a4b76b953
Binary files /dev/null and b/ApiDemos/project/gradle/wrapper/gradle-wrapper.jar differ
diff --git a/ApiDemos/kotlin/gradle/wrapper/gradle-wrapper.properties b/ApiDemos/project/gradle/wrapper/gradle-wrapper.properties
similarity index 80%
rename from ApiDemos/kotlin/gradle/wrapper/gradle-wrapper.properties
rename to ApiDemos/project/gradle/wrapper/gradle-wrapper.properties
index b7284e1e2..e2847c820 100644
--- a/ApiDemos/kotlin/gradle/wrapper/gradle-wrapper.properties
+++ b/ApiDemos/project/gradle/wrapper/gradle-wrapper.properties
@@ -1,6 +1,7 @@
-#Wed Jul 10 22:13:18 CEST 2024
distributionBase=GRADLE_USER_HOME
distributionPath=wrapper/dists
distributionUrl=https\://services.gradle.org/distributions/gradle-8.11.1-bin.zip
+networkTimeout=10000
+validateDistributionUrl=true
zipStoreBase=GRADLE_USER_HOME
zipStorePath=wrapper/dists
diff --git a/ApiDemos/project/gradlew b/ApiDemos/project/gradlew
new file mode 100755
index 000000000..f5feea6d6
--- /dev/null
+++ b/ApiDemos/project/gradlew
@@ -0,0 +1,252 @@
+#!/bin/sh
+
+#
+# Copyright © 2015-2021 the original authors.
+#
+# Licensed under the Apache License, Version 2.0 (the "License");
+# you may not use this file except in compliance with the License.
+# You may obtain a copy of the License at
+#
+# https://www.apache.org/licenses/LICENSE-2.0
+#
+# Unless required by applicable law or agreed to in writing, software
+# distributed under the License is distributed on an "AS IS" BASIS,
+# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+# See the License for the specific language governing permissions and
+# limitations under the License.
+#
+# SPDX-License-Identifier: Apache-2.0
+#
+
+##############################################################################
+#
+# Gradle start up script for POSIX generated by Gradle.
+#
+# Important for running:
+#
+# (1) You need a POSIX-compliant shell to run this script. If your /bin/sh is
+# noncompliant, but you have some other compliant shell such as ksh or
+# bash, then to run this script, type that shell name before the whole
+# command line, like:
+#
+# ksh Gradle
+#
+# Busybox and similar reduced shells will NOT work, because this script
+# requires all of these POSIX shell features:
+# * functions;
+# * expansions «$var», «${var}», «${var:-default}», «${var+SET}»,
+# «${var#prefix}», «${var%suffix}», and «$( cmd )»;
+# * compound commands having a testable exit status, especially «case»;
+# * various built-in commands including «command», «set», and «ulimit».
+#
+# Important for patching:
+#
+# (2) This script targets any POSIX shell, so it avoids extensions provided
+# by Bash, Ksh, etc; in particular arrays are avoided.
+#
+# The "traditional" practice of packing multiple parameters into a
+# space-separated string is a well documented source of bugs and security
+# problems, so this is (mostly) avoided, by progressively accumulating
+# options in "$@", and eventually passing that to Java.
+#
+# Where the inherited environment variables (DEFAULT_JVM_OPTS, JAVA_OPTS,
+# and GRADLE_OPTS) rely on word-splitting, this is performed explicitly;
+# see the in-line comments for details.
+#
+# There are tweaks for specific operating systems such as AIX, CygWin,
+# Darwin, MinGW, and NonStop.
+#
+# (3) This script is generated from the Groovy template
+# https://github.com/gradle/gradle/blob/HEAD/platforms/jvm/plugins-application/src/main/resources/org/gradle/api/internal/plugins/unixStartScript.txt
+# within the Gradle project.
+#
+# You can find Gradle at https://github.com/gradle/gradle/.
+#
+##############################################################################
+
+# Attempt to set APP_HOME
+
+# Resolve links: $0 may be a link
+app_path=$0
+
+# Need this for daisy-chained symlinks.
+while
+ APP_HOME=${app_path%"${app_path##*/}"} # leaves a trailing /; empty if no leading path
+ [ -h "$app_path" ]
+do
+ ls=$( ls -ld "$app_path" )
+ link=${ls#*' -> '}
+ case $link in #(
+ /*) app_path=$link ;; #(
+ *) app_path=$APP_HOME$link ;;
+ esac
+done
+
+# This is normally unused
+# shellcheck disable=SC2034
+APP_BASE_NAME=${0##*/}
+# Discard cd standard output in case $CDPATH is set (https://github.com/gradle/gradle/issues/25036)
+APP_HOME=$( cd -P "${APP_HOME:-./}" > /dev/null && printf '%s
+' "$PWD" ) || exit
+
+# Use the maximum available, or set MAX_FD != -1 to use that value.
+MAX_FD=maximum
+
+warn () {
+ echo "$*"
+} >&2
+
+die () {
+ echo
+ echo "$*"
+ echo
+ exit 1
+} >&2
+
+# OS specific support (must be 'true' or 'false').
+cygwin=false
+msys=false
+darwin=false
+nonstop=false
+case "$( uname )" in #(
+ CYGWIN* ) cygwin=true ;; #(
+ Darwin* ) darwin=true ;; #(
+ MSYS* | MINGW* ) msys=true ;; #(
+ NONSTOP* ) nonstop=true ;;
+esac
+
+CLASSPATH=$APP_HOME/gradle/wrapper/gradle-wrapper.jar
+
+
+# Determine the Java command to use to start the JVM.
+if [ -n "$JAVA_HOME" ] ; then
+ if [ -x "$JAVA_HOME/jre/sh/java" ] ; then
+ # IBM's JDK on AIX uses strange locations for the executables
+ JAVACMD=$JAVA_HOME/jre/sh/java
+ else
+ JAVACMD=$JAVA_HOME/bin/java
+ fi
+ if [ ! -x "$JAVACMD" ] ; then
+ die "ERROR: JAVA_HOME is set to an invalid directory: $JAVA_HOME
+
+Please set the JAVA_HOME variable in your environment to match the
+location of your Java installation."
+ fi
+else
+ JAVACMD=java
+ if ! command -v java >/dev/null 2>&1
+ then
+ die "ERROR: JAVA_HOME is not set and no 'java' command could be found in your PATH.
+
+Please set the JAVA_HOME variable in your environment to match the
+location of your Java installation."
+ fi
+fi
+
+# Increase the maximum file descriptors if we can.
+if ! "$cygwin" && ! "$darwin" && ! "$nonstop" ; then
+ case $MAX_FD in #(
+ max*)
+ # In POSIX sh, ulimit -H is undefined. That's why the result is checked to see if it worked.
+ # shellcheck disable=SC2039,SC3045
+ MAX_FD=$( ulimit -H -n ) ||
+ warn "Could not query maximum file descriptor limit"
+ esac
+ case $MAX_FD in #(
+ '' | soft) :;; #(
+ *)
+ # In POSIX sh, ulimit -n is undefined. That's why the result is checked to see if it worked.
+ # shellcheck disable=SC2039,SC3045
+ ulimit -n "$MAX_FD" ||
+ warn "Could not set maximum file descriptor limit to $MAX_FD"
+ esac
+fi
+
+# Collect all arguments for the java command, stacking in reverse order:
+# * args from the command line
+# * the main class name
+# * -classpath
+# * -D...appname settings
+# * --module-path (only if needed)
+# * DEFAULT_JVM_OPTS, JAVA_OPTS, and GRADLE_OPTS environment variables.
+
+# For Cygwin or MSYS, switch paths to Windows format before running java
+if "$cygwin" || "$msys" ; then
+ APP_HOME=$( cygpath --path --mixed "$APP_HOME" )
+ CLASSPATH=$( cygpath --path --mixed "$CLASSPATH" )
+
+ JAVACMD=$( cygpath --unix "$JAVACMD" )
+
+ # Now convert the arguments - kludge to limit ourselves to /bin/sh
+ for arg do
+ if
+ case $arg in #(
+ -*) false ;; # don't mess with options #(
+ /?*) t=${arg#/} t=/${t%%/*} # looks like a POSIX filepath
+ [ -e "$t" ] ;; #(
+ *) false ;;
+ esac
+ then
+ arg=$( cygpath --path --ignore --mixed "$arg" )
+ fi
+ # Roll the args list around exactly as many times as the number of
+ # args, so each arg winds up back in the position where it started, but
+ # possibly modified.
+ #
+ # NB: a `for` loop captures its iteration list before it begins, so
+ # changing the positional parameters here affects neither the number of
+ # iterations, nor the values presented in `arg`.
+ shift # remove old arg
+ set -- "$@" "$arg" # push replacement arg
+ done
+fi
+
+
+# Add default JVM options here. You can also use JAVA_OPTS and GRADLE_OPTS to pass JVM options to this script.
+DEFAULT_JVM_OPTS='"-Xmx64m" "-Xms64m"'
+
+# Collect all arguments for the java command:
+# * DEFAULT_JVM_OPTS, JAVA_OPTS, JAVA_OPTS, and optsEnvironmentVar are not allowed to contain shell fragments,
+# and any embedded shellness will be escaped.
+# * For example: A user cannot expect ${Hostname} to be expanded, as it is an environment variable and will be
+# treated as '${Hostname}' itself on the command line.
+
+set -- \
+ "-Dorg.gradle.appname=$APP_BASE_NAME" \
+ -classpath "$CLASSPATH" \
+ org.gradle.wrapper.GradleWrapperMain \
+ "$@"
+
+# Stop when "xargs" is not available.
+if ! command -v xargs >/dev/null 2>&1
+then
+ die "xargs is not available"
+fi
+
+# Use "xargs" to parse quoted args.
+#
+# With -n1 it outputs one arg per line, with the quotes and backslashes removed.
+#
+# In Bash we could simply go:
+#
+# readarray ARGS < <( xargs -n1 <<<"$var" ) &&
+# set -- "${ARGS[@]}" "$@"
+#
+# but POSIX shell has neither arrays nor command substitution, so instead we
+# post-process each arg (as a line of input to sed) to backslash-escape any
+# character that might be a shell metacharacter, then use eval to reverse
+# that process (while maintaining the separation between arguments), and wrap
+# the whole thing up as a single "set" statement.
+#
+# This will of course break if any of these variables contains a newline or
+# an unmatched quote.
+#
+
+eval "set -- $(
+ printf '%s\n' "$DEFAULT_JVM_OPTS $JAVA_OPTS $GRADLE_OPTS" |
+ xargs -n1 |
+ sed ' s~[^-[:alnum:]+,./:=@_]~\\&~g; ' |
+ tr '\n' ' '
+ )" '"$@"'
+
+exec "$JAVACMD" "$@"
diff --git a/ApiDemos/project/gradlew.bat b/ApiDemos/project/gradlew.bat
new file mode 100644
index 000000000..9b42019c7
--- /dev/null
+++ b/ApiDemos/project/gradlew.bat
@@ -0,0 +1,94 @@
+@rem
+@rem Copyright 2015 the original author or authors.
+@rem
+@rem Licensed under the Apache License, Version 2.0 (the "License");
+@rem you may not use this file except in compliance with the License.
+@rem You may obtain a copy of the License at
+@rem
+@rem https://www.apache.org/licenses/LICENSE-2.0
+@rem
+@rem Unless required by applicable law or agreed to in writing, software
+@rem distributed under the License is distributed on an "AS IS" BASIS,
+@rem WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+@rem See the License for the specific language governing permissions and
+@rem limitations under the License.
+@rem
+@rem SPDX-License-Identifier: Apache-2.0
+@rem
+
+@if "%DEBUG%"=="" @echo off
+@rem ##########################################################################
+@rem
+@rem Gradle startup script for Windows
+@rem
+@rem ##########################################################################
+
+@rem Set local scope for the variables with windows NT shell
+if "%OS%"=="Windows_NT" setlocal
+
+set DIRNAME=%~dp0
+if "%DIRNAME%"=="" set DIRNAME=.
+@rem This is normally unused
+set APP_BASE_NAME=%~n0
+set APP_HOME=%DIRNAME%
+
+@rem Resolve any "." and ".." in APP_HOME to make it shorter.
+for %%i in ("%APP_HOME%") do set APP_HOME=%%~fi
+
+@rem Add default JVM options here. You can also use JAVA_OPTS and GRADLE_OPTS to pass JVM options to this script.
+set DEFAULT_JVM_OPTS="-Xmx64m" "-Xms64m"
+
+@rem Find java.exe
+if defined JAVA_HOME goto findJavaFromJavaHome
+
+set JAVA_EXE=java.exe
+%JAVA_EXE% -version >NUL 2>&1
+if %ERRORLEVEL% equ 0 goto execute
+
+echo. 1>&2
+echo ERROR: JAVA_HOME is not set and no 'java' command could be found in your PATH. 1>&2
+echo. 1>&2
+echo Please set the JAVA_HOME variable in your environment to match the 1>&2
+echo location of your Java installation. 1>&2
+
+goto fail
+
+:findJavaFromJavaHome
+set JAVA_HOME=%JAVA_HOME:"=%
+set JAVA_EXE=%JAVA_HOME%/bin/java.exe
+
+if exist "%JAVA_EXE%" goto execute
+
+echo. 1>&2
+echo ERROR: JAVA_HOME is set to an invalid directory: %JAVA_HOME% 1>&2
+echo. 1>&2
+echo Please set the JAVA_HOME variable in your environment to match the 1>&2
+echo location of your Java installation. 1>&2
+
+goto fail
+
+:execute
+@rem Setup the command line
+
+set CLASSPATH=%APP_HOME%\gradle\wrapper\gradle-wrapper.jar
+
+
+@rem Execute Gradle
+"%JAVA_EXE%" %DEFAULT_JVM_OPTS% %JAVA_OPTS% %GRADLE_OPTS% "-Dorg.gradle.appname=%APP_BASE_NAME%" -classpath "%CLASSPATH%" org.gradle.wrapper.GradleWrapperMain %*
+
+:end
+@rem End local scope for the variables with windows NT shell
+if %ERRORLEVEL% equ 0 goto mainEnd
+
+:fail
+rem Set variable GRADLE_EXIT_CONSOLE if you need the _script_ return code instead of
+rem the _cmd.exe /c_ return code!
+set EXIT_CODE=%ERRORLEVEL%
+if %EXIT_CODE% equ 0 set EXIT_CODE=1
+if not ""=="%GRADLE_EXIT_CONSOLE%" exit %EXIT_CODE%
+exit /b %EXIT_CODE%
+
+:mainEnd
+if "%OS%"=="Windows_NT" endlocal
+
+:omega
diff --git a/ApiDemos/java/app/.gitignore b/ApiDemos/project/java-app/.gitignore
similarity index 100%
rename from ApiDemos/java/app/.gitignore
rename to ApiDemos/project/java-app/.gitignore
diff --git a/ApiDemos/java/app/build.gradle.kts b/ApiDemos/project/java-app/build.gradle.kts
similarity index 98%
rename from ApiDemos/java/app/build.gradle.kts
rename to ApiDemos/project/java-app/build.gradle.kts
index 980ead141..c06573a9b 100644
--- a/ApiDemos/java/app/build.gradle.kts
+++ b/ApiDemos/project/java-app/build.gradle.kts
@@ -66,6 +66,8 @@ dependencies {
testImplementation(libs.junit)
androidTestImplementation(libs.androidxJunit)
androidTestImplementation(libs.espressoCore)
+
+ implementation(project(":common-ui"))
}
secrets {
diff --git a/ApiDemos/java/app/proguard-rules.pro b/ApiDemos/project/java-app/proguard-rules.pro
similarity index 100%
rename from ApiDemos/java/app/proguard-rules.pro
rename to ApiDemos/project/java-app/proguard-rules.pro
diff --git a/ApiDemos/java/app/src/main/AndroidManifest.xml b/ApiDemos/project/java-app/src/main/AndroidManifest.xml
similarity index 100%
rename from ApiDemos/java/app/src/main/AndroidManifest.xml
rename to ApiDemos/project/java-app/src/main/AndroidManifest.xml
diff --git a/ApiDemos/java/app/src/main/java/com/example/mapdemo/AdvancedMarkersDemoActivity.java b/ApiDemos/project/java-app/src/main/java/com/example/mapdemo/AdvancedMarkersDemoActivity.java
similarity index 96%
rename from ApiDemos/java/app/src/main/java/com/example/mapdemo/AdvancedMarkersDemoActivity.java
rename to ApiDemos/project/java-app/src/main/java/com/example/mapdemo/AdvancedMarkersDemoActivity.java
index d4abeb072..32e835072 100644
--- a/ApiDemos/java/app/src/main/java/com/example/mapdemo/AdvancedMarkersDemoActivity.java
+++ b/ApiDemos/project/java-app/src/main/java/com/example/mapdemo/AdvancedMarkersDemoActivity.java
@@ -57,13 +57,13 @@ public class AdvancedMarkersDemoActivity extends SamplesBaseActivity implements
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
- setContentView(R.layout.advanced_markers_demo);
+ setContentView(com.example.common_ui.R.layout.advanced_markers_demo);
- SupportMapFragment mapFragment = (SupportMapFragment) getSupportFragmentManager().findFragmentById(R.id.map);
+ SupportMapFragment mapFragment = (SupportMapFragment) getSupportFragmentManager().findFragmentById(com.example.common_ui.R.id.map);
if (mapFragment != null) {
mapFragment.getMapAsync(this);
}
- applyInsets(findViewById(R.id.map_container));
+ applyInsets(findViewById(com.example.common_ui.R.id.map_container));
}
diff --git a/ApiDemos/java/app/src/main/java/com/example/mapdemo/ApiDemoApplication.java b/ApiDemos/project/java-app/src/main/java/com/example/mapdemo/ApiDemoApplication.java
similarity index 76%
rename from ApiDemos/java/app/src/main/java/com/example/mapdemo/ApiDemoApplication.java
rename to ApiDemos/project/java-app/src/main/java/com/example/mapdemo/ApiDemoApplication.java
index 5fb2dce34..8410b5080 100644
--- a/ApiDemos/java/app/src/main/java/com/example/mapdemo/ApiDemoApplication.java
+++ b/ApiDemos/project/java-app/src/main/java/com/example/mapdemo/ApiDemoApplication.java
@@ -23,6 +23,11 @@
import android.util.Log;
import android.widget.Toast;
+//noinspection UnusedImport
+import com.example.common_ui.R; // <-- Keep this import
+
+import androidx.annotation.Nullable;
+
import java.util.Objects;
/**
@@ -37,6 +42,8 @@
*/
public class ApiDemoApplication extends Application {
private static final String TAG = "ApiDemoApplication";
+ private boolean mapIdSet = false;
+ private String mapId = null;
@Override
public void onCreate() {
@@ -74,4 +81,25 @@ private void checkApiKey() {
throw new RuntimeException("Error accessing meta-data in manifest", e);
}
}
+
+ /**
+ * Retrieves the map ID from the BuildConfig or string resource.
+ *
+ * @return The valid map ID or null if no valid map ID is found.
+ */
+ @Nullable
+ public String getMapId() {
+ if (!mapIdSet) {
+ if (!BuildConfig.MAP_ID.equals("MAP_ID")) {
+ mapId = BuildConfig.MAP_ID;
+ } else if (!getString(R.string.map_id).equals("DEMO_MAP_ID")) {
+ mapId = getString(R.string.map_id);
+ } else {
+ Log.w(TAG, "Map ID is not set. See README for instructions.");
+ Toast.makeText(this, "Map ID is not set. Some features may not work. See README for instructions.", Toast.LENGTH_LONG).show();
+ }
+ mapIdSet = true;
+ }
+ return mapId;
+ }
}
diff --git a/ApiDemos/java/app/src/main/java/com/example/mapdemo/BackgroundColorCustomizationDemoActivity.java b/ApiDemos/project/java-app/src/main/java/com/example/mapdemo/BackgroundColorCustomizationDemoActivity.java
similarity index 87%
rename from ApiDemos/java/app/src/main/java/com/example/mapdemo/BackgroundColorCustomizationDemoActivity.java
rename to ApiDemos/project/java-app/src/main/java/com/example/mapdemo/BackgroundColorCustomizationDemoActivity.java
index 9051a3bff..89afbc469 100644
--- a/ApiDemos/java/app/src/main/java/com/example/mapdemo/BackgroundColorCustomizationDemoActivity.java
+++ b/ApiDemos/project/java-app/src/main/java/com/example/mapdemo/BackgroundColorCustomizationDemoActivity.java
@@ -39,14 +39,14 @@ public class BackgroundColorCustomizationDemoActivity extends SamplesBaseActivit
@Override
protected void onCreate(@Nullable Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
- setContentView(R.layout.background_color_customization_demo);
+ setContentView(com.example.common_ui.R.layout.background_color_customization_demo);
SupportMapFragment mapFragment =
- (SupportMapFragment) getSupportFragmentManager().findFragmentById(R.id.map);
+ (SupportMapFragment) getSupportFragmentManager().findFragmentById(com.example.common_ui.R.id.map);
Preconditions.checkNotNull(mapFragment)
.getMapAsync(this);
- applyInsets(findViewById(R.id.map_container));
+ applyInsets(findViewById(com.example.common_ui.R.id.map_container));
}
/**
@@ -57,7 +57,7 @@ protected void onCreate(@Nullable Bundle savedInstanceState) {
public void onMapReady(GoogleMap map) {
map.setMapType(GoogleMap.MAP_TYPE_NONE);
- SwitchMaterial mapTypeToggleCheckbox = findViewById(R.id.map_type_toggle);
+ SwitchMaterial mapTypeToggleCheckbox = findViewById(com.example.common_ui.R.id.map_type_toggle);
mapTypeToggleCheckbox.setOnCheckedChangeListener(
(view, isChecked) -> map.setMapType(isChecked ? GoogleMap.MAP_TYPE_NORMAL : GoogleMap.MAP_TYPE_NONE));
diff --git a/ApiDemos/java/app/src/main/java/com/example/mapdemo/BackgroundColorCustomizationProgrammaticDemoActivity.java b/ApiDemos/project/java-app/src/main/java/com/example/mapdemo/BackgroundColorCustomizationProgrammaticDemoActivity.java
similarity index 89%
rename from ApiDemos/java/app/src/main/java/com/example/mapdemo/BackgroundColorCustomizationProgrammaticDemoActivity.java
rename to ApiDemos/project/java-app/src/main/java/com/example/mapdemo/BackgroundColorCustomizationProgrammaticDemoActivity.java
index 90686967c..6515b07f3 100644
--- a/ApiDemos/java/app/src/main/java/com/example/mapdemo/BackgroundColorCustomizationProgrammaticDemoActivity.java
+++ b/ApiDemos/project/java-app/src/main/java/com/example/mapdemo/BackgroundColorCustomizationProgrammaticDemoActivity.java
@@ -43,7 +43,7 @@ public class BackgroundColorCustomizationProgrammaticDemoActivity extends Sample
@Override
protected void onCreate(@Nullable Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
- setContentView(R.layout.background_color_customization_programmatic_demo);
+ setContentView(com.example.common_ui.R.layout.background_color_customization_programmatic_demo);
// It isn't possible to set a fragment's id programmatically so we set a tag instead and
// search for it using that.
@@ -59,18 +59,18 @@ protected void onCreate(@Nullable Bundle savedInstanceState) {
// Then we add the fragment using a FragmentTransaction.
FragmentTransaction fragmentTransaction = getSupportFragmentManager().beginTransaction();
- fragmentTransaction.replace(R.id.map, mapFragment, MAP_FRAGMENT_TAG);
+ fragmentTransaction.replace(com.example.common_ui.R.id.map, mapFragment, MAP_FRAGMENT_TAG);
fragmentTransaction.commit();
}
mapFragment.getMapAsync(this);
- applyInsets(findViewById(R.id.map_container));
+ applyInsets(findViewById(com.example.common_ui.R.id.map_container));
}
@Override
public void onMapReady(GoogleMap map) {
map.setMapType(GoogleMap.MAP_TYPE_NONE);
- CheckBox mapTypeToggleCheckbox = (CheckBox) findViewById(R.id.map_type_toggle);
+ CheckBox mapTypeToggleCheckbox = findViewById(com.example.common_ui.R.id.map_type_toggle);
mapTypeToggleCheckbox.setOnCheckedChangeListener(
(view, isChecked) -> map.setMapType(isChecked ? GoogleMap.MAP_TYPE_NORMAL : GoogleMap.MAP_TYPE_NONE));
diff --git a/ApiDemos/java/app/src/main/java/com/example/mapdemo/BasicMapDemoActivity.java b/ApiDemos/project/java-app/src/main/java/com/example/mapdemo/BasicMapDemoActivity.java
similarity index 90%
rename from ApiDemos/java/app/src/main/java/com/example/mapdemo/BasicMapDemoActivity.java
rename to ApiDemos/project/java-app/src/main/java/com/example/mapdemo/BasicMapDemoActivity.java
index b01aecaa3..fec64ca23 100755
--- a/ApiDemos/java/app/src/main/java/com/example/mapdemo/BasicMapDemoActivity.java
+++ b/ApiDemos/project/java-app/src/main/java/com/example/mapdemo/BasicMapDemoActivity.java
@@ -33,12 +33,12 @@ public class BasicMapDemoActivity extends SamplesBaseActivity implements OnMapRe
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
- setContentView(R.layout.basic_demo);
+ setContentView(com.example.common_ui.R.layout.basic_demo);
SupportMapFragment mapFragment =
- (SupportMapFragment) getSupportFragmentManager().findFragmentById(R.id.map);
+ (SupportMapFragment) getSupportFragmentManager().findFragmentById(com.example.common_ui.R.id.map);
mapFragment.getMapAsync(this);
- applyInsets(findViewById(R.id.map_container));
+ applyInsets(findViewById(com.example.common_ui.R.id.map_container));
}
/**
diff --git a/ApiDemos/java/app/src/main/java/com/example/mapdemo/CameraClampingDemoActivity.java b/ApiDemos/project/java-app/src/main/java/com/example/mapdemo/CameraClampingDemoActivity.java
similarity index 93%
rename from ApiDemos/java/app/src/main/java/com/example/mapdemo/CameraClampingDemoActivity.java
rename to ApiDemos/project/java-app/src/main/java/com/example/mapdemo/CameraClampingDemoActivity.java
index 1464ef275..a9adb65ea 100644
--- a/ApiDemos/java/app/src/main/java/com/example/mapdemo/CameraClampingDemoActivity.java
+++ b/ApiDemos/project/java-app/src/main/java/com/example/mapdemo/CameraClampingDemoActivity.java
@@ -71,17 +71,17 @@ public class CameraClampingDemoActivity extends SamplesBaseActivity
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
- setContentView(R.layout.camera_clamping_demo);
+ setContentView(com.example.common_ui.R.layout.camera_clamping_demo);
mMap = null;
resetMinMaxZoom();
- mCameraTextView = (TextView) findViewById(R.id.camera_text);
+ mCameraTextView = findViewById(com.example.common_ui.R.id.camera_text);
SupportMapFragment mapFragment =
- (SupportMapFragment) getSupportFragmentManager().findFragmentById(R.id.map);
+ (SupportMapFragment) getSupportFragmentManager().findFragmentById(com.example.common_ui.R.id.map);
mapFragment.getMapAsync(this);
- applyInsets(findViewById(R.id.map_container));
+ applyInsets(findViewById(com.example.common_ui.R.id.map_container));
}
@Override
@@ -106,7 +106,7 @@ public void onCameraIdle() {
*/
private boolean checkReady() {
if (mMap == null) {
- Toast.makeText(this, R.string.map_not_ready, Toast.LENGTH_SHORT).show();
+ Toast.makeText(this, com.example.common_ui.R.string.map_not_ready, Toast.LENGTH_SHORT).show();
return false;
}
return true;
diff --git a/ApiDemos/java/app/src/main/java/com/example/mapdemo/CameraDemoActivity.java b/ApiDemos/project/java-app/src/main/java/com/example/mapdemo/CameraDemoActivity.java
similarity index 95%
rename from ApiDemos/java/app/src/main/java/com/example/mapdemo/CameraDemoActivity.java
rename to ApiDemos/project/java-app/src/main/java/com/example/mapdemo/CameraDemoActivity.java
index 5997435b4..62b66668e 100644
--- a/ApiDemos/java/app/src/main/java/com/example/mapdemo/CameraDemoActivity.java
+++ b/ApiDemos/project/java-app/src/main/java/com/example/mapdemo/CameraDemoActivity.java
@@ -85,19 +85,19 @@ public class CameraDemoActivity extends SamplesBaseActivity implements
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
- setContentView(R.layout.camera_demo);
+ setContentView(com.example.common_ui.R.layout.camera_demo);
// [START_EXCLUDE silent]
- animateToggle = findViewById(R.id.animate);
- customDurationToggle = findViewById(R.id.duration_toggle);
- customDurationBar = findViewById(R.id.duration_bar);
+ animateToggle = findViewById(com.example.common_ui.R.id.animate);
+ customDurationToggle = findViewById(com.example.common_ui.R.id.duration_toggle);
+ customDurationBar = findViewById(com.example.common_ui.R.id.duration_bar);
updateEnabledState();
// [END_EXCLUDE]
SupportMapFragment mapFragment =
- (SupportMapFragment) getSupportFragmentManager().findFragmentById(R.id.map);
+ (SupportMapFragment) getSupportFragmentManager().findFragmentById(com.example.common_ui.R.id.map);
mapFragment.getMapAsync(this);
- applyInsets(findViewById(R.id.map_container));
+ applyInsets(findViewById(com.example.common_ui.R.id.map_container));
}
// [START_EXCLUDE silent]
@@ -134,7 +134,7 @@ public void onMapReady(GoogleMap googleMap) {
*/
private boolean checkReady() {
if (map == null) {
- Toast.makeText(this, R.string.map_not_ready, Toast.LENGTH_SHORT).show();
+ Toast.makeText(this, com.example.common_ui.R.string.map_not_ready, Toast.LENGTH_SHORT).show();
return false;
}
return true;
diff --git a/ApiDemos/java/app/src/main/java/com/example/mapdemo/CircleDemoActivity.java b/ApiDemos/project/java-app/src/main/java/com/example/mapdemo/CircleDemoActivity.java
similarity index 88%
rename from ApiDemos/java/app/src/main/java/com/example/mapdemo/CircleDemoActivity.java
rename to ApiDemos/project/java-app/src/main/java/com/example/mapdemo/CircleDemoActivity.java
index ce4c4e115..6767c6143 100755
--- a/ApiDemos/java/app/src/main/java/com/example/mapdemo/CircleDemoActivity.java
+++ b/ApiDemos/project/java-app/src/main/java/com/example/mapdemo/CircleDemoActivity.java
@@ -78,7 +78,7 @@ public class CircleDemoActivity extends SamplesBaseActivity
private GoogleMap map;
- private List circles = new ArrayList<>(1);
+ private final List circles = new ArrayList<>(1);
private int fillColorArgb;
private int strokeColorArgb;
@@ -95,10 +95,10 @@ public class CircleDemoActivity extends SamplesBaseActivity
// string resource IDs as identifiers.
private static final int[] PATTERN_TYPE_NAME_RESOURCE_IDS = {
- R.string.pattern_solid, // Default
- R.string.pattern_dashed,
- R.string.pattern_dotted,
- R.string.pattern_mixed,
+ com.example.common_ui.R.string.pattern_solid, // Default
+ com.example.common_ui.R.string.pattern_dashed,
+ com.example.common_ui.R.string.pattern_dotted,
+ com.example.common_ui.R.string.pattern_mixed,
};
private class DraggableCircle {
@@ -173,39 +173,39 @@ private static double toRadiusMeters(LatLng center, LatLng radius) {
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
- setContentView(R.layout.circle_demo);
+ setContentView(com.example.common_ui.R.layout.circle_demo);
- fillHueBar = findViewById(R.id.fillHueSeekBar);
+ fillHueBar = findViewById(com.example.common_ui.R.id.fillHueSeekBar);
fillHueBar.setMax(MAX_HUE_DEGREES);
fillHueBar.setProgress(MAX_HUE_DEGREES / 2);
- fillAlphaBar = findViewById(R.id.fillAlphaSeekBar);
+ fillAlphaBar = findViewById(com.example.common_ui.R.id.fillAlphaSeekBar);
fillAlphaBar.setMax(MAX_ALPHA);
fillAlphaBar.setProgress(MAX_ALPHA / 2);
- strokeWidthBar = findViewById(R.id.strokeWidthSeekBar);
+ strokeWidthBar = findViewById(com.example.common_ui.R.id.strokeWidthSeekBar);
strokeWidthBar.setMax(MAX_WIDTH_PX);
strokeWidthBar.setProgress(MAX_WIDTH_PX / 3);
- strokeHueBar = findViewById(R.id.strokeHueSeekBar);
+ strokeHueBar = findViewById(com.example.common_ui.R.id.strokeHueSeekBar);
strokeHueBar.setMax(MAX_HUE_DEGREES);
strokeHueBar.setProgress(0);
- strokeAlphaBar = findViewById(R.id.strokeAlphaSeekBar);
+ strokeAlphaBar = findViewById(com.example.common_ui.R.id.strokeAlphaSeekBar);
strokeAlphaBar.setMax(MAX_ALPHA);
strokeAlphaBar.setProgress(MAX_ALPHA);
- strokePatternSpinner = findViewById(R.id.strokePatternSpinner);
+ strokePatternSpinner = findViewById(com.example.common_ui.R.id.strokePatternSpinner);
strokePatternSpinner.setAdapter(new ArrayAdapter<>(
this, android.R.layout.simple_spinner_item,
getResourceStrings(PATTERN_TYPE_NAME_RESOURCE_IDS)));
- clickabilityCheckbox = findViewById(R.id.toggleClickability);
+ clickabilityCheckbox = findViewById(com.example.common_ui.R.id.toggleClickability);
SupportMapFragment mapFragment =
- (SupportMapFragment) getSupportFragmentManager().findFragmentById(R.id.map);
+ (SupportMapFragment) getSupportFragmentManager().findFragmentById(com.example.common_ui.R.id.map);
mapFragment.getMapAsync(this);
- applyInsets(findViewById(R.id.map_container));
+ applyInsets(findViewById(com.example.common_ui.R.id.map_container));
}
private String[] getResourceStrings(int[] resourceIds) {
@@ -219,7 +219,7 @@ private String[] getResourceStrings(int[] resourceIds) {
@Override
public void onMapReady(GoogleMap googleMap) {
// Override the default content description on the view, for accessibility mode.
- googleMap.setContentDescription(getString(R.string.map_circle_description));
+ googleMap.setContentDescription(getString(com.example.common_ui.R.string.map_circle_description));
map = googleMap;
map.setOnMarkerDragListener(this);
@@ -262,13 +262,13 @@ public void onCircleClick(Circle circle) {
private List getSelectedPattern(int pos) {
int id = PATTERN_TYPE_NAME_RESOURCE_IDS[pos];
- if (id == R.string.pattern_solid) {
+ if (id == com.example.common_ui.R.string.pattern_solid) {
return null;
- } else if (id == R.string.pattern_dotted) {
+ } else if (id == com.example.common_ui.R.string.pattern_dotted) {
return PATTERN_DOTTED;
- } else if (id == R.string.pattern_dashed) {
+ } else if (id == com.example.common_ui.R.string.pattern_dashed) {
return PATTERN_DASHED;
- } else if (id == R.string.pattern_mixed) {
+ } else if (id == com.example.common_ui.R.string.pattern_mixed) {
return PATTERN_MIXED;
} else {
return null;
@@ -277,7 +277,7 @@ private List getSelectedPattern(int pos) {
@Override
public void onItemSelected(AdapterView> parent, View view, int pos, long id) {
- if (parent.getId() == R.id.strokePatternSpinner) {
+ if (parent.getId() == com.example.common_ui.R.id.strokePatternSpinner) {
for (DraggableCircle draggableCircle : circles) {
draggableCircle.setStrokePattern(getSelectedPattern(pos));
}
@@ -346,7 +346,7 @@ private void onMarkerMoved(Marker marker) {
@Override
public void onMapLongClick(LatLng point) {
// We know the center, let's place the outline at a point 3/4 along the view.
- View view = getSupportFragmentManager().findFragmentById(R.id.map).getView();
+ View view = getSupportFragmentManager().findFragmentById(com.example.common_ui.R.id.map).getView();
LatLng radiusLatLng = map.getProjection().fromScreenLocation(new Point(
view.getHeight() * 3 / 4, view.getWidth() * 3 / 4));
diff --git a/ApiDemos/java/app/src/main/java/com/example/mapdemo/CloudBasedMapStylingDemoActivity.java b/ApiDemos/project/java-app/src/main/java/com/example/mapdemo/CloudBasedMapStylingDemoActivity.java
similarity index 81%
rename from ApiDemos/java/app/src/main/java/com/example/mapdemo/CloudBasedMapStylingDemoActivity.java
rename to ApiDemos/project/java-app/src/main/java/com/example/mapdemo/CloudBasedMapStylingDemoActivity.java
index cf2b8d846..93f21802f 100644
--- a/ApiDemos/java/app/src/main/java/com/example/mapdemo/CloudBasedMapStylingDemoActivity.java
+++ b/ApiDemos/project/java-app/src/main/java/com/example/mapdemo/CloudBasedMapStylingDemoActivity.java
@@ -40,13 +40,13 @@ protected void onCreate(Bundle savedInstanceState) {
// The underlying style the map will use has been set in the layout
// `cloud_styling_basic_demo` under the SupportMapFragment's `map:mapId` attribute.
- setContentView(R.layout.cloud_styling_basic_demo);
+ setContentView(com.example.common_ui.R.layout.cloud_styling_basic_demo);
SupportMapFragment mapFragment =
- (SupportMapFragment) getSupportFragmentManager().findFragmentById(R.id.map);
+ (SupportMapFragment) getSupportFragmentManager().findFragmentById(com.example.common_ui.R.id.map);
mapFragment.getMapAsync(this);
setUpButtonListeners();
- applyInsets(findViewById(R.id.map_container));
+ applyInsets(findViewById(com.example.common_ui.R.id.map_container));
}
@Override
@@ -56,13 +56,13 @@ public void onMapReady(GoogleMap map) {
}
private void setUpButtonListeners() {
- findViewById(R.id.styling_normal_mode).setOnClickListener(
+ findViewById(com.example.common_ui.R.id.styling_normal_mode).setOnClickListener(
v -> setMapType(GoogleMap.MAP_TYPE_NORMAL));
- findViewById(R.id.styling_satellite_mode).setOnClickListener(
+ findViewById(com.example.common_ui.R.id.styling_satellite_mode).setOnClickListener(
v -> setMapType(GoogleMap.MAP_TYPE_SATELLITE));
- findViewById(R.id.styling_hybrid_mode).setOnClickListener(
+ findViewById(com.example.common_ui.R.id.styling_hybrid_mode).setOnClickListener(
v -> setMapType(GoogleMap.MAP_TYPE_HYBRID));
- findViewById(R.id.styling_terrain_mode).setOnClickListener(
+ findViewById(com.example.common_ui.R.id.styling_terrain_mode).setOnClickListener(
v -> setMapType(GoogleMap.MAP_TYPE_TERRAIN));
}
diff --git a/ApiDemos/java/app/src/main/java/com/example/mapdemo/DataDrivenBoundariesActivity.java b/ApiDemos/project/java-app/src/main/java/com/example/mapdemo/DataDrivenBoundariesActivity.java
similarity index 91%
rename from ApiDemos/java/app/src/main/java/com/example/mapdemo/DataDrivenBoundariesActivity.java
rename to ApiDemos/project/java-app/src/main/java/com/example/mapdemo/DataDrivenBoundariesActivity.java
index 3a108363d..84cad55ff 100644
--- a/ApiDemos/java/app/src/main/java/com/example/mapdemo/DataDrivenBoundariesActivity.java
+++ b/ApiDemos/project/java-app/src/main/java/com/example/mapdemo/DataDrivenBoundariesActivity.java
@@ -20,19 +20,20 @@
import android.util.Log;
import android.view.MenuInflater;
import android.view.MenuItem;
-import android.view.View;
import android.widget.Toast;
import androidx.activity.EdgeToEdge;
import androidx.annotation.NonNull;
-import androidx.appcompat.app.AppCompatActivity;
import androidx.appcompat.widget.PopupMenu;
-import androidx.core.graphics.Insets;
-import androidx.core.view.ViewCompat;
-import androidx.core.view.WindowInsetsCompat;
+import androidx.fragment.app.FragmentManager;
+import androidx.fragment.app.FragmentTransaction;
+
+//noinspection UnusedImport
+import com.example.common_ui.R; // <-- Keep this import
import com.google.android.gms.maps.CameraUpdateFactory;
import com.google.android.gms.maps.GoogleMap;
+import com.google.android.gms.maps.GoogleMapOptions;
import com.google.android.gms.maps.OnMapReadyCallback;
import com.google.android.gms.maps.SupportMapFragment;
import com.google.android.gms.maps.model.Feature;
@@ -47,8 +48,8 @@
import com.google.android.material.button.MaterialButton;
import java.util.ArrayList;
-import java.util.List;
import java.util.HashSet;
+import java.util.List;
import java.util.Set;
/**
@@ -88,29 +89,48 @@ protected void onCreate(Bundle savedInstanceState) {
setContentView(R.layout.data_driven_boundaries_demo);
// [START_EXCLUDE silent]
- if (getString(R.string.map_id).equals("DEMO_MAP_ID")) {
- // This demo will not work if the map id is not set.
- Toast.makeText(this, "Map ID is not set. See README for instructions.", Toast.LENGTH_LONG).show();
+ // 1. Get the Application instance and cast it
+ ApiDemoApplication app = (ApiDemoApplication) getApplication();
+
+ // 2. Call the getMapId() method
+ String mapId = app.getMapId();
+
+ if (mapId == null) {
+ finish();
+ return;
}
// [END_EXCLUDE]
- SupportMapFragment mapFragment = (SupportMapFragment) getSupportFragmentManager().findFragmentById(R.id.map);
- if (mapFragment != null) {
- mapFragment.getMapAsync(this);
- }
+ // --- Programmatically Create and Add Map Fragment ---
+ // 1. Create GoogleMapOptions
+ GoogleMapOptions mapOptions = new GoogleMapOptions();
+
+ // 2. Set the mapId from the secrets.properties file
+ mapOptions.mapId(mapId);
+ // 3. Create SupportMapFragment instance with options
+ SupportMapFragment mapFragment = SupportMapFragment.newInstance(mapOptions);
+
+ // 4. Add the fragment to your FrameLayout container using FragmentManager
+ FragmentManager fragmentManager = getSupportFragmentManager();
+ FragmentTransaction fragmentTransaction = fragmentManager.beginTransaction();
+ fragmentTransaction.replace(R.id.map_fragment_container, mapFragment); // Use the container ID from XML
+ fragmentTransaction.commit();
+ // --- End Programmatic Creation ---
+
+ mapFragment.getMapAsync(this);
findViewById(R.id.button_hawaii).setOnClickListener(view -> centerMapOnLocation(HANA_HAWAII, 11f));
findViewById(R.id.button_us).setOnClickListener(view -> centerMapOnLocation(CENTER_US, 1f));
applyInsets(findViewById(R.id.map_container));
- // [START_EXCLUDE silent]
setupBoundarySelectorButton();
+
+ // [START_EXCLUDE silent]
applyInsets(findViewById(R.id.map_container));
// [END_EXCLUDE]
}
- // [START_EXCLUDE silent]
private void setupBoundarySelectorButton() {
MaterialButton stylingTypeButton = findViewById(R.id.button_feature_type);
stylingTypeButton.setOnClickListener(v -> {
diff --git a/ApiDemos/java/app/src/main/java/com/example/mapdemo/DataDrivenDatasetStylingActivity.java b/ApiDemos/project/java-app/src/main/java/com/example/mapdemo/DataDrivenDatasetStylingActivity.java
similarity index 91%
rename from ApiDemos/java/app/src/main/java/com/example/mapdemo/DataDrivenDatasetStylingActivity.java
rename to ApiDemos/project/java-app/src/main/java/com/example/mapdemo/DataDrivenDatasetStylingActivity.java
index fe7681fbc..9173181a4 100644
--- a/ApiDemos/java/app/src/main/java/com/example/mapdemo/DataDrivenDatasetStylingActivity.java
+++ b/ApiDemos/project/java-app/src/main/java/com/example/mapdemo/DataDrivenDatasetStylingActivity.java
@@ -16,20 +16,20 @@
import android.graphics.Color;
import android.os.Bundle;
import android.util.Log;
-import android.view.View;
import android.widget.Button;
import android.widget.Toast;
-import androidx.activity.EdgeToEdge;
import androidx.annotation.NonNull;
-import androidx.appcompat.app.AppCompatActivity;
import androidx.core.graphics.ColorUtils;
-import androidx.core.graphics.Insets;
-import androidx.core.view.ViewCompat;
-import androidx.core.view.WindowInsetsCompat;
+import androidx.fragment.app.FragmentManager;
+import androidx.fragment.app.FragmentTransaction;
+
+//noinspection UnusedImport
+import com.example.common_ui.R; // <-- Keep this import
import com.google.android.gms.maps.CameraUpdateFactory;
import com.google.android.gms.maps.GoogleMap;
+import com.google.android.gms.maps.GoogleMapOptions;
import com.google.android.gms.maps.OnMapReadyCallback;
import com.google.android.gms.maps.SupportMapFragment;
import com.google.android.gms.maps.model.DatasetFeature;
@@ -112,16 +112,36 @@ protected void onCreate(Bundle savedInstanceState) {
setContentView(R.layout.data_driven_styling_demo);
// [START_EXCLUDE silent]
- if (getString(R.string.map_id).equals("DEMO_MAP_ID")) {
- // This demo will not work if the map id is not set.
- Toast.makeText(this, "Map ID is not set. See README for instructions.", Toast.LENGTH_LONG).show();
+ // 1. Get the Application instance and cast it
+ ApiDemoApplication app = (ApiDemoApplication) getApplication();
+
+ // 2. Call the getMapId() method
+ String mapId = app.getMapId();
+
+ if (mapId == null) {
+ finish();
+ return;
}
// [END_EXCLUDE]
- SupportMapFragment mapFragment = (SupportMapFragment) getSupportFragmentManager().findFragmentById(R.id.map);
- if (mapFragment != null) {
- mapFragment.getMapAsync(this);
- }
+ // --- Programmatically Create and Add Map Fragment ---
+ // 1. Create GoogleMapOptions
+ GoogleMapOptions mapOptions = new GoogleMapOptions();
+
+ // 2. Set the mapId from the secrets.properties file
+ mapOptions.mapId(BuildConfig.MAP_ID); // Use the mapId retrieved earlier
+
+ // 3. Create SupportMapFragment instance with options
+ SupportMapFragment mapFragment = SupportMapFragment.newInstance(mapOptions);
+ mapFragment.getMapAsync(this);
+
+ // 4. Add the fragment to your FrameLayout container using FragmentManager
+ FragmentManager fragmentManager = getSupportFragmentManager();
+ FragmentTransaction fragmentTransaction = fragmentManager.beginTransaction();
+ fragmentTransaction.replace(R.id.map_fragment_container, mapFragment); // Use the container ID from XML
+ fragmentTransaction.commit();
+ // --- End Programmatic Creation ---
+
int[] buttonIds = {R.id.button_boulder, R.id.button_ny, R.id.button_kyoto};
for (int buttonId : buttonIds) {
diff --git a/ApiDemos/java/app/src/main/java/com/example/mapdemo/DemoDetails.java b/ApiDemos/project/java-app/src/main/java/com/example/mapdemo/DemoDetails.java
similarity index 100%
rename from ApiDemos/java/app/src/main/java/com/example/mapdemo/DemoDetails.java
rename to ApiDemos/project/java-app/src/main/java/com/example/mapdemo/DemoDetails.java
diff --git a/ApiDemos/project/java-app/src/main/java/com/example/mapdemo/DemoDetailsList.java b/ApiDemos/project/java-app/src/main/java/com/example/mapdemo/DemoDetailsList.java
new file mode 100755
index 000000000..cd8301ca5
--- /dev/null
+++ b/ApiDemos/project/java-app/src/main/java/com/example/mapdemo/DemoDetailsList.java
@@ -0,0 +1,162 @@
+// Copyright 2025 Google LLC
+//
+// Licensed under the Apache License, Version 2.0 (the "License");
+// you may not use this file except in compliance with the License.
+// You may obtain a copy of the License at
+//
+// http://www.apache.org/licenses/LICENSE-2.0
+//
+// Unless required by applicable law or agreed to in writing, software
+// distributed under the License is distributed on an "AS IS" BASIS,
+// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+// See the License for the specific language governing permissions and
+// limitations under the License.
+
+
+package com.example.mapdemo;
+
+/**
+ * A list of all the demos we have available.
+ */
+public final class DemoDetailsList {
+
+ /**
+ * This class should not be instantiated.
+ */
+ private DemoDetailsList() {
+ }
+
+ public static final DemoDetails[] DEMOS = {
+ new DemoDetails(com.example.common_ui.R.string.advanced_markers_demo_label,
+ com.example.common_ui.R.string.advanced_markers_demo_details,
+ AdvancedMarkersDemoActivity.class),
+ new DemoDetails(com.example.common_ui.R.string.basic_map_demo_label,
+ com.example.common_ui.R.string.basic_map_demo_description,
+ BasicMapDemoActivity.class),
+ new DemoDetails(
+ com.example.common_ui.R.string.background_color_customization_demo_label,
+ com.example.common_ui.R.string.background_color_customization_demo_description,
+ BackgroundColorCustomizationDemoActivity.class),
+ new DemoDetails(
+ com.example.common_ui.R.string.background_color_customization_programmatic_demo_label,
+ com.example.common_ui.R.string.background_color_customization_programmatic_demo_description,
+ BackgroundColorCustomizationProgrammaticDemoActivity.class),
+ new DemoDetails(com.example.common_ui.R.string.camera_demo_label,
+ com.example.common_ui.R.string.camera_demo_description,
+ CameraDemoActivity.class),
+ new DemoDetails(com.example.common_ui.R.string.camera_clamping_demo_label,
+ com.example.common_ui.R.string.camera_clamping_demo_description,
+ CameraClampingDemoActivity.class),
+ new DemoDetails(com.example.common_ui.R.string.cloud_styling_label,
+ com.example.common_ui.R.string.cloud_styling_description,
+ CloudBasedMapStylingDemoActivity.class),
+ new DemoDetails(com.example.common_ui.R.string.circle_demo_label,
+ com.example.common_ui.R.string.circle_demo_description,
+ CircleDemoActivity.class),
+ new DemoDetails(com.example.common_ui.R.string.data_driven_styling_label,
+ com.example.common_ui.R.string.data_driven_styling_description,
+ DataDrivenDatasetStylingActivity.class),
+ new DemoDetails(com.example.common_ui.R.string.data_driven_boundaries_label,
+ com.example.common_ui.R.string.data_driven_boundaries_description,
+ DataDrivenBoundariesActivity.class),
+ new DemoDetails(com.example.common_ui.R.string.events_demo_label,
+ com.example.common_ui.R.string.events_demo_description,
+ EventsDemoActivity.class),
+ new DemoDetails(com.example.common_ui.R.string.ground_overlay_demo_label,
+ com.example.common_ui.R.string.ground_overlay_demo_description,
+ GroundOverlayDemoActivity.class),
+ new DemoDetails(com.example.common_ui.R.string.indoor_demo_label,
+ com.example.common_ui.R.string.indoor_demo_description,
+ IndoorDemoActivity.class),
+ new DemoDetails(com.example.common_ui.R.string.layers_demo_label,
+ com.example.common_ui.R.string.layers_demo_description,
+ LayersDemoActivity.class),
+ new DemoDetails(com.example.common_ui.R.string.lite_demo_label,
+ com.example.common_ui.R.string.lite_demo_description,
+ LiteDemoActivity.class),
+ new DemoDetails(com.example.common_ui.R.string.lite_list_demo_label,
+ com.example.common_ui.R.string.lite_list_demo_description,
+ LiteListDemoActivity.class),
+ new DemoDetails(com.example.common_ui.R.string.location_source_demo_label,
+ com.example.common_ui.R.string.location_source_demo_description,
+ LocationSourceDemoActivity.class),
+ new DemoDetails(com.example.common_ui.R.string.map_in_pager_demo_label,
+ com.example.common_ui.R.string.map_in_pager_demo_description,
+ MapInPagerDemoActivity.class),
+ new DemoDetails(com.example.common_ui.R.string.map_color_scheme_demo_label,
+ com.example.common_ui.R.string.map_color_scheme_demo_description,
+ MapColorSchemeActivity.class),
+ new DemoDetails(com.example.common_ui.R.string.marker_demo_label,
+ com.example.common_ui.R.string.marker_demo_description,
+ MarkerDemoActivity.class),
+ new DemoDetails(com.example.common_ui.R.string.marker_close_info_window_on_retap_demo_label,
+ com.example.common_ui.R.string.marker_close_info_window_on_retap_demo_description,
+ MarkerCloseInfoWindowOnRetapDemoActivity.class),
+ new DemoDetails(com.example.common_ui.R.string.multi_map_demo_label,
+ com.example.common_ui.R.string.multi_map_demo_description,
+ MultiMapDemoActivity.class),
+ new DemoDetails(com.example.common_ui.R.string.my_location_demo_label,
+ com.example.common_ui.R.string.my_location_demo_description,
+ MyLocationDemoActivity.class),
+ new DemoDetails(com.example.common_ui.R.string.options_demo_label,
+ com.example.common_ui.R.string.options_demo_description,
+ OptionsDemoActivity.class),
+ new DemoDetails(com.example.common_ui.R.string.polygon_demo_label,
+ com.example.common_ui.R.string.polygon_demo_description,
+ PolygonDemoActivity.class),
+ new DemoDetails(com.example.common_ui.R.string.polyline_demo_label,
+ com.example.common_ui.R.string.polyline_demo_description,
+ PolylineDemoActivity.class),
+ new DemoDetails(com.example.common_ui.R.string.programmatic_demo_label,
+ com.example.common_ui.R.string.programmatic_demo_description,
+ ProgrammaticDemoActivity.class),
+ new DemoDetails(com.example.common_ui.R.string.raw_map_view_demo_label,
+ com.example.common_ui.R.string.raw_map_view_demo_description,
+ RawMapViewDemoActivity.class),
+ new DemoDetails(com.example.common_ui.R.string.retain_map_demo_label,
+ com.example.common_ui.R.string.retain_map_demo_description,
+ RetainMapDemoActivity.class),
+ new DemoDetails(com.example.common_ui.R.string.save_state_demo_label,
+ com.example.common_ui.R.string.save_state_demo_description,
+ SaveStateDemoActivity.class),
+ new DemoDetails(com.example.common_ui.R.string.snapshot_demo_label,
+ com.example.common_ui.R.string.snapshot_demo_description,
+ SnapshotDemoActivity.class),
+ new DemoDetails(com.example.common_ui.R.string.split_street_view_panorama_and_map_demo_label,
+ com.example.common_ui.R.string.split_street_view_panorama_and_map_demo_description,
+ SplitStreetViewPanoramaAndMapDemoActivity.class),
+ new DemoDetails(com.example.common_ui.R.string.street_view_panorama_basic_demo_label,
+ com.example.common_ui.R.string.street_view_panorama_basic_demo_description,
+ StreetViewPanoramaBasicDemoActivity.class),
+ new DemoDetails(com.example.common_ui.R.string.street_view_panorama_events_demo_label,
+ com.example.common_ui.R.string.street_view_panorama_events_demo_description,
+ StreetViewPanoramaEventsDemoActivity.class),
+ new DemoDetails(com.example.common_ui.R.string.street_view_panorama_navigation_demo_label,
+ com.example.common_ui.R.string.street_view_panorama_navigation_demo_description,
+ StreetViewPanoramaNavigationDemoActivity.class),
+ new DemoDetails(com.example.common_ui.R.string.street_view_panorama_options_demo_label,
+ com.example.common_ui.R.string.street_view_panorama_options_demo_description,
+ StreetViewPanoramaOptionsDemoActivity.class),
+ new DemoDetails(com.example.common_ui.R.string.street_view_panorama_view_demo_label,
+ com.example.common_ui.R.string.street_view_panorama_view_demo_description,
+ StreetViewPanoramaViewDemoActivity.class),
+ new DemoDetails(com.example.common_ui.R.string.styled_map_demo_label,
+ com.example.common_ui.R.string.styled_map_demo_description,
+ StyledMapDemoActivity.class),
+ new DemoDetails(com.example.common_ui.R.string.tags_demo_label,
+ com.example.common_ui.R.string.tags_demo_description,
+ TagsDemoActivity.class),
+ new DemoDetails(com.example.common_ui.R.string.tile_coordinate_demo_label,
+ com.example.common_ui.R.string.tile_coordinate_demo_description,
+ TileCoordinateDemoActivity.class),
+ new DemoDetails(com.example.common_ui.R.string.tile_overlay_demo_label,
+ com.example.common_ui.R.string.tile_overlay_demo_description,
+ TileOverlayDemoActivity.class),
+ new DemoDetails(com.example.common_ui.R.string.ui_settings_demo_label,
+ com.example.common_ui.R.string.ui_settings_demo_description,
+ UiSettingsDemoActivity.class),
+ new DemoDetails(com.example.common_ui.R.string.visible_region_demo_label,
+ com.example.common_ui.R.string.visible_region_demo_description,
+ VisibleRegionDemoActivity.class),
+ };
+}
diff --git a/ApiDemos/java/app/src/main/java/com/example/mapdemo/EventsDemoActivity.java b/ApiDemos/project/java-app/src/main/java/com/example/mapdemo/EventsDemoActivity.java
similarity index 87%
rename from ApiDemos/java/app/src/main/java/com/example/mapdemo/EventsDemoActivity.java
rename to ApiDemos/project/java-app/src/main/java/com/example/mapdemo/EventsDemoActivity.java
index 0f63f884a..6699be4ee 100644
--- a/ApiDemos/java/app/src/main/java/com/example/mapdemo/EventsDemoActivity.java
+++ b/ApiDemos/project/java-app/src/main/java/com/example/mapdemo/EventsDemoActivity.java
@@ -43,15 +43,15 @@ public class EventsDemoActivity extends SamplesBaseActivity
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
- setContentView(R.layout.events_demo);
+ setContentView(com.example.common_ui.R.layout.events_demo);
- tapTextView = findViewById(R.id.tap_text);
- cameraTextView = findViewById(R.id.camera_text);
+ tapTextView = findViewById(com.example.common_ui.R.id.tap_text);
+ cameraTextView = findViewById(com.example.common_ui.R.id.camera_text);
SupportMapFragment mapFragment =
- (SupportMapFragment) getSupportFragmentManager().findFragmentById(R.id.map);
+ (SupportMapFragment) getSupportFragmentManager().findFragmentById(com.example.common_ui.R.id.map);
mapFragment.getMapAsync(this);
- applyInsets(findViewById(R.id.map_container));
+ applyInsets(findViewById(com.example.common_ui.R.id.map_container));
}
@Override
diff --git a/ApiDemos/java/app/src/main/java/com/example/mapdemo/FeatureView.java b/ApiDemos/project/java-app/src/main/java/com/example/mapdemo/FeatureView.java
similarity index 85%
rename from ApiDemos/java/app/src/main/java/com/example/mapdemo/FeatureView.java
rename to ApiDemos/project/java-app/src/main/java/com/example/mapdemo/FeatureView.java
index d24e82e8e..fd5935296 100755
--- a/ApiDemos/java/app/src/main/java/com/example/mapdemo/FeatureView.java
+++ b/ApiDemos/project/java-app/src/main/java/com/example/mapdemo/FeatureView.java
@@ -33,7 +33,7 @@ public FeatureView(Context context) {
LayoutInflater layoutInflater =
(LayoutInflater) context.getSystemService(Context.LAYOUT_INFLATER_SERVICE);
- layoutInflater.inflate(R.layout.feature, this);
+ layoutInflater.inflate(com.example.common_ui.R.layout.feature, this);
}
/**
@@ -42,7 +42,7 @@ public FeatureView(Context context) {
* @param titleId the resource id of the title of the demo
*/
public synchronized void setTitleId(int titleId) {
- ((TextView) (findViewById(R.id.title))).setText(titleId);
+ ((TextView) (findViewById(com.example.common_ui.R.id.title))).setText(titleId);
}
/**
@@ -51,7 +51,7 @@ public synchronized void setTitleId(int titleId) {
* @param descriptionId the resource id of the description of the demo
*/
public synchronized void setDescriptionId(int descriptionId) {
- ((TextView) (findViewById(R.id.description))).setText(descriptionId);
+ ((TextView) (findViewById(com.example.common_ui.R.id.description))).setText(descriptionId);
}
}
diff --git a/ApiDemos/java/app/src/main/java/com/example/mapdemo/GroundOverlayDemoActivity.java b/ApiDemos/project/java-app/src/main/java/com/example/mapdemo/GroundOverlayDemoActivity.java
similarity index 88%
rename from ApiDemos/java/app/src/main/java/com/example/mapdemo/GroundOverlayDemoActivity.java
rename to ApiDemos/project/java-app/src/main/java/com/example/mapdemo/GroundOverlayDemoActivity.java
index f474aa90c..d99ee0e3f 100644
--- a/ApiDemos/java/app/src/main/java/com/example/mapdemo/GroundOverlayDemoActivity.java
+++ b/ApiDemos/project/java-app/src/main/java/com/example/mapdemo/GroundOverlayDemoActivity.java
@@ -63,16 +63,16 @@ public class GroundOverlayDemoActivity extends SamplesBaseActivity
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
- setContentView(R.layout.ground_overlay_demo);
+ setContentView(com.example.common_ui.R.layout.ground_overlay_demo);
- transparencyBar = findViewById(R.id.transparencySeekBar);
+ transparencyBar = findViewById(com.example.common_ui.R.id.transparencySeekBar);
transparencyBar.setMax(TRANSPARENCY_MAX);
transparencyBar.setProgress(0);
SupportMapFragment mapFragment =
- (SupportMapFragment) getSupportFragmentManager().findFragmentById(R.id.map);
+ (SupportMapFragment) getSupportFragmentManager().findFragmentById(com.example.common_ui.R.id.map);
mapFragment.getMapAsync(this);
- applyInsets(findViewById(R.id.map_container));
+ applyInsets(findViewById(com.example.common_ui.R.id.map_container));
}
@Override
@@ -83,8 +83,8 @@ public void onMapReady(GoogleMap map) {
map.moveCamera(CameraUpdateFactory.newLatLngZoom(NEWARK, 11));
images.clear();
- images.add(BitmapDescriptorFactory.fromResource(R.drawable.newark_nj_1922));
- images.add(BitmapDescriptorFactory.fromResource(R.drawable.newark_prudential_sunny));
+ images.add(BitmapDescriptorFactory.fromResource(com.example.common_ui.R.drawable.newark_nj_1922));
+ images.add(BitmapDescriptorFactory.fromResource(com.example.common_ui.R.drawable.newark_prudential_sunny));
// Add a small, rotated overlay that is clickable by default
// (set by the initial state of the checkbox.)
@@ -92,7 +92,7 @@ public void onMapReady(GoogleMap map) {
.image(images.get(1)).anchor(0, 1)
.position(NEAR_NEWARK, 4300f, 3025f)
.bearing(30)
- .clickable(((CheckBox) findViewById(R.id.toggleClickability)).isChecked()));
+ .clickable(((CheckBox) findViewById(com.example.common_ui.R.id.toggleClickability)).isChecked()));
// Add a large overlay at Newark on top of the smaller overlay.
groundOverlay = map.addGroundOverlay(new GroundOverlayOptions()
diff --git a/ApiDemos/java/app/src/main/java/com/example/mapdemo/IndoorDemoActivity.java b/ApiDemos/project/java-app/src/main/java/com/example/mapdemo/IndoorDemoActivity.java
similarity index 94%
rename from ApiDemos/java/app/src/main/java/com/example/mapdemo/IndoorDemoActivity.java
rename to ApiDemos/project/java-app/src/main/java/com/example/mapdemo/IndoorDemoActivity.java
index ae4de33a3..9640b843d 100755
--- a/ApiDemos/java/app/src/main/java/com/example/mapdemo/IndoorDemoActivity.java
+++ b/ApiDemos/project/java-app/src/main/java/com/example/mapdemo/IndoorDemoActivity.java
@@ -43,12 +43,12 @@ public class IndoorDemoActivity extends SamplesBaseActivity implements OnMapRead
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
- setContentView(R.layout.indoor_demo);
+ setContentView(com.example.common_ui.R.layout.indoor_demo);
SupportMapFragment mapFragment =
- (SupportMapFragment) getSupportFragmentManager().findFragmentById(R.id.map);
+ (SupportMapFragment) getSupportFragmentManager().findFragmentById(com.example.common_ui.R.id.map);
mapFragment.getMapAsync(this);
- applyInsets(findViewById(R.id.map_container));
+ applyInsets(findViewById(com.example.common_ui.R.id.map_container));
}
@Override
@@ -129,7 +129,7 @@ public void onHigherLevel(View view) {
}
private void setText(String message) {
- TextView text = findViewById(R.id.top_text);
+ TextView text = findViewById(com.example.common_ui.R.id.top_text);
text.setText(message);
}
}
diff --git a/ApiDemos/java/app/src/main/java/com/example/mapdemo/LayersDemoActivity.java b/ApiDemos/project/java-app/src/main/java/com/example/mapdemo/LayersDemoActivity.java
similarity index 85%
rename from ApiDemos/java/app/src/main/java/com/example/mapdemo/LayersDemoActivity.java
rename to ApiDemos/project/java-app/src/main/java/com/example/mapdemo/LayersDemoActivity.java
index 902640d3a..821e93362 100755
--- a/ApiDemos/java/app/src/main/java/com/example/mapdemo/LayersDemoActivity.java
+++ b/ApiDemos/project/java-app/src/main/java/com/example/mapdemo/LayersDemoActivity.java
@@ -73,24 +73,24 @@ public class LayersDemoActivity extends SamplesBaseActivity
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
- setContentView(R.layout.layers_demo);
+ setContentView(com.example.common_ui.R.layout.layers_demo);
- mSpinner = findViewById(R.id.layers_spinner);
+ mSpinner = findViewById(com.example.common_ui.R.id.layers_spinner);
ArrayAdapter adapter = ArrayAdapter.createFromResource(
- this, R.array.layers_array, android.R.layout.simple_spinner_item);
+ this, com.example.common_ui.R.array.layers_array, android.R.layout.simple_spinner_item);
adapter.setDropDownViewResource(android.R.layout.simple_spinner_dropdown_item);
mSpinner.setAdapter(adapter);
mSpinner.setOnItemSelectedListener(this);
- mTrafficCheckbox = findViewById(R.id.traffic);
- mMyLocationCheckbox = findViewById(R.id.my_location);
- mBuildingsCheckbox = findViewById(R.id.buildings);
- mIndoorCheckbox = findViewById(R.id.indoor);
+ mTrafficCheckbox = findViewById(com.example.common_ui.R.id.traffic);
+ mMyLocationCheckbox = findViewById(com.example.common_ui.R.id.my_location);
+ mBuildingsCheckbox = findViewById(com.example.common_ui.R.id.buildings);
+ mIndoorCheckbox = findViewById(com.example.common_ui.R.id.indoor);
SupportMapFragment mapFragment =
- (SupportMapFragment) getSupportFragmentManager().findFragmentById(R.id.map);
+ (SupportMapFragment) getSupportFragmentManager().findFragmentById(com.example.common_ui.R.id.map);
mapFragment.getMapAsync(this);
- applyInsets(findViewById(R.id.map_container));
+ applyInsets(findViewById(com.example.common_ui.R.id.map_container));
}
@Override
@@ -105,7 +105,7 @@ public void onMapReady(GoogleMap map) {
private boolean checkReady() {
if (mMap == null) {
- Toast.makeText(this, R.string.map_not_ready, Toast.LENGTH_SHORT).show();
+ Toast.makeText(this, com.example.common_ui.R.string.map_not_ready, Toast.LENGTH_SHORT).show();
return false;
}
return true;
@@ -225,17 +225,17 @@ private void updateMapType() {
}
String layerName = ((String) mSpinner.getSelectedItem());
- if (layerName.equals(getString(R.string.normal))) {
+ if (layerName.equals(getString(com.example.common_ui.R.string.normal))) {
mMap.setMapType(MAP_TYPE_NORMAL);
- } else if (layerName.equals(getString(R.string.hybrid))) {
+ } else if (layerName.equals(getString(com.example.common_ui.R.string.hybrid))) {
mMap.setMapType(MAP_TYPE_HYBRID);
- } else if (layerName.equals(getString(R.string.satellite))) {
+ } else if (layerName.equals(getString(com.example.common_ui.R.string.satellite))) {
mMap.setMapType(MAP_TYPE_SATELLITE);
- } else if (layerName.equals(getString(R.string.terrain))) {
+ } else if (layerName.equals(getString(com.example.common_ui.R.string.terrain))) {
mMap.setMapType(MAP_TYPE_TERRAIN);
- } else if (layerName.equals(getString(R.string.none_map))) {
+ } else if (layerName.equals(getString(com.example.common_ui.R.string.none_map))) {
mMap.setMapType(MAP_TYPE_NONE);
} else {
Log.i("LDA", "Error setting layer with name " + layerName);
diff --git a/ApiDemos/java/app/src/main/java/com/example/mapdemo/LiteDemoActivity.java b/ApiDemos/project/java-app/src/main/java/com/example/mapdemo/LiteDemoActivity.java
similarity index 97%
rename from ApiDemos/java/app/src/main/java/com/example/mapdemo/LiteDemoActivity.java
rename to ApiDemos/project/java-app/src/main/java/com/example/mapdemo/LiteDemoActivity.java
index f69ca43d2..2f1806db5 100755
--- a/ApiDemos/java/app/src/main/java/com/example/mapdemo/LiteDemoActivity.java
+++ b/ApiDemos/project/java-app/src/main/java/com/example/mapdemo/LiteDemoActivity.java
@@ -67,13 +67,13 @@ protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
// Set the layout
- setContentView(R.layout.lite_demo);
+ setContentView(com.example.common_ui.R.layout.lite_demo);
// Get the map and register for the ready callback
SupportMapFragment mapFragment =
- (SupportMapFragment) getSupportFragmentManager().findFragmentById(R.id.map);
+ (SupportMapFragment) getSupportFragmentManager().findFragmentById(com.example.common_ui.R.id.map);
new OnMapAndViewReadyListener(mapFragment, this);
- applyInsets(findViewById(R.id.map_container));
+ applyInsets(findViewById(com.example.common_ui.R.id.map_container));
}
/**
diff --git a/ApiDemos/java/app/src/main/java/com/example/mapdemo/LiteListDemoActivity.java b/ApiDemos/project/java-app/src/main/java/com/example/mapdemo/LiteListDemoActivity.java
similarity index 92%
rename from ApiDemos/java/app/src/main/java/com/example/mapdemo/LiteListDemoActivity.java
rename to ApiDemos/project/java-app/src/main/java/com/example/mapdemo/LiteListDemoActivity.java
index f67c23b5e..e2638c915 100755
--- a/ApiDemos/java/app/src/main/java/com/example/mapdemo/LiteListDemoActivity.java
+++ b/ApiDemos/project/java-app/src/main/java/com/example/mapdemo/LiteListDemoActivity.java
@@ -50,33 +50,33 @@ public class LiteListDemoActivity extends SamplesBaseActivity {
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
- setContentView(R.layout.lite_list_demo);
+ setContentView(com.example.common_ui.R.layout.lite_list_demo);
mGridLayoutManager = new GridLayoutManager(this, 2);
mLinearLayoutManager = new LinearLayoutManager(this);
// Set up the RecyclerView
- mRecyclerView = findViewById(R.id.recycler_view);
+ mRecyclerView = findViewById(com.example.common_ui.R.id.recycler_view);
mRecyclerView.setHasFixedSize(true);
mRecyclerView.setLayoutManager(mLinearLayoutManager);
mRecyclerView.setAdapter(new MapAdapter(LIST_LOCATIONS));
mRecyclerView.setRecyclerListener(mRecycleListener);
- applyInsets(findViewById(R.id.map_container));
+ applyInsets(findViewById(com.example.common_ui.R.id.map_container));
}
/** Create a menu to switch between Linear and Grid LayoutManager. */
@Override
public boolean onCreateOptionsMenu(Menu menu) {
- getMenuInflater().inflate(R.menu.lite_list_menu, menu);
+ getMenuInflater().inflate(com.example.common_ui.R.menu.lite_list_menu, menu);
return true;
}
@Override
public boolean onOptionsItemSelected(MenuItem item) {
int id = item.getItemId();
- if (id == R.id.layout_linear) {
+ if (id == com.example.common_ui.R.id.layout_linear) {
mRecyclerView.setLayoutManager(mLinearLayoutManager);
- } else if (id == R.id.layout_grid) {
+ } else if (id == com.example.common_ui.R.id.layout_grid) {
mRecyclerView.setLayoutManager(mGridLayoutManager);
}
return true;
@@ -90,7 +90,7 @@ public boolean onOptionsItemSelected(MenuItem item) {
*/
private class MapAdapter extends RecyclerView.Adapter {
- private NamedLocation[] namedLocations;
+ private final NamedLocation[] namedLocations;
private MapAdapter(NamedLocation[] locations) {
super();
@@ -100,7 +100,7 @@ private MapAdapter(NamedLocation[] locations) {
@Override
public ViewHolder onCreateViewHolder(ViewGroup parent, int viewType) {
return new ViewHolder(LayoutInflater.from(parent.getContext())
- .inflate(R.layout.lite_list_demo_row, parent, false));
+ .inflate(com.example.common_ui.R.layout.lite_list_demo_row, parent, false));
}
/**
@@ -139,8 +139,8 @@ class ViewHolder extends RecyclerView.ViewHolder implements OnMapReadyCallback {
private ViewHolder(View itemView) {
super(itemView);
layout = itemView;
- mapView = layout.findViewById(R.id.lite_listrow_map);
- title = layout.findViewById(R.id.lite_listrow_text);
+ mapView = layout.findViewById(com.example.common_ui.R.id.lite_listrow_map);
+ title = layout.findViewById(com.example.common_ui.R.id.lite_listrow_text);
if (mapView != null) {
// Initialise the MapView
mapView.onCreate(null);
@@ -194,7 +194,7 @@ private void bindView(int pos) {
* Sets the map type to {@link com.google.android.gms.maps.GoogleMap#MAP_TYPE_NONE} and clears
* the map.
*/
- private RecyclerView.RecyclerListener mRecycleListener = new RecyclerView.RecyclerListener() {
+ private final RecyclerView.RecyclerListener mRecycleListener = new RecyclerView.RecyclerListener() {
@Override
public void onViewRecycled(RecyclerView.ViewHolder holder) {
diff --git a/ApiDemos/java/app/src/main/java/com/example/mapdemo/LocationSourceDemoActivity.java b/ApiDemos/project/java-app/src/main/java/com/example/mapdemo/LocationSourceDemoActivity.java
similarity index 95%
rename from ApiDemos/java/app/src/main/java/com/example/mapdemo/LocationSourceDemoActivity.java
rename to ApiDemos/project/java-app/src/main/java/com/example/mapdemo/LocationSourceDemoActivity.java
index d312ad92c..d3e3fd53b 100644
--- a/ApiDemos/java/app/src/main/java/com/example/mapdemo/LocationSourceDemoActivity.java
+++ b/ApiDemos/project/java-app/src/main/java/com/example/mapdemo/LocationSourceDemoActivity.java
@@ -88,14 +88,14 @@ public void onResume() {
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
- setContentView(R.layout.basic_demo);
+ setContentView(com.example.common_ui.R.layout.basic_demo);
mLocationSource = new LongPressLocationSource();
SupportMapFragment mapFragment =
- (SupportMapFragment) getSupportFragmentManager().findFragmentById(R.id.map);
+ (SupportMapFragment) getSupportFragmentManager().findFragmentById(com.example.common_ui.R.id.map);
mapFragment.getMapAsync(this);
- applyInsets(findViewById(R.id.map_container));
+ applyInsets(findViewById(com.example.common_ui.R.id.map_container));
}
@Override
diff --git a/ApiDemos/java/app/src/main/java/com/example/mapdemo/MainActivity.java b/ApiDemos/project/java-app/src/main/java/com/example/mapdemo/MainActivity.java
similarity index 90%
rename from ApiDemos/java/app/src/main/java/com/example/mapdemo/MainActivity.java
rename to ApiDemos/project/java-app/src/main/java/com/example/mapdemo/MainActivity.java
index 67e6f7575..43f950d2a 100644
--- a/ApiDemos/java/app/src/main/java/com/example/mapdemo/MainActivity.java
+++ b/ApiDemos/project/java-app/src/main/java/com/example/mapdemo/MainActivity.java
@@ -43,7 +43,7 @@ private static class CustomArrayAdapter extends ArrayAdapter {
/** @param demos An array containing the details of the demos to be displayed. */
public CustomArrayAdapter(Context context, DemoDetails[] demos) {
- super(context, R.layout.feature, R.id.title, demos);
+ super(context, com.example.common_ui.R.layout.feature, com.example.common_ui.R.id.title, demos);
}
@NonNull
@@ -73,11 +73,11 @@ public View getView(int position, View convertView, @NonNull ViewGroup parent) {
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
- setContentView(R.layout.main);
+ setContentView(com.example.common_ui.R.layout.main);
ListAdapter adapter = new CustomArrayAdapter(this, DemoDetailsList.DEMOS);
- ListView demoListView = findViewById(R.id.list);
+ ListView demoListView = findViewById(com.example.common_ui.R.id.list);
if (demoListView != null) {
demoListView.setAdapter(adapter);
demoListView.setOnItemClickListener(
@@ -86,6 +86,6 @@ protected void onCreate(Bundle savedInstanceState) {
startActivity(new Intent(view.getContext(), demo.activityClass));
});
}
- applyInsets(findViewById(R.id.map_container));
+ applyInsets(findViewById(com.example.common_ui.R.id.map_container));
}
}
diff --git a/ApiDemos/java/app/src/main/java/com/example/mapdemo/MapColorSchemeActivity.java b/ApiDemos/project/java-app/src/main/java/com/example/mapdemo/MapColorSchemeActivity.java
similarity index 79%
rename from ApiDemos/java/app/src/main/java/com/example/mapdemo/MapColorSchemeActivity.java
rename to ApiDemos/project/java-app/src/main/java/com/example/mapdemo/MapColorSchemeActivity.java
index 3068cc25e..414995f2c 100755
--- a/ApiDemos/java/app/src/main/java/com/example/mapdemo/MapColorSchemeActivity.java
+++ b/ApiDemos/project/java-app/src/main/java/com/example/mapdemo/MapColorSchemeActivity.java
@@ -36,15 +36,15 @@ public class MapColorSchemeActivity extends SamplesBaseActivity implements OnMap
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
- setContentView(R.layout.map_color_scheme_demo);
- SupportMapFragment mapFragment = (SupportMapFragment) getSupportFragmentManager().findFragmentById(R.id.map);
+ setContentView(com.example.common_ui.R.layout.map_color_scheme_demo);
+ SupportMapFragment mapFragment = (SupportMapFragment) getSupportFragmentManager().findFragmentById(com.example.common_ui.R.id.map);
if (mapFragment != null) {
mapFragment.getMapAsync(this);
}
- buttonLight = findViewById(R.id.map_color_light_mode);
- buttonDark = findViewById(R.id.map_color_dark_mode);
- buttonFollowSystem = findViewById(R.id.map_color_follow_system_mode);
- applyInsets(findViewById(R.id.map_container));
+ buttonLight = findViewById(com.example.common_ui.R.id.map_color_light_mode);
+ buttonDark = findViewById(com.example.common_ui.R.id.map_color_dark_mode);
+ buttonFollowSystem = findViewById(com.example.common_ui.R.id.map_color_follow_system_mode);
+ applyInsets(findViewById(com.example.common_ui.R.id.map_container));
}
@Override
diff --git a/ApiDemos/java/app/src/main/java/com/example/mapdemo/MapInPagerDemoActivity.java b/ApiDemos/project/java-app/src/main/java/com/example/mapdemo/MapInPagerDemoActivity.java
similarity index 89%
rename from ApiDemos/java/app/src/main/java/com/example/mapdemo/MapInPagerDemoActivity.java
rename to ApiDemos/project/java-app/src/main/java/com/example/mapdemo/MapInPagerDemoActivity.java
index 8102778e6..d772eda89 100755
--- a/ApiDemos/java/app/src/main/java/com/example/mapdemo/MapInPagerDemoActivity.java
+++ b/ApiDemos/project/java-app/src/main/java/com/example/mapdemo/MapInPagerDemoActivity.java
@@ -37,17 +37,17 @@ public class MapInPagerDemoActivity extends SamplesBaseActivity {
@Override
public void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
- setContentView(R.layout.map_in_pager_demo);
+ setContentView(com.example.common_ui.R.layout.map_in_pager_demo);
MyAdapter adapter = new MyAdapter(getSupportFragmentManager());
- ViewPager pager = findViewById(R.id.pager);
+ ViewPager pager = findViewById(com.example.common_ui.R.id.pager);
pager.setAdapter(adapter);
// This is required to avoid a black flash when the map is loaded. The flash is due
// to the use of a SurfaceView as the underlying view of the map.
pager.requestTransparentRegion(pager);
- applyInsets(findViewById(R.id.map_container));
+ applyInsets(findViewById(com.example.common_ui.R.id.map_container));
}
/** A simple fragment that displays a TextView. */
@@ -55,7 +55,7 @@ public static class TextFragment extends Fragment {
@Override
public View onCreateView(LayoutInflater inflater, ViewGroup container, Bundle bundle) {
- return inflater.inflate(R.layout.text_fragment, container, false);
+ return inflater.inflate(com.example.common_ui.R.layout.text_fragment, container, false);
}
}
diff --git a/ApiDemos/java/app/src/main/java/com/example/mapdemo/MarkerCloseInfoWindowOnRetapDemoActivity.java b/ApiDemos/project/java-app/src/main/java/com/example/mapdemo/MarkerCloseInfoWindowOnRetapDemoActivity.java
similarity index 96%
rename from ApiDemos/java/app/src/main/java/com/example/mapdemo/MarkerCloseInfoWindowOnRetapDemoActivity.java
rename to ApiDemos/project/java-app/src/main/java/com/example/mapdemo/MarkerCloseInfoWindowOnRetapDemoActivity.java
index 05891481b..f069eaa1c 100644
--- a/ApiDemos/java/app/src/main/java/com/example/mapdemo/MarkerCloseInfoWindowOnRetapDemoActivity.java
+++ b/ApiDemos/project/java-app/src/main/java/com/example/mapdemo/MarkerCloseInfoWindowOnRetapDemoActivity.java
@@ -53,13 +53,13 @@ public class MarkerCloseInfoWindowOnRetapDemoActivity extends SamplesBaseActivit
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
- setContentView(R.layout.marker_close_info_window_on_retap_demo);
+ setContentView(com.example.common_ui.R.layout.marker_close_info_window_on_retap_demo);
SupportMapFragment mapFragment =
- (SupportMapFragment) getSupportFragmentManager().findFragmentById(R.id.map);
+ (SupportMapFragment) getSupportFragmentManager().findFragmentById(com.example.common_ui.R.id.map);
new OnMapAndViewReadyListener(mapFragment, this);
- applyInsets(findViewById(R.id.map_container));
+ applyInsets(findViewById(com.example.common_ui.R.id.map_container));
}
@Override
diff --git a/ApiDemos/java/app/src/main/java/com/example/mapdemo/MarkerDemoActivity.java b/ApiDemos/project/java-app/src/main/java/com/example/mapdemo/MarkerDemoActivity.java
similarity index 97%
rename from ApiDemos/java/app/src/main/java/com/example/mapdemo/MarkerDemoActivity.java
rename to ApiDemos/project/java-app/src/main/java/com/example/mapdemo/MarkerDemoActivity.java
index 2383e339c..03437e394 100644
--- a/ApiDemos/java/app/src/main/java/com/example/mapdemo/MarkerDemoActivity.java
+++ b/ApiDemos/project/java-app/src/main/java/com/example/mapdemo/MarkerDemoActivity.java
@@ -38,9 +38,10 @@
import android.os.Handler;
import android.os.SystemClock;
+import com.example.common_ui.R;
+
import androidx.annotation.ColorInt;
import androidx.annotation.DrawableRes;
-import androidx.appcompat.app.AppCompatActivity;
import androidx.core.content.res.ResourcesCompat;
import androidx.core.graphics.drawable.DrawableCompat;
import android.text.SpannableString;
@@ -150,7 +151,7 @@ private void render(Marker marker, View view) {
((ImageView) view.findViewById(R.id.badge)).setImageResource(badge);
String title = marker.getTitle();
- TextView titleUi = ((TextView) view.findViewById(R.id.title));
+ TextView titleUi = view.findViewById(R.id.title);
if (title != null) {
// Spannable string allows us to edit the formatting of the text.
SpannableString titleText = new SpannableString(title);
@@ -161,7 +162,7 @@ private void render(Marker marker, View view) {
}
String snippet = marker.getSnippet();
- TextView snippetUi = ((TextView) view.findViewById(R.id.snippet));
+ TextView snippetUi = view.findViewById(R.id.snippet);
if (snippet != null && snippet.length() > 12) {
SpannableString snippetText = new SpannableString(snippet);
snippetText.setSpan(new ForegroundColorSpan(Color.MAGENTA), 0, 10, 0);
@@ -214,15 +215,15 @@ protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.marker_demo);
- mTopText = (TextView) findViewById(R.id.top_text);
+ mTopText = findViewById(R.id.top_text);
- mRotationBar = (SeekBar) findViewById(R.id.rotationSeekBar);
+ mRotationBar = findViewById(R.id.rotationSeekBar);
mRotationBar.setMax(360);
mRotationBar.setOnSeekBarChangeListener(this);
- mFlatBox = (CheckBox) findViewById(R.id.flat);
+ mFlatBox = findViewById(R.id.flat);
- mOptions = (RadioGroup) findViewById(R.id.custom_info_window_options);
+ mOptions = findViewById(R.id.custom_info_window_options);
mOptions.setOnCheckedChangeListener(new OnCheckedChangeListener() {
@Override
public void onCheckedChanged(RadioGroup group, int checkedId) {
diff --git a/ApiDemos/java/app/src/main/java/com/example/mapdemo/MultiMapDemoActivity.java b/ApiDemos/project/java-app/src/main/java/com/example/mapdemo/MultiMapDemoActivity.java
similarity index 86%
rename from ApiDemos/java/app/src/main/java/com/example/mapdemo/MultiMapDemoActivity.java
rename to ApiDemos/project/java-app/src/main/java/com/example/mapdemo/MultiMapDemoActivity.java
index 3973ac778..f0403251f 100644
--- a/ApiDemos/java/app/src/main/java/com/example/mapdemo/MultiMapDemoActivity.java
+++ b/ApiDemos/project/java-app/src/main/java/com/example/mapdemo/MultiMapDemoActivity.java
@@ -27,7 +27,7 @@ public class MultiMapDemoActivity extends SamplesBaseActivity {
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
- setContentView(R.layout.multimap_demo);
- applyInsets(findViewById(R.id.map_container));
+ setContentView(com.example.common_ui.R.layout.multimap_demo);
+ applyInsets(findViewById(com.example.common_ui.R.id.map_container));
}
}
diff --git a/ApiDemos/java/app/src/main/java/com/example/mapdemo/MyLocationDemoActivity.java b/ApiDemos/project/java-app/src/main/java/com/example/mapdemo/MyLocationDemoActivity.java
similarity index 96%
rename from ApiDemos/java/app/src/main/java/com/example/mapdemo/MyLocationDemoActivity.java
rename to ApiDemos/project/java-app/src/main/java/com/example/mapdemo/MyLocationDemoActivity.java
index d5cfbd2cd..7f9008f8a 100755
--- a/ApiDemos/java/app/src/main/java/com/example/mapdemo/MyLocationDemoActivity.java
+++ b/ApiDemos/project/java-app/src/main/java/com/example/mapdemo/MyLocationDemoActivity.java
@@ -67,12 +67,12 @@ public class MyLocationDemoActivity extends SamplesBaseActivity
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
- setContentView(R.layout.my_location_demo);
+ setContentView(com.example.common_ui.R.layout.my_location_demo);
SupportMapFragment mapFragment =
- (SupportMapFragment) getSupportFragmentManager().findFragmentById(R.id.map);
+ (SupportMapFragment) getSupportFragmentManager().findFragmentById(com.example.common_ui.R.id.map);
mapFragment.getMapAsync(this);
- applyInsets(findViewById(R.id.map_container));
+ applyInsets(findViewById(com.example.common_ui.R.id.map_container));
}
@Override
diff --git a/ApiDemos/java/app/src/main/java/com/example/mapdemo/OnMapAndViewReadyListener.java b/ApiDemos/project/java-app/src/main/java/com/example/mapdemo/OnMapAndViewReadyListener.java
similarity index 100%
rename from ApiDemos/java/app/src/main/java/com/example/mapdemo/OnMapAndViewReadyListener.java
rename to ApiDemos/project/java-app/src/main/java/com/example/mapdemo/OnMapAndViewReadyListener.java
diff --git a/ApiDemos/java/app/src/main/java/com/example/mapdemo/OptionsDemoActivity.java b/ApiDemos/project/java-app/src/main/java/com/example/mapdemo/OptionsDemoActivity.java
similarity index 86%
rename from ApiDemos/java/app/src/main/java/com/example/mapdemo/OptionsDemoActivity.java
rename to ApiDemos/project/java-app/src/main/java/com/example/mapdemo/OptionsDemoActivity.java
index 2b6b52367..9ad50b638 100644
--- a/ApiDemos/java/app/src/main/java/com/example/mapdemo/OptionsDemoActivity.java
+++ b/ApiDemos/project/java-app/src/main/java/com/example/mapdemo/OptionsDemoActivity.java
@@ -27,7 +27,7 @@ public final class OptionsDemoActivity extends SamplesBaseActivity {
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
- setContentView(R.layout.options_demo);
- applyInsets(findViewById(R.id.map_container));
+ setContentView(com.example.common_ui.R.layout.options_demo);
+ applyInsets(findViewById(com.example.common_ui.R.id.map_container));
}
}
diff --git a/ApiDemos/java/app/src/main/java/com/example/mapdemo/PermissionUtils.java b/ApiDemos/project/java-app/src/main/java/com/example/mapdemo/PermissionUtils.java
similarity index 95%
rename from ApiDemos/java/app/src/main/java/com/example/mapdemo/PermissionUtils.java
rename to ApiDemos/project/java-app/src/main/java/com/example/mapdemo/PermissionUtils.java
index 25c5d1aff..a7572f1ff 100755
--- a/ApiDemos/java/app/src/main/java/com/example/mapdemo/PermissionUtils.java
+++ b/ApiDemos/project/java-app/src/main/java/com/example/mapdemo/PermissionUtils.java
@@ -97,7 +97,7 @@ public Dialog onCreateDialog(Bundle savedInstanceState) {
finishActivity = getArguments().getBoolean(ARGUMENT_FINISH_ACTIVITY);
return new AlertDialog.Builder(getActivity())
- .setMessage(R.string.location_permission_denied)
+ .setMessage(com.example.common_ui.R.string.location_permission_denied)
.setPositiveButton(android.R.string.ok, null)
.create();
}
@@ -106,7 +106,7 @@ public Dialog onCreateDialog(Bundle savedInstanceState) {
public void onDismiss(DialogInterface dialog) {
super.onDismiss(dialog);
if (finishActivity) {
- Toast.makeText(getActivity(), R.string.permission_required_toast,
+ Toast.makeText(getActivity(), com.example.common_ui.R.string.permission_required_toast,
Toast.LENGTH_SHORT).show();
getActivity().finish();
}
@@ -155,7 +155,7 @@ public Dialog onCreateDialog(Bundle savedInstanceState) {
finishActivity = arguments.getBoolean(ARGUMENT_FINISH_ACTIVITY);
return new AlertDialog.Builder(getActivity())
- .setMessage(R.string.permission_rationale_location)
+ .setMessage(com.example.common_ui.R.string.permission_rationale_location)
.setPositiveButton(android.R.string.ok, new DialogInterface.OnClickListener() {
@Override
public void onClick(DialogInterface dialog, int which) {
@@ -176,7 +176,7 @@ public void onDismiss(DialogInterface dialog) {
super.onDismiss(dialog);
if (finishActivity) {
Toast.makeText(getActivity(),
- R.string.permission_required_toast,
+ com.example.common_ui.R.string.permission_required_toast,
Toast.LENGTH_SHORT)
.show();
getActivity().finish();
diff --git a/ApiDemos/java/app/src/main/java/com/example/mapdemo/PolygonDemoActivity.java b/ApiDemos/project/java-app/src/main/java/com/example/mapdemo/PolygonDemoActivity.java
similarity index 83%
rename from ApiDemos/java/app/src/main/java/com/example/mapdemo/PolygonDemoActivity.java
rename to ApiDemos/project/java-app/src/main/java/com/example/mapdemo/PolygonDemoActivity.java
index aabbd3b52..95bda098a 100644
--- a/ApiDemos/java/app/src/main/java/com/example/mapdemo/PolygonDemoActivity.java
+++ b/ApiDemos/project/java-app/src/main/java/com/example/mapdemo/PolygonDemoActivity.java
@@ -79,59 +79,59 @@ public class PolygonDemoActivity extends SamplesBaseActivity
// string resource IDs as identifiers.
private static final int[] JOINT_TYPE_NAME_RESOURCE_IDS = {
- R.string.joint_type_default, // Default
- R.string.joint_type_bevel,
- R.string.joint_type_round,
+ com.example.common_ui.R.string.joint_type_default, // Default
+ com.example.common_ui.R.string.joint_type_bevel,
+ com.example.common_ui.R.string.joint_type_round,
};
private static final int[] PATTERN_TYPE_NAME_RESOURCE_IDS = {
- R.string.pattern_solid, // Default
- R.string.pattern_dashed,
- R.string.pattern_dotted,
- R.string.pattern_mixed,
+ com.example.common_ui.R.string.pattern_solid, // Default
+ com.example.common_ui.R.string.pattern_dashed,
+ com.example.common_ui.R.string.pattern_dotted,
+ com.example.common_ui.R.string.pattern_mixed,
};
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
- setContentView(R.layout.polygon_demo);
+ setContentView(com.example.common_ui.R.layout.polygon_demo);
- fillHueBar = findViewById(R.id.fillHueSeekBar);
+ fillHueBar = findViewById(com.example.common_ui.R.id.fillHueSeekBar);
fillHueBar.setMax(MAX_HUE_DEGREES);
fillHueBar.setProgress(MAX_HUE_DEGREES / 2);
- fillAlphaBar = findViewById(R.id.fillAlphaSeekBar);
+ fillAlphaBar = findViewById(com.example.common_ui.R.id.fillAlphaSeekBar);
fillAlphaBar.setMax(MAX_ALPHA);
fillAlphaBar.setProgress(MAX_ALPHA / 2);
- strokeWidthBar = findViewById(R.id.strokeWidthSeekBar);
+ strokeWidthBar = findViewById(com.example.common_ui.R.id.strokeWidthSeekBar);
strokeWidthBar.setMax(MAX_WIDTH_PX);
strokeWidthBar.setProgress(MAX_WIDTH_PX / 3);
- strokeHueBar = findViewById(R.id.strokeHueSeekBar);
+ strokeHueBar = findViewById(com.example.common_ui.R.id.strokeHueSeekBar);
strokeHueBar.setMax(MAX_HUE_DEGREES);
strokeHueBar.setProgress(0);
- strokeAlphaBar = findViewById(R.id.strokeAlphaSeekBar);
+ strokeAlphaBar = findViewById(com.example.common_ui.R.id.strokeAlphaSeekBar);
strokeAlphaBar.setMax(MAX_ALPHA);
strokeAlphaBar.setProgress(MAX_ALPHA);
- strokeJointTypeSpinner = findViewById(R.id.strokeJointTypeSpinner);
+ strokeJointTypeSpinner = findViewById(com.example.common_ui.R.id.strokeJointTypeSpinner);
strokeJointTypeSpinner.setAdapter(new ArrayAdapter<>(
this, android.R.layout.simple_spinner_item,
getResourceStrings(JOINT_TYPE_NAME_RESOURCE_IDS)));
- strokePatternSpinner = findViewById(R.id.strokePatternSpinner);
+ strokePatternSpinner = findViewById(com.example.common_ui.R.id.strokePatternSpinner);
strokePatternSpinner.setAdapter(new ArrayAdapter<>(
this, android.R.layout.simple_spinner_item,
getResourceStrings(PATTERN_TYPE_NAME_RESOURCE_IDS)));
- clickabilityCheckbox = findViewById(R.id.toggleClickability);
+ clickabilityCheckbox = findViewById(com.example.common_ui.R.id.toggleClickability);
SupportMapFragment mapFragment =
- (SupportMapFragment) getSupportFragmentManager().findFragmentById(R.id.map);
+ (SupportMapFragment) getSupportFragmentManager().findFragmentById(com.example.common_ui.R.id.map);
mapFragment.getMapAsync(this);
- applyInsets(findViewById(R.id.map_container));
+ applyInsets(findViewById(com.example.common_ui.R.id.map_container));
}
// [START_EXCLUDE silent]
@@ -147,7 +147,7 @@ private String[] getResourceStrings(int[] resourceIds) {
@Override
public void onMapReady(GoogleMap map) {
// Override the default content description on the view, for accessibility mode.
- map.setContentDescription(getString(R.string.polygon_demo_description));
+ map.setContentDescription(getString(com.example.common_ui.R.string.polygon_demo_description));
int fillColorArgb = Color.HSVToColor(
fillAlphaBar.getProgress(), new float[]{fillHueBar.getProgress(), 1, 1});
@@ -204,11 +204,11 @@ private List createRectangle(LatLng center, double halfWidth, double hal
private int getSelectedJointType(int pos) {
int id = JOINT_TYPE_NAME_RESOURCE_IDS[pos];
- if (id == R.string.joint_type_bevel) {
+ if (id == com.example.common_ui.R.string.joint_type_bevel) {
return JointType.BEVEL;
- } else if (id == R.string.joint_type_round) {
+ } else if (id == com.example.common_ui.R.string.joint_type_round) {
return JointType.ROUND;
- } else if (id == R.string.joint_type_default) {
+ } else if (id == com.example.common_ui.R.string.joint_type_default) {
return JointType.DEFAULT;
}
return 0;
@@ -216,13 +216,13 @@ private int getSelectedJointType(int pos) {
private List getSelectedPattern(int pos) {
int id = PATTERN_TYPE_NAME_RESOURCE_IDS[pos];
- if (id == R.string.pattern_solid) {
+ if (id == com.example.common_ui.R.string.pattern_solid) {
return null;
- } else if (id == R.string.pattern_dotted) {
+ } else if (id == com.example.common_ui.R.string.pattern_dotted) {
return PATTERN_DOTTED;
- } else if (id == R.string.pattern_dashed) {
+ } else if (id == com.example.common_ui.R.string.pattern_dashed) {
return PATTERN_DASHED;
- } else if (id == R.string.pattern_mixed) {
+ } else if (id == com.example.common_ui.R.string.pattern_mixed) {
return PATTERN_MIXED;
} else {
return null;
@@ -232,9 +232,9 @@ private List getSelectedPattern(int pos) {
@Override
public void onItemSelected(AdapterView> parent, View view, int pos, long id) {
int parentId = parent.getId();
- if (parentId == R.id.strokeJointTypeSpinner) {
+ if (parentId == com.example.common_ui.R.id.strokeJointTypeSpinner) {
mutablePolygon.setStrokeJointType(getSelectedJointType(pos));
- } else if (parentId == R.id.strokePatternSpinner) {
+ } else if (parentId == com.example.common_ui.R.id.strokePatternSpinner) {
mutablePolygon.setStrokePattern(getSelectedPattern(pos));
}
}
diff --git a/ApiDemos/java/app/src/main/java/com/example/mapdemo/PolylineDemoActivity.java b/ApiDemos/project/java-app/src/main/java/com/example/mapdemo/PolylineDemoActivity.java
similarity index 79%
rename from ApiDemos/java/app/src/main/java/com/example/mapdemo/PolylineDemoActivity.java
rename to ApiDemos/project/java-app/src/main/java/com/example/mapdemo/PolylineDemoActivity.java
index ac9c31334..cda119abf 100644
--- a/ApiDemos/java/app/src/main/java/com/example/mapdemo/PolylineDemoActivity.java
+++ b/ApiDemos/project/java-app/src/main/java/com/example/mapdemo/PolylineDemoActivity.java
@@ -99,69 +99,69 @@ public class PolylineDemoActivity extends SamplesBaseActivity
// string resource IDs as identifiers.
private static final int[] CAP_TYPE_NAME_RESOURCE_IDS = {
- R.string.cap_butt, // Default
- R.string.cap_round,
- R.string.cap_square,
- R.string.cap_image,
+ com.example.common_ui.R.string.cap_butt, // Default
+ com.example.common_ui.R.string.cap_round,
+ com.example.common_ui.R.string.cap_square,
+ com.example.common_ui.R.string.cap_image,
};
private static final int[] JOINT_TYPE_NAME_RESOURCE_IDS = {
- R.string.joint_type_default, // Default
- R.string.joint_type_bevel,
- R.string.joint_type_round,
+ com.example.common_ui.R.string.joint_type_default, // Default
+ com.example.common_ui.R.string.joint_type_bevel,
+ com.example.common_ui.R.string.joint_type_round,
};
private static final int[] PATTERN_TYPE_NAME_RESOURCE_IDS = {
- R.string.pattern_solid, // Default
- R.string.pattern_dashed,
- R.string.pattern_dotted,
- R.string.pattern_mixed,
+ com.example.common_ui.R.string.pattern_solid, // Default
+ com.example.common_ui.R.string.pattern_dashed,
+ com.example.common_ui.R.string.pattern_dotted,
+ com.example.common_ui.R.string.pattern_mixed,
};
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
- setContentView(R.layout.polyline_demo);
+ setContentView(com.example.common_ui.R.layout.polyline_demo);
- hueBar = findViewById(R.id.hueSeekBar);
+ hueBar = findViewById(com.example.common_ui.R.id.hueSeekBar);
hueBar.setMax(MAX_HUE_DEGREES);
hueBar.setProgress(0);
- alphaBar = findViewById(R.id.alphaSeekBar);
+ alphaBar = findViewById(com.example.common_ui.R.id.alphaSeekBar);
alphaBar.setMax(MAX_ALPHA);
alphaBar.setProgress(MAX_ALPHA);
- widthBar = findViewById(R.id.widthSeekBar);
+ widthBar = findViewById(com.example.common_ui.R.id.widthSeekBar);
widthBar.setMax(MAX_WIDTH_PX);
widthBar.setProgress(MAX_WIDTH_PX / 2);
- startCapSpinner = findViewById(R.id.startCapSpinner);
+ startCapSpinner = findViewById(com.example.common_ui.R.id.startCapSpinner);
startCapSpinner.setAdapter(new ArrayAdapter<>(
this, android.R.layout.simple_spinner_item,
getResourceStrings(CAP_TYPE_NAME_RESOURCE_IDS)));
- endCapSpinner = findViewById(R.id.endCapSpinner);
+ endCapSpinner = findViewById(com.example.common_ui.R.id.endCapSpinner);
endCapSpinner.setAdapter(new ArrayAdapter<>(
this, android.R.layout.simple_spinner_item,
getResourceStrings(CAP_TYPE_NAME_RESOURCE_IDS)));
- jointTypeSpinner = findViewById(R.id.jointTypeSpinner);
+ jointTypeSpinner = findViewById(com.example.common_ui.R.id.jointTypeSpinner);
jointTypeSpinner.setAdapter(new ArrayAdapter<>(
this, android.R.layout.simple_spinner_item,
getResourceStrings(JOINT_TYPE_NAME_RESOURCE_IDS)));
- patternSpinner = findViewById(R.id.patternSpinner);
+ patternSpinner = findViewById(com.example.common_ui.R.id.patternSpinner);
patternSpinner.setAdapter(new ArrayAdapter<>(
this, android.R.layout.simple_spinner_item,
getResourceStrings(PATTERN_TYPE_NAME_RESOURCE_IDS)));
- clickabilityCheckbox = findViewById(R.id.toggleClickability);
+ clickabilityCheckbox = findViewById(com.example.common_ui.R.id.toggleClickability);
SupportMapFragment mapFragment =
- (SupportMapFragment) getSupportFragmentManager().findFragmentById(R.id.map);
+ (SupportMapFragment) getSupportFragmentManager().findFragmentById(com.example.common_ui.R.id.map);
mapFragment.getMapAsync(this);
- applyInsets(findViewById(R.id.map_container));
+ applyInsets(findViewById(com.example.common_ui.R.id.map_container));
}
// [START_EXCLUDE silent]
@@ -178,7 +178,7 @@ private String[] getResourceStrings(int[] resourceIds) {
public void onMapReady(GoogleMap map) {
// Override the default content description on the view, for accessibility mode.
- map.setContentDescription(getString(R.string.polyline_demo_description));
+ map.setContentDescription(getString(com.example.common_ui.R.string.polyline_demo_description));
// A geodesic polyline that goes around the world.
map.addPolyline(new PolylineOptions()
@@ -227,15 +227,15 @@ public void onPolylineClick(Polyline polyline) {
// [START_EXCLUDE silent]
private Cap getSelectedCap(int pos) {
int id = CAP_TYPE_NAME_RESOURCE_IDS[pos];
- if (id == R.string.cap_butt) {
+ if (id == com.example.common_ui.R.string.cap_butt) {
return new ButtCap();
- } else if (id == R.string.cap_square) {
+ } else if (id == com.example.common_ui.R.string.cap_square) {
return new SquareCap();
- } else if (id == R.string.cap_round) {
+ } else if (id == com.example.common_ui.R.string.cap_round) {
return new RoundCap();
- } else if (id == R.string.cap_image) {
+ } else if (id == com.example.common_ui.R.string.cap_image) {
return new CustomCap(
- BitmapDescriptorFactory.fromResource(R.drawable.chevron),
+ BitmapDescriptorFactory.fromResource(com.example.common_ui.R.drawable.chevron),
CUSTOM_CAP_IMAGE_REF_WIDTH_PX);
}
return null;
@@ -243,11 +243,11 @@ private Cap getSelectedCap(int pos) {
private int getSelectedJointType(int pos) {
int id = JOINT_TYPE_NAME_RESOURCE_IDS[pos];
- if (id == R.string.joint_type_bevel) {
+ if (id == com.example.common_ui.R.string.joint_type_bevel) {
return JointType.BEVEL;
- } else if (id == R.string.joint_type_round) {
+ } else if (id == com.example.common_ui.R.string.joint_type_round) {
return JointType.ROUND;
- } else if (id == R.string.joint_type_default) {
+ } else if (id == com.example.common_ui.R.string.joint_type_default) {
return JointType.DEFAULT;
}
return 0;
@@ -255,13 +255,13 @@ private int getSelectedJointType(int pos) {
private List getSelectedPattern(int pos) {
int id = PATTERN_TYPE_NAME_RESOURCE_IDS[pos];
- if (id == R.string.pattern_solid) {
+ if (id == com.example.common_ui.R.string.pattern_solid) {
return null;
- } else if (id == R.string.pattern_dotted) {
+ } else if (id == com.example.common_ui.R.string.pattern_dotted) {
return PATTERN_DOTTED;
- } else if (id == R.string.pattern_dashed) {
+ } else if (id == com.example.common_ui.R.string.pattern_dashed) {
return PATTERN_DASHED;
- } else if (id == R.string.pattern_mixed) {
+ } else if (id == com.example.common_ui.R.string.pattern_mixed) {
return PATTERN_MIXED;
} else {
return null;
@@ -271,13 +271,13 @@ private List getSelectedPattern(int pos) {
@Override
public void onItemSelected(AdapterView> parent, View view, int pos, long id) {
int parentId = parent.getId();
- if (parentId == R.id.startCapSpinner) {
+ if (parentId == com.example.common_ui.R.id.startCapSpinner) {
mutablePolyline.setStartCap(getSelectedCap(pos));
- } else if (parentId == R.id.endCapSpinner) {
+ } else if (parentId == com.example.common_ui.R.id.endCapSpinner) {
mutablePolyline.setEndCap(getSelectedCap(pos));
- } else if (parentId == R.id.jointTypeSpinner) {
+ } else if (parentId == com.example.common_ui.R.id.jointTypeSpinner) {
mutablePolyline.setJointType(getSelectedJointType(pos));
- } else if (parentId == R.id.patternSpinner) {
+ } else if (parentId == com.example.common_ui.R.id.patternSpinner) {
mutablePolyline.setPattern(getSelectedPattern(pos));
}
}
diff --git a/ApiDemos/java/app/src/main/java/com/example/mapdemo/ProgrammaticDemoActivity.java b/ApiDemos/project/java-app/src/main/java/com/example/mapdemo/ProgrammaticDemoActivity.java
similarity index 96%
rename from ApiDemos/java/app/src/main/java/com/example/mapdemo/ProgrammaticDemoActivity.java
rename to ApiDemos/project/java-app/src/main/java/com/example/mapdemo/ProgrammaticDemoActivity.java
index e20687eaf..235215894 100644
--- a/ApiDemos/java/app/src/main/java/com/example/mapdemo/ProgrammaticDemoActivity.java
+++ b/ApiDemos/project/java-app/src/main/java/com/example/mapdemo/ProgrammaticDemoActivity.java
@@ -55,7 +55,7 @@ protected void onCreate(Bundle savedInstanceState) {
}
mapFragment.getMapAsync(this);
- applyInsets(findViewById(R.id.map_container));
+ applyInsets(findViewById(com.example.common_ui.R.id.map_container));
}
@Override
diff --git a/ApiDemos/java/app/src/main/java/com/example/mapdemo/RawMapViewDemoActivity.java b/ApiDemos/project/java-app/src/main/java/com/example/mapdemo/RawMapViewDemoActivity.java
similarity index 92%
rename from ApiDemos/java/app/src/main/java/com/example/mapdemo/RawMapViewDemoActivity.java
rename to ApiDemos/project/java-app/src/main/java/com/example/mapdemo/RawMapViewDemoActivity.java
index 199a447a7..d2539a928 100644
--- a/ApiDemos/java/app/src/main/java/com/example/mapdemo/RawMapViewDemoActivity.java
+++ b/ApiDemos/project/java-app/src/main/java/com/example/mapdemo/RawMapViewDemoActivity.java
@@ -23,7 +23,10 @@
import android.os.Bundle;
-import androidx.appcompat.app.AppCompatActivity;
+import androidx.annotation.NonNull;
+
+//noinspection UnusedImport
+import com.example.common_ui.R; // <-- Keep this import
/**
* This shows how to create a simple activity with a raw MapView and add a marker to it. This
@@ -47,16 +50,16 @@ protected void onCreate(Bundle savedInstanceState) {
if (savedInstanceState != null) {
mapViewBundle = savedInstanceState.getBundle(MAPVIEW_BUNDLE_KEY);
}
- mMapView = (MapView) findViewById(R.id.map);
+ mMapView = findViewById(R.id.map);
mMapView.onCreate(mapViewBundle);
mMapView.getMapAsync(this);
- applyInsets(findViewById(R.id.map_container));
+ applyInsets(mMapView);
}
@Override
- public void onSaveInstanceState(Bundle outState) {
+ public void onSaveInstanceState(@NonNull Bundle outState) {
super.onSaveInstanceState(outState);
Bundle mapViewBundle = outState.getBundle(MAPVIEW_BUNDLE_KEY);
diff --git a/ApiDemos/java/app/src/main/java/com/example/mapdemo/RetainMapDemoActivity.java b/ApiDemos/project/java-app/src/main/java/com/example/mapdemo/RetainMapDemoActivity.java
similarity index 90%
rename from ApiDemos/java/app/src/main/java/com/example/mapdemo/RetainMapDemoActivity.java
rename to ApiDemos/project/java-app/src/main/java/com/example/mapdemo/RetainMapDemoActivity.java
index f99a058b2..db776f876 100755
--- a/ApiDemos/java/app/src/main/java/com/example/mapdemo/RetainMapDemoActivity.java
+++ b/ApiDemos/project/java-app/src/main/java/com/example/mapdemo/RetainMapDemoActivity.java
@@ -34,10 +34,10 @@ public class RetainMapDemoActivity extends SamplesBaseActivity implements OnMapR
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
- setContentView(R.layout.basic_demo);
+ setContentView(com.example.common_ui.R.layout.basic_demo);
SupportMapFragment mapFragment =
- (SupportMapFragment) getSupportFragmentManager().findFragmentById(R.id.map);
+ (SupportMapFragment) getSupportFragmentManager().findFragmentById(com.example.common_ui.R.id.map);
if (savedInstanceState == null) {
// First incarnation of this activity.
@@ -46,7 +46,7 @@ protected void onCreate(Bundle savedInstanceState) {
mapFragment.getMapAsync(this);
- applyInsets(findViewById(R.id.map_container));
+ applyInsets(findViewById(com.example.common_ui.R.id.map_container));
}
@Override
diff --git a/ApiDemos/java/app/src/main/java/com/example/mapdemo/SamplesBaseActivity.java b/ApiDemos/project/java-app/src/main/java/com/example/mapdemo/SamplesBaseActivity.java
similarity index 100%
rename from ApiDemos/java/app/src/main/java/com/example/mapdemo/SamplesBaseActivity.java
rename to ApiDemos/project/java-app/src/main/java/com/example/mapdemo/SamplesBaseActivity.java
diff --git a/ApiDemos/java/app/src/main/java/com/example/mapdemo/SaveStateDemoActivity.java b/ApiDemos/project/java-app/src/main/java/com/example/mapdemo/SaveStateDemoActivity.java
similarity index 99%
rename from ApiDemos/java/app/src/main/java/com/example/mapdemo/SaveStateDemoActivity.java
rename to ApiDemos/project/java-app/src/main/java/com/example/mapdemo/SaveStateDemoActivity.java
index e4f3b80ec..af2c109f7 100755
--- a/ApiDemos/java/app/src/main/java/com/example/mapdemo/SaveStateDemoActivity.java
+++ b/ApiDemos/project/java-app/src/main/java/com/example/mapdemo/SaveStateDemoActivity.java
@@ -216,6 +216,6 @@ public void onMarkerDragEnd(Marker marker) {
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
- setContentView(R.layout.save_state_demo);
+ setContentView(com.example.common_ui.R.layout.save_state_demo);
}
}
diff --git a/ApiDemos/java/app/src/main/java/com/example/mapdemo/SnapshotDemoActivity.java b/ApiDemos/project/java-app/src/main/java/com/example/mapdemo/SnapshotDemoActivity.java
similarity index 85%
rename from ApiDemos/java/app/src/main/java/com/example/mapdemo/SnapshotDemoActivity.java
rename to ApiDemos/project/java-app/src/main/java/com/example/mapdemo/SnapshotDemoActivity.java
index 5044cbd6b..9bca4d771 100755
--- a/ApiDemos/java/app/src/main/java/com/example/mapdemo/SnapshotDemoActivity.java
+++ b/ApiDemos/project/java-app/src/main/java/com/example/mapdemo/SnapshotDemoActivity.java
@@ -44,14 +44,14 @@ public class SnapshotDemoActivity extends SamplesBaseActivity implements OnMapRe
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
- setContentView(R.layout.snapshot_demo);
- mWaitForMapLoadCheckBox = (CheckBox) findViewById(R.id.wait_for_map_load);
+ setContentView(com.example.common_ui.R.layout.snapshot_demo);
+ mWaitForMapLoadCheckBox = findViewById(com.example.common_ui.R.id.wait_for_map_load);
SupportMapFragment mapFragment =
- (SupportMapFragment) getSupportFragmentManager().findFragmentById(R.id.map);
+ (SupportMapFragment) getSupportFragmentManager().findFragmentById(com.example.common_ui.R.id.map);
mapFragment.getMapAsync(this);
- applyInsets(findViewById(R.id.map_container));
+ applyInsets(findViewById(com.example.common_ui.R.id.map_container));
}
@Override
@@ -71,7 +71,7 @@ private void takeSnapshot() {
return;
}
- final ImageView snapshotHolder = (ImageView) findViewById(R.id.snapshot_holder);
+ final ImageView snapshotHolder = findViewById(com.example.common_ui.R.id.snapshot_holder);
final SnapshotReadyCallback callback = new SnapshotReadyCallback() {
@Override
@@ -97,7 +97,7 @@ public void onMapLoaded() {
* Called when the clear button is clicked.
*/
public void onClearScreenshot(View view) {
- ImageView snapshotHolder = (ImageView) findViewById(R.id.snapshot_holder);
+ ImageView snapshotHolder = findViewById(com.example.common_ui.R.id.snapshot_holder);
snapshotHolder.setImageDrawable(null);
}
}
diff --git a/ApiDemos/java/app/src/main/java/com/example/mapdemo/SplitStreetViewPanoramaAndMapDemoActivity.java b/ApiDemos/project/java-app/src/main/java/com/example/mapdemo/SplitStreetViewPanoramaAndMapDemoActivity.java
similarity index 93%
rename from ApiDemos/java/app/src/main/java/com/example/mapdemo/SplitStreetViewPanoramaAndMapDemoActivity.java
rename to ApiDemos/project/java-app/src/main/java/com/example/mapdemo/SplitStreetViewPanoramaAndMapDemoActivity.java
index d7ca3d8c7..2ff30e18a 100755
--- a/ApiDemos/java/app/src/main/java/com/example/mapdemo/SplitStreetViewPanoramaAndMapDemoActivity.java
+++ b/ApiDemos/project/java-app/src/main/java/com/example/mapdemo/SplitStreetViewPanoramaAndMapDemoActivity.java
@@ -51,7 +51,7 @@ public class SplitStreetViewPanoramaAndMapDemoActivity extends SamplesBaseActivi
@Override
protected void onCreate(final Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
- setContentView(R.layout.split_street_view_panorama_and_map_demo);
+ setContentView(com.example.common_ui.R.layout.split_street_view_panorama_and_map_demo);
final LatLng markerPosition;
if (savedInstanceState == null) {
@@ -62,7 +62,7 @@ protected void onCreate(final Bundle savedInstanceState) {
SupportStreetViewPanoramaFragment streetViewPanoramaFragment =
(SupportStreetViewPanoramaFragment)
- getSupportFragmentManager().findFragmentById(R.id.streetviewpanorama);
+ getSupportFragmentManager().findFragmentById(com.example.common_ui.R.id.streetviewpanorama);
streetViewPanoramaFragment.getStreetViewPanoramaAsync(
new OnStreetViewPanoramaReadyCallback() {
@Override
@@ -79,7 +79,7 @@ public void onStreetViewPanoramaReady(StreetViewPanorama panorama) {
});
SupportMapFragment mapFragment =
- (SupportMapFragment) getSupportFragmentManager().findFragmentById(R.id.map);
+ (SupportMapFragment) getSupportFragmentManager().findFragmentById(com.example.common_ui.R.id.map);
mapFragment.getMapAsync(new OnMapReadyCallback() {
@Override
public void onMapReady(GoogleMap map) {
@@ -87,11 +87,11 @@ public void onMapReady(GoogleMap map) {
// Creates a draggable marker. Long press to drag.
marker = map.addMarker(new MarkerOptions()
.position(markerPosition)
- .icon(BitmapDescriptorFactory.fromResource(R.drawable.pegman))
+ .icon(BitmapDescriptorFactory.fromResource(com.example.common_ui.R.drawable.pegman))
.draggable(true));
}
});
- applyInsets(findViewById(R.id.map_container));
+ applyInsets(findViewById(com.example.common_ui.R.id.map_container));
}
@Override
diff --git a/ApiDemos/java/app/src/main/java/com/example/mapdemo/StreetViewPanoramaBasicDemoActivity.java b/ApiDemos/project/java-app/src/main/java/com/example/mapdemo/StreetViewPanoramaBasicDemoActivity.java
similarity index 90%
rename from ApiDemos/java/app/src/main/java/com/example/mapdemo/StreetViewPanoramaBasicDemoActivity.java
rename to ApiDemos/project/java-app/src/main/java/com/example/mapdemo/StreetViewPanoramaBasicDemoActivity.java
index b9901e405..c529b637e 100755
--- a/ApiDemos/java/app/src/main/java/com/example/mapdemo/StreetViewPanoramaBasicDemoActivity.java
+++ b/ApiDemos/project/java-app/src/main/java/com/example/mapdemo/StreetViewPanoramaBasicDemoActivity.java
@@ -35,11 +35,11 @@ public class StreetViewPanoramaBasicDemoActivity extends SamplesBaseActivity {
@Override
protected void onCreate(final Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
- setContentView(R.layout.street_view_panorama_basic_demo);
+ setContentView(com.example.common_ui.R.layout.street_view_panorama_basic_demo);
SupportStreetViewPanoramaFragment streetViewPanoramaFragment =
(SupportStreetViewPanoramaFragment)
- getSupportFragmentManager().findFragmentById(R.id.streetviewpanorama);
+ getSupportFragmentManager().findFragmentById(com.example.common_ui.R.id.streetviewpanorama);
streetViewPanoramaFragment.getStreetViewPanoramaAsync(
new OnStreetViewPanoramaReadyCallback() {
@Override
@@ -52,6 +52,6 @@ public void onStreetViewPanoramaReady(StreetViewPanorama panorama) {
}
});
- applyInsets(findViewById(R.id.map_container));
+ applyInsets(findViewById(com.example.common_ui.R.id.map_container));
}
}
diff --git a/ApiDemos/java/app/src/main/java/com/example/mapdemo/StreetViewPanoramaEventsDemoActivity.java b/ApiDemos/project/java-app/src/main/java/com/example/mapdemo/StreetViewPanoramaEventsDemoActivity.java
similarity index 89%
rename from ApiDemos/java/app/src/main/java/com/example/mapdemo/StreetViewPanoramaEventsDemoActivity.java
rename to ApiDemos/project/java-app/src/main/java/com/example/mapdemo/StreetViewPanoramaEventsDemoActivity.java
index a01a8e1c7..ad03fb251 100755
--- a/ApiDemos/java/app/src/main/java/com/example/mapdemo/StreetViewPanoramaEventsDemoActivity.java
+++ b/ApiDemos/project/java-app/src/main/java/com/example/mapdemo/StreetViewPanoramaEventsDemoActivity.java
@@ -63,16 +63,16 @@ public class StreetViewPanoramaEventsDemoActivity extends SamplesBaseActivity
@Override
protected void onCreate(final Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
- setContentView(R.layout.street_view_panorama_events_demo);
+ setContentView(com.example.common_ui.R.layout.street_view_panorama_events_demo);
- panoChangeTimesTextView = findViewById(R.id.change_pano);
- panoCameraChangeTextView = findViewById(R.id.change_camera);
- panoClickTextView = findViewById(R.id.click_pano);
- panoLongClickTextView = findViewById(R.id.long_click_pano);
+ panoChangeTimesTextView = findViewById(com.example.common_ui.R.id.change_pano);
+ panoCameraChangeTextView = findViewById(com.example.common_ui.R.id.change_camera);
+ panoClickTextView = findViewById(com.example.common_ui.R.id.click_pano);
+ panoLongClickTextView = findViewById(com.example.common_ui.R.id.long_click_pano);
SupportStreetViewPanoramaFragment streetViewPanoramaFragment =
(SupportStreetViewPanoramaFragment)
- getSupportFragmentManager().findFragmentById(R.id.streetviewpanorama);
+ getSupportFragmentManager().findFragmentById(com.example.common_ui.R.id.streetviewpanorama);
streetViewPanoramaFragment.getStreetViewPanoramaAsync(
panorama -> {
streetViewPanorama = panorama;
@@ -92,7 +92,7 @@ protected void onCreate(final Bundle savedInstanceState) {
}
});
- applyInsets(findViewById(R.id.map_container));
+ applyInsets(findViewById(com.example.common_ui.R.id.map_container));
}
@Override
@@ -113,7 +113,7 @@ public void onStreetViewPanoramaClick(StreetViewPanoramaOrientation orientation)
if (point != null) {
panoClickTimes++;
panoClickTextView.setText(
- "Times clicked=" + panoClickTimes + " : " + point.toString());
+ "Times clicked=" + panoClickTimes + " : " + point);
streetViewPanorama.animateTo(
new StreetViewPanoramaCamera.Builder()
.orientation(orientation)
@@ -128,7 +128,7 @@ public void onStreetViewPanoramaLongClick(StreetViewPanoramaOrientation orientat
if (point != null) {
panoLongClickTimes++;
panoLongClickTextView.setText(
- "Times long clicked=" + panoLongClickTimes + " : " + point.toString());
+ "Times long clicked=" + panoLongClickTimes + " : " + point);
}
}
}
diff --git a/ApiDemos/java/app/src/main/java/com/example/mapdemo/StreetViewPanoramaNavigationDemoActivity.java b/ApiDemos/project/java-app/src/main/java/com/example/mapdemo/StreetViewPanoramaNavigationDemoActivity.java
similarity index 95%
rename from ApiDemos/java/app/src/main/java/com/example/mapdemo/StreetViewPanoramaNavigationDemoActivity.java
rename to ApiDemos/project/java-app/src/main/java/com/example/mapdemo/StreetViewPanoramaNavigationDemoActivity.java
index f1e26e9eb..0b93213a1 100755
--- a/ApiDemos/java/app/src/main/java/com/example/mapdemo/StreetViewPanoramaNavigationDemoActivity.java
+++ b/ApiDemos/project/java-app/src/main/java/com/example/mapdemo/StreetViewPanoramaNavigationDemoActivity.java
@@ -64,11 +64,11 @@ public class StreetViewPanoramaNavigationDemoActivity extends SamplesBaseActivit
@Override
protected void onCreate(final Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
- setContentView(R.layout.street_view_panorama_navigation_demo);
+ setContentView(com.example.common_ui.R.layout.street_view_panorama_navigation_demo);
SupportStreetViewPanoramaFragment streetViewPanoramaFragment =
(SupportStreetViewPanoramaFragment)
- getSupportFragmentManager().findFragmentById(R.id.streetviewpanorama);
+ getSupportFragmentManager().findFragmentById(com.example.common_ui.R.id.streetviewpanorama);
streetViewPanoramaFragment.getStreetViewPanoramaAsync(
new OnStreetViewPanoramaReadyCallback() {
@Override
@@ -81,8 +81,8 @@ public void onStreetViewPanoramaReady(StreetViewPanorama panorama) {
}
}
});
- mCustomDurationBar = (SeekBar) findViewById(R.id.duration_bar);
- applyInsets(findViewById(R.id.map_container));
+ mCustomDurationBar = findViewById(com.example.common_ui.R.id.duration_bar);
+ applyInsets(findViewById(com.example.common_ui.R.id.map_container));
}
/**
@@ -91,7 +91,7 @@ public void onStreetViewPanoramaReady(StreetViewPanorama panorama) {
*/
private boolean checkReady() {
if (mStreetViewPanorama == null) {
- Toast.makeText(this, R.string.panorama_not_ready, Toast.LENGTH_SHORT).show();
+ Toast.makeText(this, com.example.common_ui.R.string.panorama_not_ready, Toast.LENGTH_SHORT).show();
return false;
}
return true;
diff --git a/ApiDemos/java/app/src/main/java/com/example/mapdemo/StreetViewPanoramaOptionsDemoActivity.java b/ApiDemos/project/java-app/src/main/java/com/example/mapdemo/StreetViewPanoramaOptionsDemoActivity.java
similarity index 83%
rename from ApiDemos/java/app/src/main/java/com/example/mapdemo/StreetViewPanoramaOptionsDemoActivity.java
rename to ApiDemos/project/java-app/src/main/java/com/example/mapdemo/StreetViewPanoramaOptionsDemoActivity.java
index 4d51abd83..435139685 100755
--- a/ApiDemos/java/app/src/main/java/com/example/mapdemo/StreetViewPanoramaOptionsDemoActivity.java
+++ b/ApiDemos/project/java-app/src/main/java/com/example/mapdemo/StreetViewPanoramaOptionsDemoActivity.java
@@ -35,7 +35,7 @@ public class StreetViewPanoramaOptionsDemoActivity extends SamplesBaseActivity {
// Cole St, San Fran
private static final LatLng SAN_FRAN = new LatLng(37.765927, -122.449972);
- private static int RADIUS = 20;
+ private static final int RADIUS = 20;
private StreetViewPanorama streetViewPanorama;
@@ -52,17 +52,17 @@ public class StreetViewPanoramaOptionsDemoActivity extends SamplesBaseActivity {
@Override
protected void onCreate(final Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
- setContentView(R.layout.street_view_panorama_options_demo);
+ setContentView(com.example.common_ui.R.layout.street_view_panorama_options_demo);
- streetNameCheckbox = findViewById(R.id.streetnames);
- navigationCheckbox = findViewById(R.id.navigation);
- zoomCheckbox = findViewById(R.id.zoom);
- panningCheckbox = findViewById(R.id.panning);
- outdoorCheckbox = findViewById(R.id.outdoor);
+ streetNameCheckbox = findViewById(com.example.common_ui.R.id.streetnames);
+ navigationCheckbox = findViewById(com.example.common_ui.R.id.navigation);
+ zoomCheckbox = findViewById(com.example.common_ui.R.id.zoom);
+ panningCheckbox = findViewById(com.example.common_ui.R.id.panning);
+ outdoorCheckbox = findViewById(com.example.common_ui.R.id.outdoor);
SupportStreetViewPanoramaFragment streetViewPanoramaFragment =
(SupportStreetViewPanoramaFragment)
- getSupportFragmentManager().findFragmentById(R.id.streetviewpanorama);
+ getSupportFragmentManager().findFragmentById(com.example.common_ui.R.id.streetviewpanorama);
streetViewPanoramaFragment.getStreetViewPanoramaAsync(
panorama -> {
streetViewPanorama = panorama;
@@ -78,7 +78,7 @@ protected void onCreate(final Bundle savedInstanceState) {
}
});
- applyInsets(findViewById(R.id.map_container));
+ applyInsets(findViewById(com.example.common_ui.R.id.map_container));
}
private void setPosition() {
@@ -91,7 +91,7 @@ private void setPosition() {
private boolean checkReady() {
if (streetViewPanorama == null) {
- Toast.makeText(this, R.string.map_not_ready, Toast.LENGTH_SHORT).show();
+ Toast.makeText(this, com.example.common_ui.R.string.map_not_ready, Toast.LENGTH_SHORT).show();
return false;
}
return true;
diff --git a/ApiDemos/java/app/src/main/java/com/example/mapdemo/StreetViewPanoramaViewDemoActivity.java b/ApiDemos/project/java-app/src/main/java/com/example/mapdemo/StreetViewPanoramaViewDemoActivity.java
similarity index 97%
rename from ApiDemos/java/app/src/main/java/com/example/mapdemo/StreetViewPanoramaViewDemoActivity.java
rename to ApiDemos/project/java-app/src/main/java/com/example/mapdemo/StreetViewPanoramaViewDemoActivity.java
index 3e18c0eb7..28798ac0e 100755
--- a/ApiDemos/java/app/src/main/java/com/example/mapdemo/StreetViewPanoramaViewDemoActivity.java
+++ b/ApiDemos/project/java-app/src/main/java/com/example/mapdemo/StreetViewPanoramaViewDemoActivity.java
@@ -59,7 +59,7 @@ protected void onCreate(Bundle savedInstanceState) {
}
streetViewPanoramaView.onCreate(streetViewBundle);
- applyInsets(findViewById(R.id.map_container));
+ applyInsets(findViewById(com.example.common_ui.R.id.map_container));
}
@Override
diff --git a/ApiDemos/java/app/src/main/java/com/example/mapdemo/StyledMapDemoActivity.java b/ApiDemos/project/java-app/src/main/java/com/example/mapdemo/StyledMapDemoActivity.java
similarity index 78%
rename from ApiDemos/java/app/src/main/java/com/example/mapdemo/StyledMapDemoActivity.java
rename to ApiDemos/project/java-app/src/main/java/com/example/mapdemo/StyledMapDemoActivity.java
index e6cd569c7..0cc498ac0 100644
--- a/ApiDemos/java/app/src/main/java/com/example/mapdemo/StyledMapDemoActivity.java
+++ b/ApiDemos/project/java-app/src/main/java/com/example/mapdemo/StyledMapDemoActivity.java
@@ -48,16 +48,16 @@ public class StyledMapDemoActivity extends SamplesBaseActivity implements OnMapR
// Stores the ID of the currently selected style, so that we can re-apply it when
// the activity restores state, for example when the device changes orientation.
- private int mSelectedStyleId = R.string.style_label_default;
+ private int mSelectedStyleId = com.example.common_ui.R.string.style_label_default;
// These are simply the string resource IDs for each of the style names. We use them
// as identifiers when choosing which style to apply.
- private int mStyleIds[] = {
- R.string.style_label_retro,
- R.string.style_label_night,
- R.string.style_label_grayscale,
- R.string.style_label_no_pois_no_transit,
- R.string.style_label_default,
+ private final int[] mStyleIds = {
+ com.example.common_ui.R.string.style_label_retro,
+ com.example.common_ui.R.string.style_label_night,
+ com.example.common_ui.R.string.style_label_grayscale,
+ com.example.common_ui.R.string.style_label_no_pois_no_transit,
+ com.example.common_ui.R.string.style_label_default,
};
private static final LatLng SYDNEY = new LatLng(-33.8688, 151.2093);
@@ -68,13 +68,13 @@ protected void onCreate(Bundle savedInstanceState) {
if (savedInstanceState != null) {
mSelectedStyleId = savedInstanceState.getInt(SELECTED_STYLE);
}
- setContentView(R.layout.styled_map_demo);
+ setContentView(com.example.common_ui.R.layout.styled_map_demo);
SupportMapFragment mapFragment =
- (SupportMapFragment) getSupportFragmentManager().findFragmentById(R.id.map);
+ (SupportMapFragment) getSupportFragmentManager().findFragmentById(com.example.common_ui.R.id.map);
mapFragment.getMapAsync(this);
- applyInsets(findViewById(R.id.map_container));
+ applyInsets(findViewById(com.example.common_ui.R.id.map_container));
}
@Override
@@ -93,13 +93,13 @@ public void onMapReady(GoogleMap map) {
@Override
public boolean onCreateOptionsMenu(Menu menu) {
- getMenuInflater().inflate(R.menu.styled_map, menu);
+ getMenuInflater().inflate(com.example.common_ui.R.menu.styled_map, menu);
return true;
}
@Override
public boolean onOptionsItemSelected(MenuItem item) {
- if (item.getItemId() == R.id.menu_style_choose) {
+ if (item.getItemId() == com.example.common_ui.R.id.menu_style_choose) {
showStylesDialog();
}
return true;
@@ -120,13 +120,13 @@ private void showStylesDialog() {
}
AlertDialog.Builder builder = new AlertDialog.Builder(this);
- builder.setTitle(getString(R.string.style_choose));
+ builder.setTitle(getString(com.example.common_ui.R.string.style_choose));
builder.setItems(styleNames.toArray(new CharSequence[styleNames.size()]),
new DialogInterface.OnClickListener() {
@Override
public void onClick(DialogInterface dialog, int which) {
mSelectedStyleId = mStyleIds[which];
- String msg = getString(R.string.style_set_to, getString(mSelectedStyleId));
+ String msg = getString(com.example.common_ui.R.string.style_set_to, getString(mSelectedStyleId));
Toast.makeText(getBaseContext(), msg, Toast.LENGTH_SHORT).show();
Log.d(TAG, msg);
setSelectedStyle();
@@ -143,16 +143,16 @@ public void onClick(DialogInterface dialog, int which) {
private void setSelectedStyle() {
MapStyleOptions style;
int id = mSelectedStyleId;
- if (id == R.string.style_label_retro) {
+ if (id == com.example.common_ui.R.string.style_label_retro) {
// Sets the retro style via raw resource JSON.
- style = MapStyleOptions.loadRawResourceStyle(this, R.raw.mapstyle_retro);
- } else if (id == R.string.style_label_night) {
+ style = MapStyleOptions.loadRawResourceStyle(this, com.example.common_ui.R.raw.mapstyle_retro);
+ } else if (id == com.example.common_ui.R.string.style_label_night) {
// Sets the night style via raw resource JSON.
- style = MapStyleOptions.loadRawResourceStyle(this, R.raw.mapstyle_night);
- } else if (id == R.string.style_label_grayscale) {
+ style = MapStyleOptions.loadRawResourceStyle(this, com.example.common_ui.R.raw.mapstyle_night);
+ } else if (id == com.example.common_ui.R.string.style_label_grayscale) {
// Sets the grayscale style via raw resource JSON.
- style = MapStyleOptions.loadRawResourceStyle(this, R.raw.mapstyle_grayscale);
- } else if (id == R.string.style_label_no_pois_no_transit) {
+ style = MapStyleOptions.loadRawResourceStyle(this, com.example.common_ui.R.raw.mapstyle_grayscale);
+ } else if (id == com.example.common_ui.R.string.style_label_no_pois_no_transit) {
// Sets the no POIs or transit style via JSON string.
style = new MapStyleOptions("[" +
" {" +
@@ -174,7 +174,7 @@ private void setSelectedStyle() {
" ]" +
" }" +
"]");
- } else if (id == R.string.style_label_default) {
+ } else if (id == com.example.common_ui.R.string.style_label_default) {
// Removes previously set style, by setting it to null.
style = null;
} else {
diff --git a/ApiDemos/java/app/src/main/java/com/example/mapdemo/TagsDemoActivity.java b/ApiDemos/project/java-app/src/main/java/com/example/mapdemo/TagsDemoActivity.java
similarity index 94%
rename from ApiDemos/java/app/src/main/java/com/example/mapdemo/TagsDemoActivity.java
rename to ApiDemos/project/java-app/src/main/java/com/example/mapdemo/TagsDemoActivity.java
index 5d4660502..96baa43f4 100644
--- a/ApiDemos/java/app/src/main/java/com/example/mapdemo/TagsDemoActivity.java
+++ b/ApiDemos/project/java-app/src/main/java/com/example/mapdemo/TagsDemoActivity.java
@@ -94,15 +94,15 @@ public String toString() {
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
- setContentView(R.layout.tags_demo);
+ setContentView(com.example.common_ui.R.layout.tags_demo);
- mTagText = (TextView) findViewById(R.id.tag_text);
+ mTagText = findViewById(com.example.common_ui.R.id.tag_text);
SupportMapFragment mapFragment =
- (SupportMapFragment) getSupportFragmentManager().findFragmentById(R.id.map);
+ (SupportMapFragment) getSupportFragmentManager().findFragmentById(com.example.common_ui.R.id.map);
new OnMapAndViewReadyListener(mapFragment, this);
- applyInsets(findViewById(R.id.map_container));
+ applyInsets(findViewById(com.example.common_ui.R.id.map_container));
}
@Override
@@ -133,7 +133,7 @@ public void onMapReady(GoogleMap map) {
// Override the default content description on the view, for accessibility mode.
// Ideally this string would be localised.
- map.setContentDescription(getString(R.string.tags_demo_map_description));
+ map.setContentDescription(getString(com.example.common_ui.R.string.tags_demo_map_description));
// Create bounds that include all locations of the map.
LatLngBounds bounds = new LatLngBounds.Builder()
@@ -159,7 +159,7 @@ private void addObjectsToMap() {
// A ground overlay at Sydney.
mSydneyGroundOverlay = mMap.addGroundOverlay(new GroundOverlayOptions()
- .image(BitmapDescriptorFactory.fromResource(R.drawable.harbour_bridge))
+ .image(BitmapDescriptorFactory.fromResource(com.example.common_ui.R.drawable.harbour_bridge))
.position(SYDNEY, 700000)
.clickable(true));
mSydneyGroundOverlay.setTag(new CustomTag("Sydney ground overlay"));
diff --git a/ApiDemos/java/app/src/main/java/com/example/mapdemo/TileCoordinateDemoActivity.java b/ApiDemos/project/java-app/src/main/java/com/example/mapdemo/TileCoordinateDemoActivity.java
similarity index 95%
rename from ApiDemos/java/app/src/main/java/com/example/mapdemo/TileCoordinateDemoActivity.java
rename to ApiDemos/project/java-app/src/main/java/com/example/mapdemo/TileCoordinateDemoActivity.java
index 1cb2484e5..b2621fb7d 100755
--- a/ApiDemos/java/app/src/main/java/com/example/mapdemo/TileCoordinateDemoActivity.java
+++ b/ApiDemos/project/java-app/src/main/java/com/example/mapdemo/TileCoordinateDemoActivity.java
@@ -41,13 +41,13 @@ public class TileCoordinateDemoActivity extends SamplesBaseActivity implements O
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
- setContentView(R.layout.tile_coordinate_demo);
+ setContentView(com.example.common_ui.R.layout.tile_coordinate_demo);
SupportMapFragment mapFragment =
- (SupportMapFragment) getSupportFragmentManager().findFragmentById(R.id.map);
+ (SupportMapFragment) getSupportFragmentManager().findFragmentById(com.example.common_ui.R.id.map);
mapFragment.getMapAsync(this);
- applyInsets(findViewById(R.id.map_container));
+ applyInsets(findViewById(com.example.common_ui.R.id.map));
}
@Override
diff --git a/ApiDemos/java/app/src/main/java/com/example/mapdemo/TileOverlayDemoActivity.java b/ApiDemos/project/java-app/src/main/java/com/example/mapdemo/TileOverlayDemoActivity.java
similarity index 92%
rename from ApiDemos/java/app/src/main/java/com/example/mapdemo/TileOverlayDemoActivity.java
rename to ApiDemos/project/java-app/src/main/java/com/example/mapdemo/TileOverlayDemoActivity.java
index 9b2f49071..bf7d7bf72 100644
--- a/ApiDemos/java/app/src/main/java/com/example/mapdemo/TileOverlayDemoActivity.java
+++ b/ApiDemos/project/java-app/src/main/java/com/example/mapdemo/TileOverlayDemoActivity.java
@@ -53,17 +53,17 @@ public class TileOverlayDemoActivity extends SamplesBaseActivity
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
- setContentView(R.layout.tile_overlay_demo);
+ setContentView(com.example.common_ui.R.layout.tile_overlay_demo);
- transparencyBar = (SeekBar) findViewById(R.id.transparencySeekBar);
+ transparencyBar = findViewById(com.example.common_ui.R.id.transparencySeekBar);
transparencyBar.setMax(TRANSPARENCY_MAX);
transparencyBar.setProgress(0);
SupportMapFragment mapFragment =
- (SupportMapFragment) getSupportFragmentManager().findFragmentById(R.id.map);
+ (SupportMapFragment) getSupportFragmentManager().findFragmentById(com.example.common_ui.R.id.map);
mapFragment.getMapAsync(this);
- applyInsets(findViewById(R.id.map_container));
+ applyInsets(findViewById(com.example.common_ui.R.id.map_container));
}
@Override
diff --git a/ApiDemos/java/app/src/main/java/com/example/mapdemo/UiSettingsDemoActivity.java b/ApiDemos/project/java-app/src/main/java/com/example/mapdemo/UiSettingsDemoActivity.java
similarity index 87%
rename from ApiDemos/java/app/src/main/java/com/example/mapdemo/UiSettingsDemoActivity.java
rename to ApiDemos/project/java-app/src/main/java/com/example/mapdemo/UiSettingsDemoActivity.java
index 726c714b3..52c31feb0 100755
--- a/ApiDemos/java/app/src/main/java/com/example/mapdemo/UiSettingsDemoActivity.java
+++ b/ApiDemos/project/java-app/src/main/java/com/example/mapdemo/UiSettingsDemoActivity.java
@@ -59,16 +59,16 @@ public class UiSettingsDemoActivity extends SamplesBaseActivity implements OnMap
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
- setContentView(R.layout.ui_settings_demo);
+ setContentView(com.example.common_ui.R.layout.ui_settings_demo);
- mMyLocationButtonCheckbox = (CheckBox) findViewById(R.id.mylocationbutton_toggle);
- mMyLocationLayerCheckbox = (CheckBox) findViewById(R.id.mylocationlayer_toggle);
+ mMyLocationButtonCheckbox = findViewById(com.example.common_ui.R.id.mylocationbutton_toggle);
+ mMyLocationLayerCheckbox = findViewById(com.example.common_ui.R.id.mylocationlayer_toggle);
SupportMapFragment mapFragment =
- (SupportMapFragment) getSupportFragmentManager().findFragmentById(R.id.map);
+ (SupportMapFragment) getSupportFragmentManager().findFragmentById(com.example.common_ui.R.id.map);
mapFragment.getMapAsync(this);
- applyInsets(findViewById(R.id.map_container));
+ applyInsets(findViewById(com.example.common_ui.R.id.map_container));
}
/**
@@ -86,13 +86,13 @@ public void onMapReady(GoogleMap map) {
mUiSettings = mMap.getUiSettings();
// Keep the UI Settings state in sync with the checkboxes.
- mUiSettings.setZoomControlsEnabled(isChecked(R.id.zoom_buttons_toggle));
- mUiSettings.setCompassEnabled(isChecked(R.id.compass_toggle));
- mUiSettings.setMyLocationButtonEnabled(isChecked(R.id.mylocationbutton_toggle));
- mUiSettings.setScrollGesturesEnabled(isChecked(R.id.scroll_toggle));
- mUiSettings.setZoomGesturesEnabled(isChecked(R.id.zoom_gestures_toggle));
- mUiSettings.setTiltGesturesEnabled(isChecked(R.id.tilt_toggle));
- mUiSettings.setRotateGesturesEnabled(isChecked(R.id.rotate_toggle));
+ mUiSettings.setZoomControlsEnabled(isChecked(com.example.common_ui.R.id.zoom_buttons_toggle));
+ mUiSettings.setCompassEnabled(isChecked(com.example.common_ui.R.id.compass_toggle));
+ mUiSettings.setMyLocationButtonEnabled(isChecked(com.example.common_ui.R.id.mylocationbutton_toggle));
+ mUiSettings.setScrollGesturesEnabled(isChecked(com.example.common_ui.R.id.scroll_toggle));
+ mUiSettings.setZoomGesturesEnabled(isChecked(com.example.common_ui.R.id.zoom_gestures_toggle));
+ mUiSettings.setTiltGesturesEnabled(isChecked(com.example.common_ui.R.id.tilt_toggle));
+ mUiSettings.setRotateGesturesEnabled(isChecked(com.example.common_ui.R.id.rotate_toggle));
if (ActivityCompat.checkSelfPermission(this, permission.ACCESS_FINE_LOCATION)
!= PackageManager.PERMISSION_GRANTED
@@ -100,7 +100,7 @@ public void onMapReady(GoogleMap map) {
!= PackageManager.PERMISSION_GRANTED) {
return;
}
- mMap.setMyLocationEnabled(isChecked(R.id.mylocationlayer_toggle));
+ mMap.setMyLocationEnabled(isChecked(com.example.common_ui.R.id.mylocationlayer_toggle));
}
/**
@@ -109,7 +109,7 @@ public void onMapReady(GoogleMap map) {
*/
private boolean checkReady() {
if (mMap == null) {
- Toast.makeText(this, R.string.map_not_ready, Toast.LENGTH_SHORT).show();
+ Toast.makeText(this, com.example.common_ui.R.string.map_not_ready, Toast.LENGTH_SHORT).show();
return false;
}
return true;
diff --git a/ApiDemos/java/app/src/main/java/com/example/mapdemo/VisibleRegionDemoActivity.java b/ApiDemos/project/java-app/src/main/java/com/example/mapdemo/VisibleRegionDemoActivity.java
similarity index 93%
rename from ApiDemos/java/app/src/main/java/com/example/mapdemo/VisibleRegionDemoActivity.java
rename to ApiDemos/project/java-app/src/main/java/com/example/mapdemo/VisibleRegionDemoActivity.java
index b07a94caf..4ba7e9c81 100755
--- a/ApiDemos/java/app/src/main/java/com/example/mapdemo/VisibleRegionDemoActivity.java
+++ b/ApiDemos/project/java-app/src/main/java/com/example/mapdemo/VisibleRegionDemoActivity.java
@@ -66,14 +66,14 @@ public class VisibleRegionDemoActivity extends SamplesBaseActivity implements
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
- setContentView(R.layout.visible_region_demo);
- mMessageView = (TextView) findViewById(R.id.message_text);
+ setContentView(com.example.common_ui.R.layout.visible_region_demo);
+ mMessageView = findViewById(com.example.common_ui.R.id.message_text);
SupportMapFragment mapFragment =
- (SupportMapFragment) getSupportFragmentManager().findFragmentById(R.id.map);
+ (SupportMapFragment) getSupportFragmentManager().findFragmentById(com.example.common_ui.R.id.map);
new OnMapAndViewReadyListener(mapFragment, this);
- applyInsets(findViewById(R.id.map_container));
+ applyInsets(findViewById(com.example.common_ui.R.id.map_container));
}
@Override
@@ -100,7 +100,7 @@ public void onCameraIdle() {
*/
private boolean checkReady() {
if (mMap == null) {
- Toast.makeText(this, R.string.map_not_ready, Toast.LENGTH_SHORT).show();
+ Toast.makeText(this, com.example.common_ui.R.string.map_not_ready, Toast.LENGTH_SHORT).show();
return false;
}
return true;
@@ -138,7 +138,7 @@ public void setMorePadding(View view) {
if (!checkReady()) {
return;
}
- View mapView = (getSupportFragmentManager().findFragmentById(R.id.map)).getView();
+ View mapView = (getSupportFragmentManager().findFragmentById(com.example.common_ui.R.id.map)).getView();
int left = 150;
int top = 0;
int right = mapView.getWidth() / 3;
diff --git a/ApiDemos/java/app/src/v3/AndroidManifest.xml b/ApiDemos/project/java-app/src/v3/AndroidManifest.xml
similarity index 90%
rename from ApiDemos/java/app/src/v3/AndroidManifest.xml
rename to ApiDemos/project/java-app/src/v3/AndroidManifest.xml
index f4f7a286c..e3bbb04f5 100644
--- a/ApiDemos/java/app/src/v3/AndroidManifest.xml
+++ b/ApiDemos/project/java-app/src/v3/AndroidManifest.xml
@@ -1,19 +1,18 @@
-
-
+
diff --git a/ApiDemos/java/app/src/v3/java/com/example/mapdemo/BasicMapDemoActivity.java b/ApiDemos/project/java-app/src/v3/java/com/example/mapdemo/BasicMapDemoActivity.java
similarity index 93%
rename from ApiDemos/java/app/src/v3/java/com/example/mapdemo/BasicMapDemoActivity.java
rename to ApiDemos/project/java-app/src/v3/java/com/example/mapdemo/BasicMapDemoActivity.java
index 88d394411..02c7e6a7e 100755
--- a/ApiDemos/java/app/src/v3/java/com/example/mapdemo/BasicMapDemoActivity.java
+++ b/ApiDemos/project/java-app/src/v3/java/com/example/mapdemo/BasicMapDemoActivity.java
@@ -31,10 +31,10 @@ public class BasicMapDemoActivity extends AppCompatActivity implements OnMapRead
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
- setContentView(R.layout.basic_demo);
+ setContentView(com.example.common_ui.R.layout.basic_demo);
SupportMapFragment mapFragment =
- (SupportMapFragment) getSupportFragmentManager().findFragmentById(R.id.map);
+ (SupportMapFragment) getSupportFragmentManager().findFragmentById(com.example.common_ui.R.id.map);
mapFragment.getMapAsync(this);
}
diff --git a/ApiDemos/java/app/src/v3/java/com/example/mapdemo/CameraClampingDemoActivity.java b/ApiDemos/project/java-app/src/v3/java/com/example/mapdemo/CameraClampingDemoActivity.java
similarity index 94%
rename from ApiDemos/java/app/src/v3/java/com/example/mapdemo/CameraClampingDemoActivity.java
rename to ApiDemos/project/java-app/src/v3/java/com/example/mapdemo/CameraClampingDemoActivity.java
index 5ff656f62..c4f99b1f5 100644
--- a/ApiDemos/java/app/src/v3/java/com/example/mapdemo/CameraClampingDemoActivity.java
+++ b/ApiDemos/project/java-app/src/v3/java/com/example/mapdemo/CameraClampingDemoActivity.java
@@ -69,15 +69,15 @@ public class CameraClampingDemoActivity extends AppCompatActivity
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
- setContentView(R.layout.camera_clamping_demo);
+ setContentView(com.example.common_ui.R.layout.camera_clamping_demo);
mMap = null;
resetMinMaxZoom();
- mCameraTextView = (TextView) findViewById(R.id.camera_text);
+ mCameraTextView = (TextView) findViewById(com.example.common_ui.R.id.camera_text);
SupportMapFragment mapFragment =
- (SupportMapFragment) getSupportFragmentManager().findFragmentById(R.id.map);
+ (SupportMapFragment) getSupportFragmentManager().findFragmentById(com.example.common_ui.R.id.map);
mapFragment.getMapAsync(this);
}
@@ -103,7 +103,7 @@ public void onCameraIdle() {
*/
private boolean checkReady() {
if (mMap == null) {
- Toast.makeText(this, R.string.map_not_ready, Toast.LENGTH_SHORT).show();
+ Toast.makeText(this, com.example.common_ui.R.string.map_not_ready, Toast.LENGTH_SHORT).show();
return false;
}
return true;
diff --git a/ApiDemos/java/app/src/v3/java/com/example/mapdemo/CameraDemoActivity.java b/ApiDemos/project/java-app/src/v3/java/com/example/mapdemo/CameraDemoActivity.java
similarity index 96%
rename from ApiDemos/java/app/src/v3/java/com/example/mapdemo/CameraDemoActivity.java
rename to ApiDemos/project/java-app/src/v3/java/com/example/mapdemo/CameraDemoActivity.java
index 4ef0b7edd..373d931dc 100644
--- a/ApiDemos/java/app/src/v3/java/com/example/mapdemo/CameraDemoActivity.java
+++ b/ApiDemos/project/java-app/src/v3/java/com/example/mapdemo/CameraDemoActivity.java
@@ -84,17 +84,17 @@ public class CameraDemoActivity extends AppCompatActivity implements
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
- setContentView(R.layout.camera_demo);
+ setContentView(com.example.common_ui.R.layout.camera_demo);
// [START_EXCLUDE silent]
- animateToggle = findViewById(R.id.animate);
- customDurationToggle = findViewById(R.id.duration_toggle);
- customDurationBar = findViewById(R.id.duration_bar);
+ animateToggle = findViewById(com.example.common_ui.R.id.animate);
+ customDurationToggle = findViewById(com.example.common_ui.R.id.duration_toggle);
+ customDurationBar = findViewById(com.example.common_ui.R.id.duration_bar);
updateEnabledState();
// [END_EXCLUDE]
SupportMapFragment mapFragment =
- (SupportMapFragment) getSupportFragmentManager().findFragmentById(R.id.map);
+ (SupportMapFragment) getSupportFragmentManager().findFragmentById(com.example.common_ui.R.id.map);
mapFragment.getMapAsync(this);
}
@@ -131,7 +131,7 @@ public void onMapReady(GoogleMap googleMap) {
*/
private boolean checkReady() {
if (map == null) {
- Toast.makeText(this, R.string.map_not_ready, Toast.LENGTH_SHORT).show();
+ Toast.makeText(this, com.example.common_ui.R.string.map_not_ready, Toast.LENGTH_SHORT).show();
return false;
}
return true;
diff --git a/ApiDemos/java/app/src/v3/java/com/example/mapdemo/CircleDemoActivity.java b/ApiDemos/project/java-app/src/v3/java/com/example/mapdemo/CircleDemoActivity.java
similarity index 89%
rename from ApiDemos/java/app/src/v3/java/com/example/mapdemo/CircleDemoActivity.java
rename to ApiDemos/project/java-app/src/v3/java/com/example/mapdemo/CircleDemoActivity.java
index 608879003..b3eacf7e5 100755
--- a/ApiDemos/java/app/src/v3/java/com/example/mapdemo/CircleDemoActivity.java
+++ b/ApiDemos/project/java-app/src/v3/java/com/example/mapdemo/CircleDemoActivity.java
@@ -95,10 +95,10 @@ public class CircleDemoActivity extends AppCompatActivity
// string resource IDs as identifiers.
private static final int[] PATTERN_TYPE_NAME_RESOURCE_IDS = {
- R.string.pattern_solid, // Default
- R.string.pattern_dashed,
- R.string.pattern_dotted,
- R.string.pattern_mixed,
+ com.example.common_ui.R.string.pattern_solid, // Default
+ com.example.common_ui.R.string.pattern_dashed,
+ com.example.common_ui.R.string.pattern_dotted,
+ com.example.common_ui.R.string.pattern_mixed,
};
private class DraggableCircle {
@@ -173,37 +173,37 @@ private static double toRadiusMeters(LatLng center, LatLng radius) {
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
- setContentView(R.layout.circle_demo);
+ setContentView(com.example.common_ui.R.layout.circle_demo);
- fillHueBar = findViewById(R.id.fillHueSeekBar);
+ fillHueBar = findViewById(com.example.common_ui.R.id.fillHueSeekBar);
fillHueBar.setMax(MAX_HUE_DEGREES);
fillHueBar.setProgress(MAX_HUE_DEGREES / 2);
- fillAlphaBar = findViewById(R.id.fillAlphaSeekBar);
+ fillAlphaBar = findViewById(com.example.common_ui.R.id.fillAlphaSeekBar);
fillAlphaBar.setMax(MAX_ALPHA);
fillAlphaBar.setProgress(MAX_ALPHA / 2);
- strokeWidthBar = findViewById(R.id.strokeWidthSeekBar);
+ strokeWidthBar = findViewById(com.example.common_ui.R.id.strokeWidthSeekBar);
strokeWidthBar.setMax(MAX_WIDTH_PX);
strokeWidthBar.setProgress(MAX_WIDTH_PX / 3);
- strokeHueBar = findViewById(R.id.strokeHueSeekBar);
+ strokeHueBar = findViewById(com.example.common_ui.R.id.strokeHueSeekBar);
strokeHueBar.setMax(MAX_HUE_DEGREES);
strokeHueBar.setProgress(0);
- strokeAlphaBar = findViewById(R.id.strokeAlphaSeekBar);
+ strokeAlphaBar = findViewById(com.example.common_ui.R.id.strokeAlphaSeekBar);
strokeAlphaBar.setMax(MAX_ALPHA);
strokeAlphaBar.setProgress(MAX_ALPHA);
- strokePatternSpinner = findViewById(R.id.strokePatternSpinner);
+ strokePatternSpinner = findViewById(com.example.common_ui.R.id.strokePatternSpinner);
strokePatternSpinner.setAdapter(new ArrayAdapter<>(
- this, android.R.layout.simple_spinner_item,
+ this, android.com.example.common_ui.R.layout.simple_spinner_item,
getResourceStrings(PATTERN_TYPE_NAME_RESOURCE_IDS)));
- clickabilityCheckbox = findViewById(R.id.toggleClickability);
+ clickabilityCheckbox = findViewById(com.example.common_ui.R.id.toggleClickability);
SupportMapFragment mapFragment =
- (SupportMapFragment) getSupportFragmentManager().findFragmentById(R.id.map);
+ (SupportMapFragment) getSupportFragmentManager().findFragmentById(com.example.common_ui.R.id.map);
mapFragment.getMapAsync(this);
}
@@ -218,7 +218,7 @@ private String[] getResourceStrings(int[] resourceIds) {
@Override
public void onMapReady(GoogleMap googleMap) {
// Override the default content description on the view, for accessibility mode.
- googleMap.setContentDescription(getString(R.string.map_circle_description));
+ googleMap.setContentDescription(getString(com.example.common_ui.R.string.map_circle_description));
map = googleMap;
map.setOnMarkerDragListener(this);
@@ -261,13 +261,13 @@ public void onCircleClick(Circle circle) {
private List getSelectedPattern(int pos) {
switch (PATTERN_TYPE_NAME_RESOURCE_IDS[pos]) {
- case R.string.pattern_solid:
+ case com.example.common_ui.R.string.pattern_solid:
return null;
- case R.string.pattern_dotted:
+ case com.example.common_ui.R.string.pattern_dotted:
return PATTERN_DOTTED;
- case R.string.pattern_dashed:
+ case com.example.common_ui.R.string.pattern_dashed:
return PATTERN_DASHED;
- case R.string.pattern_mixed:
+ case com.example.common_ui.R.string.pattern_mixed:
return PATTERN_MIXED;
default:
return null;
@@ -276,7 +276,7 @@ private List getSelectedPattern(int pos) {
@Override
public void onItemSelected(AdapterView> parent, View view, int pos, long id) {
- if (parent.getId() == R.id.strokePatternSpinner) {
+ if (parent.getId() == com.example.common_ui.R.id.strokePatternSpinner) {
for (DraggableCircle draggableCircle : circles) {
draggableCircle.setStrokePattern(getSelectedPattern(pos));
}
@@ -345,7 +345,7 @@ private void onMarkerMoved(Marker marker) {
@Override
public void onMapLongClick(LatLng point) {
// We know the center, let's place the outline at a point 3/4 along the view.
- View view = getSupportFragmentManager().findFragmentById(R.id.map).getView();
+ View view = getSupportFragmentManager().findFragmentById(com.example.common_ui.R.id.map).getView();
LatLng radiusLatLng = map.getProjection().fromScreenLocation(new Point(
view.getHeight() * 3 / 4, view.getWidth() * 3 / 4));
diff --git a/ApiDemos/java/app/src/v3/java/com/example/mapdemo/CloudBasedMapStylingDemoActivity.java b/ApiDemos/project/java-app/src/v3/java/com/example/mapdemo/CloudBasedMapStylingDemoActivity.java
similarity index 83%
rename from ApiDemos/java/app/src/v3/java/com/example/mapdemo/CloudBasedMapStylingDemoActivity.java
rename to ApiDemos/project/java-app/src/v3/java/com/example/mapdemo/CloudBasedMapStylingDemoActivity.java
index bd4b7f915..e7864f99f 100644
--- a/ApiDemos/java/app/src/v3/java/com/example/mapdemo/CloudBasedMapStylingDemoActivity.java
+++ b/ApiDemos/project/java-app/src/v3/java/com/example/mapdemo/CloudBasedMapStylingDemoActivity.java
@@ -41,9 +41,9 @@ protected void onCreate(Bundle savedInstanceState) {
// The underlying style the map will use has been set in the layout
// `cloud_styling_basic_demo` under the SupportMapFragment's `map:mapId` attribute.
- setContentView(R.layout.cloud_styling_basic_demo);
+ setContentView(com.example.common_ui.R.layout.cloud_styling_basic_demo);
SupportMapFragment mapFragment =
- (SupportMapFragment) getSupportFragmentManager().findFragmentById(R.id.map);
+ (SupportMapFragment) getSupportFragmentManager().findFragmentById(com.example.common_ui.R.id.map);
mapFragment.getMapAsync(this);
setUpButtonListeners();
@@ -56,13 +56,13 @@ public void onMapReady(GoogleMap map) {
}
private void setUpButtonListeners() {
- findViewById(R.id.styling_normal_mode).setOnClickListener(
+ findViewById(com.example.common_ui.R.id.styling_normal_mode).setOnClickListener(
v -> setMapType(GoogleMap.MAP_TYPE_NORMAL));
- findViewById(R.id.styling_satellite_mode).setOnClickListener(
+ findViewById(com.example.common_ui.R.id.styling_satellite_mode).setOnClickListener(
v -> setMapType(GoogleMap.MAP_TYPE_SATELLITE));
- findViewById(R.id.styling_hybrid_mode).setOnClickListener(
+ findViewById(com.example.common_ui.R.id.styling_hybrid_mode).setOnClickListener(
v -> setMapType(GoogleMap.MAP_TYPE_HYBRID));
- findViewById(R.id.styling_terrain_mode).setOnClickListener(
+ findViewById(com.example.common_ui.R.id.styling_terrain_mode).setOnClickListener(
v -> setMapType(GoogleMap.MAP_TYPE_TERRAIN));
}
diff --git a/ApiDemos/java/app/src/v3/java/com/example/mapdemo/DemoDetails.java b/ApiDemos/project/java-app/src/v3/java/com/example/mapdemo/DemoDetails.java
similarity index 100%
rename from ApiDemos/java/app/src/v3/java/com/example/mapdemo/DemoDetails.java
rename to ApiDemos/project/java-app/src/v3/java/com/example/mapdemo/DemoDetails.java
diff --git a/ApiDemos/project/java-app/src/v3/java/com/example/mapdemo/DemoDetailsList.java b/ApiDemos/project/java-app/src/v3/java/com/example/mapdemo/DemoDetailsList.java
new file mode 100755
index 000000000..b93847ca2
--- /dev/null
+++ b/ApiDemos/project/java-app/src/v3/java/com/example/mapdemo/DemoDetailsList.java
@@ -0,0 +1,150 @@
+// Copyright 2025 Google LLC
+//
+// Licensed under the Apache License, Version 2.0 (the "License");
+// you may not use this file except in compliance with the License.
+// You may obtain a copy of the License at
+//
+// http://www.apache.org/licenses/LICENSE-2.0
+//
+// Unless required by applicable law or agreed to in writing, software
+// distributed under the License is distributed on an "AS IS" BASIS,
+// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+// See the License for the specific language governing permissions and
+// limitations under the License.
+
+
+package com.example.mapdemo;
+
+import com.example.mapdemo.polyline.PolylineDemoActivity;
+
+/**
+ * A list of all the demos we have available.
+ */
+public final class DemoDetailsList {
+
+ /**
+ * This class should not be instantiated.
+ */
+ private DemoDetailsList() {
+ }
+
+ public static final DemoDetails[] DEMOS = {
+ new DemoDetails(com.example.common_ui.R.string.basic_map_demo_label,
+ com.example.common_ui.R.string.basic_map_demo_description,
+ BasicMapDemoActivity.class),
+ new DemoDetails(com.example.common_ui.R.string.camera_demo_label,
+ com.example.common_ui.R.string.camera_demo_description,
+ CameraDemoActivity.class),
+ new DemoDetails(com.example.common_ui.R.string.camera_clamping_demo_label,
+ com.example.common_ui.R.string.camera_clamping_demo_description,
+ CameraClampingDemoActivity.class),
+ new DemoDetails(com.example.common_ui.R.string.circle_demo_label,
+ com.example.common_ui.R.string.circle_demo_description,
+ CircleDemoActivity.class),
+ new DemoDetails(com.example.common_ui.R.string.cloud_styling_label,
+ com.example.common_ui.R.string.cloud_styling_description,
+ CloudBasedMapStylingDemoActivity.class),
+ new DemoDetails(com.example.common_ui.R.string.events_demo_label,
+ com.example.common_ui.R.string.events_demo_description,
+ EventsDemoActivity.class),
+ new DemoDetails(com.example.common_ui.R.string.ground_overlay_demo_label,
+ com.example.common_ui.R.string.ground_overlay_demo_description,
+ GroundOverlayDemoActivity.class),
+ new DemoDetails(com.example.common_ui.R.string.indoor_demo_label,
+ com.example.common_ui.R.string.indoor_demo_description,
+ IndoorDemoActivity.class),
+ new DemoDetails(com.example.common_ui.R.string.layers_demo_label,
+ com.example.common_ui.R.string.layers_demo_description,
+ LayersDemoActivity.class),
+ new DemoDetails(com.example.common_ui.R.string.lite_demo_label,
+ com.example.common_ui.R.string.lite_demo_description,
+ LiteDemoActivity.class),
+ new DemoDetails(com.example.common_ui.R.string.lite_list_demo_label,
+ com.example.common_ui.R.string.lite_list_demo_description,
+ LiteListDemoActivity.class),
+ new DemoDetails(com.example.common_ui.R.string.location_source_demo_label,
+ com.example.common_ui.R.string.location_source_demo_description,
+ LocationSourceDemoActivity.class),
+ new DemoDetails(com.example.common_ui.R.string.map_in_pager_demo_label,
+ com.example.common_ui.R.string.map_in_pager_demo_description,
+ MapInPagerDemoActivity.class),
+ new DemoDetails(com.example.common_ui.R.string.marker_demo_label,
+ com.example.common_ui.R.string.marker_demo_description,
+ MarkerDemoActivity.class),
+ new DemoDetails(com.example.common_ui.R.string.marker_collision_label,
+ com.example.common_ui.R.string.marker_collision_description,
+ MarkerCollisionDemoActivity.class),
+ new DemoDetails(com.example.common_ui.R.string.marker_close_info_window_on_retap_demo_label,
+ com.example.common_ui.R.string.marker_close_info_window_on_retap_demo_description,
+ MarkerCloseInfoWindowOnRetapDemoActivity.class),
+ new DemoDetails(com.example.common_ui.R.string.polyline_demo_label,
+ com.example.common_ui.R.string.polyline_demo_description,
+ PolylineDemoActivity.class),
+ new DemoDetails(com.example.common_ui.R.string.multi_map_demo_label,
+ com.example.common_ui.R.string.multi_map_demo_description,
+ MultiMapDemoActivity.class),
+ new DemoDetails(com.example.common_ui.R.string.my_location_demo_label,
+ com.example.common_ui.R.string.my_location_demo_description,
+ MyLocationDemoActivity.class),
+ new DemoDetails(com.example.common_ui.R.string.options_demo_label,
+ com.example.common_ui.R.string.options_demo_description,
+ OptionsDemoActivity.class),
+ new DemoDetails(com.example.common_ui.R.string.polygon_demo_label,
+ com.example.common_ui.R.string.polygon_demo_description,
+ PolygonDemoActivity.class),
+ new DemoDetails(com.example.common_ui.R.string.polyline_demo_label,
+ com.example.common_ui.R.string.polyline_demo_description,
+ PolylineDemoActivity.class),
+ new DemoDetails(com.example.common_ui.R.string.programmatic_demo_label,
+ com.example.common_ui.R.string.programmatic_demo_description,
+ ProgrammaticDemoActivity.class),
+ new DemoDetails(com.example.common_ui.R.string.raw_map_view_demo_label,
+ com.example.common_ui.R.string.raw_map_view_demo_description,
+ RawMapViewDemoActivity.class),
+ new DemoDetails(com.example.common_ui.R.string.retain_map_demo_label,
+ com.example.common_ui.R.string.retain_map_demo_description,
+ RetainMapDemoActivity.class),
+ new DemoDetails(com.example.common_ui.R.string.save_state_demo_label,
+ com.example.common_ui.R.string.save_state_demo_description,
+ SaveStateDemoActivity.class),
+ new DemoDetails(com.example.common_ui.R.string.snapshot_demo_label,
+ com.example.common_ui.R.string.snapshot_demo_description,
+ SnapshotDemoActivity.class),
+ new DemoDetails(com.example.common_ui.R.string.split_street_view_panorama_and_map_demo_label,
+ com.example.common_ui.R.string.split_street_view_panorama_and_map_demo_description,
+ SplitStreetViewPanoramaAndMapDemoActivity.class),
+ new DemoDetails(com.example.common_ui.R.string.street_view_panorama_basic_demo_label,
+ com.example.common_ui.R.string.street_view_panorama_basic_demo_description,
+ StreetViewPanoramaBasicDemoActivity.class),
+ new DemoDetails(com.example.common_ui.R.string.street_view_panorama_events_demo_label,
+ com.example.common_ui.R.string.street_view_panorama_events_demo_description,
+ StreetViewPanoramaEventsDemoActivity.class),
+ new DemoDetails(com.example.common_ui.R.string.street_view_panorama_navigation_demo_label,
+ com.example.common_ui.R.string.street_view_panorama_navigation_demo_description,
+ StreetViewPanoramaNavigationDemoActivity.class),
+ new DemoDetails(com.example.common_ui.R.string.street_view_panorama_options_demo_label,
+ com.example.common_ui.R.string.street_view_panorama_options_demo_description,
+ StreetViewPanoramaOptionsDemoActivity.class),
+ new DemoDetails(com.example.common_ui.R.string.street_view_panorama_view_demo_label,
+ com.example.common_ui.R.string.street_view_panorama_view_demo_description,
+ StreetViewPanoramaViewDemoActivity.class),
+ new DemoDetails(com.example.common_ui.R.string.styled_map_demo_label,
+ com.example.common_ui.R.string.styled_map_demo_description,
+ StyledMapDemoActivity.class),
+ new DemoDetails(com.example.common_ui.R.string.tags_demo_label,
+ com.example.common_ui.R.string.tags_demo_description,
+ TagsDemoActivity.class),
+ new DemoDetails(com.example.common_ui.R.string.tile_coordinate_demo_label,
+ com.example.common_ui.R.string.tile_coordinate_demo_description,
+ TileCoordinateDemoActivity.class),
+ new DemoDetails(com.example.common_ui.R.string.tile_overlay_demo_label,
+ com.example.common_ui.R.string.tile_overlay_demo_description,
+ TileOverlayDemoActivity.class),
+ new DemoDetails(com.example.common_ui.R.string.ui_settings_demo_label,
+ com.example.common_ui.R.string.ui_settings_demo_description,
+ UiSettingsDemoActivity.class),
+ new DemoDetails(com.example.common_ui.R.string.visible_region_demo_label,
+ com.example.common_ui.R.string.visible_region_demo_description,
+ VisibleRegionDemoActivity.class),
+ };
+}
diff --git a/ApiDemos/java/app/src/v3/java/com/example/mapdemo/EventsDemoActivity.java b/ApiDemos/project/java-app/src/v3/java/com/example/mapdemo/EventsDemoActivity.java
similarity index 89%
rename from ApiDemos/java/app/src/v3/java/com/example/mapdemo/EventsDemoActivity.java
rename to ApiDemos/project/java-app/src/v3/java/com/example/mapdemo/EventsDemoActivity.java
index 41e79063a..25ec84b88 100644
--- a/ApiDemos/java/app/src/v3/java/com/example/mapdemo/EventsDemoActivity.java
+++ b/ApiDemos/project/java-app/src/v3/java/com/example/mapdemo/EventsDemoActivity.java
@@ -42,13 +42,13 @@ public class EventsDemoActivity extends AppCompatActivity
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
- setContentView(R.layout.events_demo);
+ setContentView(com.example.common_ui.R.layout.events_demo);
- tapTextView = findViewById(R.id.tap_text);
- cameraTextView = findViewById(R.id.camera_text);
+ tapTextView = findViewById(com.example.common_ui.R.id.tap_text);
+ cameraTextView = findViewById(com.example.common_ui.R.id.camera_text);
SupportMapFragment mapFragment =
- (SupportMapFragment) getSupportFragmentManager().findFragmentById(R.id.map);
+ (SupportMapFragment) getSupportFragmentManager().findFragmentById(com.example.common_ui.R.id.map);
mapFragment.getMapAsync(this);
}
diff --git a/ApiDemos/java/app/src/v3/java/com/example/mapdemo/FeatureView.java b/ApiDemos/project/java-app/src/v3/java/com/example/mapdemo/FeatureView.java
similarity index 85%
rename from ApiDemos/java/app/src/v3/java/com/example/mapdemo/FeatureView.java
rename to ApiDemos/project/java-app/src/v3/java/com/example/mapdemo/FeatureView.java
index b67d91dd5..a9250fe24 100755
--- a/ApiDemos/java/app/src/v3/java/com/example/mapdemo/FeatureView.java
+++ b/ApiDemos/project/java-app/src/v3/java/com/example/mapdemo/FeatureView.java
@@ -34,7 +34,7 @@ public FeatureView(Context context) {
LayoutInflater layoutInflater =
(LayoutInflater) context.getSystemService(Context.LAYOUT_INFLATER_SERVICE);
- layoutInflater.inflate(R.layout.feature, this);
+ layoutInflater.inflate(com.example.common_ui.R.layout.feature, this);
}
/**
@@ -43,7 +43,7 @@ public FeatureView(Context context) {
* @param titleId the resource id of the title of the demo
*/
public synchronized void setTitleId(int titleId) {
- ((TextView) (findViewById(R.id.title))).setText(titleId);
+ ((TextView) (findViewById(com.example.common_ui.R.id.title))).setText(titleId);
}
/**
@@ -52,7 +52,7 @@ public synchronized void setTitleId(int titleId) {
* @param descriptionId the resource id of the description of the demo
*/
public synchronized void setDescriptionId(int descriptionId) {
- ((TextView) (findViewById(R.id.description))).setText(descriptionId);
+ ((TextView) (findViewById(com.example.common_ui.R.id.description))).setText(descriptionId);
}
}
diff --git a/ApiDemos/java/app/src/v3/java/com/example/mapdemo/GroundOverlayDemoActivity.java b/ApiDemos/project/java-app/src/v3/java/com/example/mapdemo/GroundOverlayDemoActivity.java
similarity index 90%
rename from ApiDemos/java/app/src/v3/java/com/example/mapdemo/GroundOverlayDemoActivity.java
rename to ApiDemos/project/java-app/src/v3/java/com/example/mapdemo/GroundOverlayDemoActivity.java
index d5c2b61db..9939db7a0 100644
--- a/ApiDemos/java/app/src/v3/java/com/example/mapdemo/GroundOverlayDemoActivity.java
+++ b/ApiDemos/project/java-app/src/v3/java/com/example/mapdemo/GroundOverlayDemoActivity.java
@@ -63,14 +63,14 @@ public class GroundOverlayDemoActivity extends AppCompatActivity
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
- setContentView(R.layout.ground_overlay_demo);
+ setContentView(com.example.common_ui.R.layout.ground_overlay_demo);
- transparencyBar = findViewById(R.id.transparencySeekBar);
+ transparencyBar = findViewById(com.example.common_ui.R.id.transparencySeekBar);
transparencyBar.setMax(TRANSPARENCY_MAX);
transparencyBar.setProgress(0);
SupportMapFragment mapFragment =
- (SupportMapFragment) getSupportFragmentManager().findFragmentById(R.id.map);
+ (SupportMapFragment) getSupportFragmentManager().findFragmentById(com.example.common_ui.R.id.map);
mapFragment.getMapAsync(this);
}
@@ -82,8 +82,8 @@ public void onMapReady(GoogleMap map) {
map.moveCamera(CameraUpdateFactory.newLatLngZoom(NEWARK, 11));
images.clear();
- images.add(BitmapDescriptorFactory.fromResource(R.drawable.newark_nj_1922));
- images.add(BitmapDescriptorFactory.fromResource(R.drawable.newark_prudential_sunny));
+ images.add(BitmapDescriptorFactory.fromResource(com.example.common_ui.R.drawable.newark_nj_1922));
+ images.add(BitmapDescriptorFactory.fromResource(com.example.common_ui.R.drawable.newark_prudential_sunny));
// Add a small, rotated overlay that is clickable by default
// (set by the initial state of the checkbox.)
@@ -91,7 +91,7 @@ public void onMapReady(GoogleMap map) {
.image(images.get(1)).anchor(0, 1)
.position(NEAR_NEWARK, 4300f, 3025f)
.bearing(30)
- .clickable(((CheckBox) findViewById(R.id.toggleClickability)).isChecked()));
+ .clickable(((CheckBox) findViewById(com.example.common_ui.R.id.toggleClickability)).isChecked()));
// Add a large overlay at Newark on top of the smaller overlay.
groundOverlay = map.addGroundOverlay(new GroundOverlayOptions()
diff --git a/ApiDemos/java/app/src/v3/java/com/example/mapdemo/IndoorDemoActivity.java b/ApiDemos/project/java-app/src/v3/java/com/example/mapdemo/IndoorDemoActivity.java
similarity index 95%
rename from ApiDemos/java/app/src/v3/java/com/example/mapdemo/IndoorDemoActivity.java
rename to ApiDemos/project/java-app/src/v3/java/com/example/mapdemo/IndoorDemoActivity.java
index 072362d51..73dea0b2a 100755
--- a/ApiDemos/java/app/src/v3/java/com/example/mapdemo/IndoorDemoActivity.java
+++ b/ApiDemos/project/java-app/src/v3/java/com/example/mapdemo/IndoorDemoActivity.java
@@ -42,10 +42,10 @@ public class IndoorDemoActivity extends AppCompatActivity implements OnMapReadyC
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
- setContentView(R.layout.indoor_demo);
+ setContentView(com.example.common_ui.R.layout.indoor_demo);
SupportMapFragment mapFragment =
- (SupportMapFragment) getSupportFragmentManager().findFragmentById(R.id.map);
+ (SupportMapFragment) getSupportFragmentManager().findFragmentById(com.example.common_ui.R.id.map);
mapFragment.getMapAsync(this);
}
@@ -127,7 +127,7 @@ public void onHigherLevel(View view) {
}
private void setText(String message) {
- TextView text = findViewById(R.id.top_text);
+ TextView text = findViewById(com.example.common_ui.R.id.top_text);
text.setText(message);
}
}
diff --git a/ApiDemos/java/app/src/v3/java/com/example/mapdemo/LayersDemoActivity.java b/ApiDemos/project/java-app/src/v3/java/com/example/mapdemo/LayersDemoActivity.java
similarity index 83%
rename from ApiDemos/java/app/src/v3/java/com/example/mapdemo/LayersDemoActivity.java
rename to ApiDemos/project/java-app/src/v3/java/com/example/mapdemo/LayersDemoActivity.java
index 842b4d0c3..21a8379b7 100755
--- a/ApiDemos/java/app/src/v3/java/com/example/mapdemo/LayersDemoActivity.java
+++ b/ApiDemos/project/java-app/src/v3/java/com/example/mapdemo/LayersDemoActivity.java
@@ -71,22 +71,22 @@ public class LayersDemoActivity extends AppCompatActivity
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
- setContentView(R.layout.layers_demo);
+ setContentView(com.example.common_ui.R.layout.layers_demo);
- mSpinner = (Spinner) findViewById(R.id.layers_spinner);
+ mSpinner = (Spinner) findViewById(com.example.common_ui.R.id.layers_spinner);
ArrayAdapter adapter = ArrayAdapter.createFromResource(
- this, R.array.layers_array, android.R.layout.simple_spinner_item);
- adapter.setDropDownViewResource(android.R.layout.simple_spinner_dropdown_item);
+ this, R.array.layers_array, android.com.example.common_ui.R.layout.simple_spinner_item);
+ adapter.setDropDownViewResource(android.com.example.common_ui.R.layout.simple_spinner_dropdown_item);
mSpinner.setAdapter(adapter);
mSpinner.setOnItemSelectedListener(this);
- mTrafficCheckbox = (CheckBox) findViewById(R.id.traffic);
- mMyLocationCheckbox = (CheckBox) findViewById(R.id.my_location);
- mBuildingsCheckbox = (CheckBox) findViewById(R.id.buildings);
- mIndoorCheckbox = (CheckBox) findViewById(R.id.indoor);
+ mTrafficCheckbox = (CheckBox) findViewById(com.example.common_ui.R.id.traffic);
+ mMyLocationCheckbox = (CheckBox) findViewById(com.example.common_ui.R.id.my_location);
+ mBuildingsCheckbox = (CheckBox) findViewById(com.example.common_ui.R.id.buildings);
+ mIndoorCheckbox = (CheckBox) findViewById(com.example.common_ui.R.id.indoor);
SupportMapFragment mapFragment =
- (SupportMapFragment) getSupportFragmentManager().findFragmentById(R.id.map);
+ (SupportMapFragment) getSupportFragmentManager().findFragmentById(com.example.common_ui.R.id.map);
mapFragment.getMapAsync(this);
}
@@ -102,7 +102,7 @@ public void onMapReady(GoogleMap map) {
private boolean checkReady() {
if (mMap == null) {
- Toast.makeText(this, R.string.map_not_ready, Toast.LENGTH_SHORT).show();
+ Toast.makeText(this, com.example.common_ui.R.string.map_not_ready, Toast.LENGTH_SHORT).show();
return false;
}
return true;
@@ -219,17 +219,17 @@ private void updateMapType() {
}
String layerName = ((String) mSpinner.getSelectedItem());
- if (layerName.equals(getString(R.string.normal))) {
+ if (layerName.equals(getString(com.example.common_ui.R.string.normal))) {
mMap.setMapType(MAP_TYPE_NORMAL);
- } else if (layerName.equals(getString(R.string.hybrid))) {
+ } else if (layerName.equals(getString(com.example.common_ui.R.string.hybrid))) {
mMap.setMapType(MAP_TYPE_HYBRID);
- } else if (layerName.equals(getString(R.string.satellite))) {
+ } else if (layerName.equals(getString(com.example.common_ui.R.string.satellite))) {
mMap.setMapType(MAP_TYPE_SATELLITE);
- } else if (layerName.equals(getString(R.string.terrain))) {
+ } else if (layerName.equals(getString(com.example.common_ui.R.string.terrain))) {
mMap.setMapType(MAP_TYPE_TERRAIN);
- } else if (layerName.equals(getString(R.string.none_map))) {
+ } else if (layerName.equals(getString(com.example.common_ui.R.string.none_map))) {
mMap.setMapType(MAP_TYPE_NONE);
} else {
Log.i("LDA", "Error setting layer with name " + layerName);
diff --git a/ApiDemos/java/app/src/v3/java/com/example/mapdemo/LiteDemoActivity.java b/ApiDemos/project/java-app/src/v3/java/com/example/mapdemo/LiteDemoActivity.java
similarity index 98%
rename from ApiDemos/java/app/src/v3/java/com/example/mapdemo/LiteDemoActivity.java
rename to ApiDemos/project/java-app/src/v3/java/com/example/mapdemo/LiteDemoActivity.java
index 99881796c..4a59466ba 100755
--- a/ApiDemos/java/app/src/v3/java/com/example/mapdemo/LiteDemoActivity.java
+++ b/ApiDemos/project/java-app/src/v3/java/com/example/mapdemo/LiteDemoActivity.java
@@ -67,11 +67,11 @@ protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
// Set the layout
- setContentView(R.layout.lite_demo);
+ setContentView(com.example.common_ui.R.layout.lite_demo);
// Get the map and register for the ready callback
SupportMapFragment mapFragment =
- (SupportMapFragment) getSupportFragmentManager().findFragmentById(R.id.map);
+ (SupportMapFragment) getSupportFragmentManager().findFragmentById(com.example.common_ui.R.id.map);
new OnMapAndViewReadyListener(mapFragment, this);
}
diff --git a/ApiDemos/java/app/src/v3/java/com/example/mapdemo/LiteListDemoActivity.java b/ApiDemos/project/java-app/src/v3/java/com/example/mapdemo/LiteListDemoActivity.java
similarity index 95%
rename from ApiDemos/java/app/src/v3/java/com/example/mapdemo/LiteListDemoActivity.java
rename to ApiDemos/project/java-app/src/v3/java/com/example/mapdemo/LiteListDemoActivity.java
index 60b193ae8..15dfd4eb9 100755
--- a/ApiDemos/java/app/src/v3/java/com/example/mapdemo/LiteListDemoActivity.java
+++ b/ApiDemos/project/java-app/src/v3/java/com/example/mapdemo/LiteListDemoActivity.java
@@ -50,13 +50,13 @@ public class LiteListDemoActivity extends AppCompatActivity {
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
- setContentView(R.layout.lite_list_demo);
+ setContentView(com.example.common_ui.R.layout.lite_list_demo);
mGridLayoutManager = new GridLayoutManager(this, 2);
mLinearLayoutManager = new LinearLayoutManager(this);
// Set up the RecyclerView
- mRecyclerView = findViewById(R.id.recycler_view);
+ mRecyclerView = findViewById(com.example.common_ui.R.id.recycler_view);
mRecyclerView.setHasFixedSize(true);
mRecyclerView.setLayoutManager(mLinearLayoutManager);
mRecyclerView.setAdapter(new MapAdapter(LIST_LOCATIONS));
@@ -73,10 +73,10 @@ public boolean onCreateOptionsMenu(Menu menu) {
@Override
public boolean onOptionsItemSelected(MenuItem item) {
switch (item.getItemId()) {
- case R.id.layout_linear:
+ case com.example.common_ui.R.id.layout_linear:
mRecyclerView.setLayoutManager(mLinearLayoutManager);
break;
- case R.id.layout_grid:
+ case com.example.common_ui.R.id.layout_grid:
mRecyclerView.setLayoutManager(mGridLayoutManager);
break;
}
@@ -101,7 +101,7 @@ private MapAdapter(NamedLocation[] locations) {
@Override
public ViewHolder onCreateViewHolder(ViewGroup parent, int viewType) {
return new ViewHolder(LayoutInflater.from(parent.getContext())
- .inflate(R.layout.lite_list_demo_row, parent, false));
+ .inflate(com.example.common_ui.R.layout.lite_list_demo_row, parent, false));
}
/**
@@ -140,8 +140,8 @@ class ViewHolder extends RecyclerView.ViewHolder implements OnMapReadyCallback {
private ViewHolder(View itemView) {
super(itemView);
layout = itemView;
- mapView = layout.findViewById(R.id.lite_listrow_map);
- title = layout.findViewById(R.id.lite_listrow_text);
+ mapView = layout.findViewById(com.example.common_ui.R.id.lite_listrow_map);
+ title = layout.findViewById(com.example.common_ui.R.id.lite_listrow_text);
if (mapView != null) {
// Initialise the MapView
mapView.onCreate(null);
diff --git a/ApiDemos/java/app/src/v3/java/com/example/mapdemo/LocationSourceDemoActivity.java b/ApiDemos/project/java-app/src/v3/java/com/example/mapdemo/LocationSourceDemoActivity.java
similarity index 97%
rename from ApiDemos/java/app/src/v3/java/com/example/mapdemo/LocationSourceDemoActivity.java
rename to ApiDemos/project/java-app/src/v3/java/com/example/mapdemo/LocationSourceDemoActivity.java
index 52b3a797f..d89155b95 100644
--- a/ApiDemos/java/app/src/v3/java/com/example/mapdemo/LocationSourceDemoActivity.java
+++ b/ApiDemos/project/java-app/src/v3/java/com/example/mapdemo/LocationSourceDemoActivity.java
@@ -86,12 +86,12 @@ public void onResume() {
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
- setContentView(R.layout.basic_demo);
+ setContentView(com.example.common_ui.R.layout.basic_demo);
mLocationSource = new LongPressLocationSource();
SupportMapFragment mapFragment =
- (SupportMapFragment) getSupportFragmentManager().findFragmentById(R.id.map);
+ (SupportMapFragment) getSupportFragmentManager().findFragmentById(com.example.common_ui.R.id.map);
mapFragment.getMapAsync(this);
}
diff --git a/ApiDemos/java/app/src/v3/java/com/example/mapdemo/MainActivity.java b/ApiDemos/project/java-app/src/v3/java/com/example/mapdemo/MainActivity.java
similarity index 91%
rename from ApiDemos/java/app/src/v3/java/com/example/mapdemo/MainActivity.java
rename to ApiDemos/project/java-app/src/v3/java/com/example/mapdemo/MainActivity.java
index ad79897f1..bb9a06784 100644
--- a/ApiDemos/java/app/src/v3/java/com/example/mapdemo/MainActivity.java
+++ b/ApiDemos/project/java-app/src/v3/java/com/example/mapdemo/MainActivity.java
@@ -47,7 +47,7 @@ private static class CustomArrayAdapter extends ArrayAdapter {
* @param demos An array containing the details of the demos to be displayed.
*/
public CustomArrayAdapter(Context context, DemoDetails[] demos) {
- super(context, R.layout.feature, R.id.title, demos);
+ super(context, com.example.common_ui.R.layout.feature, com.example.common_ui.R.id.title, demos);
}
@Override
@@ -76,14 +76,14 @@ public View getView(int position, View convertView, ViewGroup parent) {
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
- setContentView(R.layout.main);
- ListView list = findViewById(R.id.list);
+ setContentView(com.example.common_ui.R.layout.main);
+ ListView list = findViewById(com.example.common_ui.R.id.list);
ListAdapter adapter = new CustomArrayAdapter(this, DemoDetailsList.DEMOS);
list.setAdapter(adapter);
list.setOnItemClickListener(this);
- list.setEmptyView(findViewById(R.id.empty));
+ list.setEmptyView(findViewById(com.example.common_ui.R.id.empty));
if (BuildConfig.MAPS_API_KEY.isEmpty()) {
Toast.makeText(this, "Add your own API key in secrets.properties as MAPS_API_KEY=YOUR_API_KEY", Toast.LENGTH_LONG).show();
diff --git a/ApiDemos/java/app/src/v3/java/com/example/mapdemo/MapInPagerDemoActivity.java b/ApiDemos/project/java-app/src/v3/java/com/example/mapdemo/MapInPagerDemoActivity.java
similarity index 91%
rename from ApiDemos/java/app/src/v3/java/com/example/mapdemo/MapInPagerDemoActivity.java
rename to ApiDemos/project/java-app/src/v3/java/com/example/mapdemo/MapInPagerDemoActivity.java
index ff436fc3a..5056d86bc 100755
--- a/ApiDemos/java/app/src/v3/java/com/example/mapdemo/MapInPagerDemoActivity.java
+++ b/ApiDemos/project/java-app/src/v3/java/com/example/mapdemo/MapInPagerDemoActivity.java
@@ -41,10 +41,10 @@ public class MapInPagerDemoActivity extends AppCompatActivity {
@Override
public void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
- setContentView(R.layout.map_in_pager_demo);
+ setContentView(com.example.common_ui.R.layout.map_in_pager_demo);
mAdapter = new MyAdapter(getSupportFragmentManager());
- mPager = (ViewPager) findViewById(R.id.pager);
+ mPager = (ViewPager) findViewById(com.example.common_ui.R.id.pager);
mPager.setAdapter(mAdapter);
// This is required to avoid a black flash when the map is loaded. The flash is due
@@ -57,7 +57,7 @@ public static class TextFragment extends Fragment {
@Override
public View onCreateView(LayoutInflater inflater, ViewGroup container, Bundle bundle) {
- return inflater.inflate(R.layout.text_fragment, container, false);
+ return inflater.inflate(com.example.common_ui.R.layout.text_fragment, container, false);
}
}
diff --git a/ApiDemos/java/app/src/v3/java/com/example/mapdemo/MarkerCloseInfoWindowOnRetapDemoActivity.java b/ApiDemos/project/java-app/src/v3/java/com/example/mapdemo/MarkerCloseInfoWindowOnRetapDemoActivity.java
similarity index 97%
rename from ApiDemos/java/app/src/v3/java/com/example/mapdemo/MarkerCloseInfoWindowOnRetapDemoActivity.java
rename to ApiDemos/project/java-app/src/v3/java/com/example/mapdemo/MarkerCloseInfoWindowOnRetapDemoActivity.java
index fd2fac36f..2a7273559 100644
--- a/ApiDemos/java/app/src/v3/java/com/example/mapdemo/MarkerCloseInfoWindowOnRetapDemoActivity.java
+++ b/ApiDemos/project/java-app/src/v3/java/com/example/mapdemo/MarkerCloseInfoWindowOnRetapDemoActivity.java
@@ -52,10 +52,10 @@ public class MarkerCloseInfoWindowOnRetapDemoActivity extends AppCompatActivity
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
- setContentView(R.layout.marker_close_info_window_on_retap_demo);
+ setContentView(com.example.common_ui.R.layout.marker_close_info_window_on_retap_demo);
SupportMapFragment mapFragment =
- (SupportMapFragment) getSupportFragmentManager().findFragmentById(R.id.map);
+ (SupportMapFragment) getSupportFragmentManager().findFragmentById(com.example.common_ui.R.id.map);
new OnMapAndViewReadyListener(mapFragment, this);
}
diff --git a/ApiDemos/java/app/src/v3/java/com/example/mapdemo/MarkerCollisionDemoActivity.java b/ApiDemos/project/java-app/src/v3/java/com/example/mapdemo/MarkerCollisionDemoActivity.java
similarity index 96%
rename from ApiDemos/java/app/src/v3/java/com/example/mapdemo/MarkerCollisionDemoActivity.java
rename to ApiDemos/project/java-app/src/v3/java/com/example/mapdemo/MarkerCollisionDemoActivity.java
index dbced934d..a4990abe6 100644
--- a/ApiDemos/java/app/src/v3/java/com/example/mapdemo/MarkerCollisionDemoActivity.java
+++ b/ApiDemos/project/java-app/src/v3/java/com/example/mapdemo/MarkerCollisionDemoActivity.java
@@ -37,10 +37,10 @@ public class MarkerCollisionDemoActivity extends AppCompatActivity implements On
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
- setContentView(R.layout.marker_collision_demo);
+ setContentView(com.example.common_ui.R.layout.marker_collision_demo);
SupportMapFragment mapFragment =
- (SupportMapFragment) getSupportFragmentManager().findFragmentById(R.id.map);
+ (SupportMapFragment) getSupportFragmentManager().findFragmentById(com.example.common_ui.R.id.map);
mapFragment.getMapAsync(this);
}
diff --git a/ApiDemos/java/app/src/v3/java/com/example/mapdemo/MarkerDemoActivity.java b/ApiDemos/project/java-app/src/v3/java/com/example/mapdemo/MarkerDemoActivity.java
similarity index 89%
rename from ApiDemos/java/app/src/v3/java/com/example/mapdemo/MarkerDemoActivity.java
rename to ApiDemos/project/java-app/src/v3/java/com/example/mapdemo/MarkerDemoActivity.java
index fba07ed4e..79c5a1f64 100644
--- a/ApiDemos/java/app/src/v3/java/com/example/mapdemo/MarkerDemoActivity.java
+++ b/ApiDemos/project/java-app/src/v3/java/com/example/mapdemo/MarkerDemoActivity.java
@@ -97,13 +97,13 @@ class CustomInfoWindowAdapter implements InfoWindowAdapter {
private final View mContents;
CustomInfoWindowAdapter() {
- mWindow = getLayoutInflater().inflate(R.layout.custom_info_window, null);
- mContents = getLayoutInflater().inflate(R.layout.custom_info_contents, null);
+ mWindow = getLayoutInflater().inflate(com.example.common_ui.R.layout.custom_info_window, null);
+ mContents = getLayoutInflater().inflate(com.example.common_ui.R.layout.custom_info_contents, null);
}
@Override
public View getInfoWindow(Marker marker) {
- if (mOptions.getCheckedRadioButtonId() != R.id.custom_info_window) {
+ if (mOptions.getCheckedRadioButtonId() != com.example.common_ui.R.id.custom_info_window) {
// This means that getInfoContents will be called.
return null;
}
@@ -113,7 +113,7 @@ public View getInfoWindow(Marker marker) {
@Override
public View getInfoContents(Marker marker) {
- if (mOptions.getCheckedRadioButtonId() != R.id.custom_info_contents) {
+ if (mOptions.getCheckedRadioButtonId() != com.example.common_ui.R.id.custom_info_contents) {
// This means that the default info contents will be used.
return null;
}
@@ -125,31 +125,31 @@ private void render(Marker marker, View view) {
int badge;
// Use the equals() method on a Marker to check for equals. Do not use ==.
if (marker.equals(mBrisbane)) {
- badge = R.drawable.badge_qld;
+ badge = com.example.common_ui.R.drawable.badge_qld;
} else if (marker.equals(mAdelaide)) {
- badge = R.drawable.badge_sa;
+ badge = com.example.common_ui.R.drawable.badge_sa;
} else if (marker.equals(mSydney)) {
- badge = R.drawable.badge_nsw;
+ badge = com.example.common_ui.R.drawable.badge_nsw;
} else if (marker.equals(mMelbourne)) {
- badge = R.drawable.badge_victoria;
+ badge = com.example.common_ui.R.drawable.badge_victoria;
} else if (marker.equals(mPerth)) {
- badge = R.drawable.badge_wa;
+ badge = com.example.common_ui.R.drawable.badge_wa;
} else if (marker.equals(mDarwin1)) {
- badge = R.drawable.badge_nt;
+ badge = com.example.common_ui.R.drawable.badge_nt;
} else if (marker.equals(mDarwin2)) {
- badge = R.drawable.badge_nt;
+ badge = com.example.common_ui.R.drawable.badge_nt;
} else if (marker.equals(mDarwin3)) {
- badge = R.drawable.badge_nt;
+ badge = com.example.common_ui.R.drawable.badge_nt;
} else if (marker.equals(mDarwin4)) {
- badge = R.drawable.badge_nt;
+ badge = com.example.common_ui.R.drawable.badge_nt;
} else {
// Passing 0 to setImageResource will clear the image view.
badge = 0;
}
- ((ImageView) view.findViewById(R.id.badge)).setImageResource(badge);
+ ((ImageView) view.findViewById(com.example.common_ui.R.id.badge)).setImageResource(badge);
String title = marker.getTitle();
- TextView titleUi = ((TextView) view.findViewById(R.id.title));
+ TextView titleUi = ((TextView) view.findViewById(com.example.common_ui.R.id.title));
if (title != null) {
// Spannable string allows us to edit the formatting of the text.
SpannableString titleText = new SpannableString(title);
@@ -160,7 +160,7 @@ private void render(Marker marker, View view) {
}
String snippet = marker.getSnippet();
- TextView snippetUi = ((TextView) view.findViewById(R.id.snippet));
+ TextView snippetUi = ((TextView) view.findViewById(com.example.common_ui.R.id.snippet));
if (snippet != null && snippet.length() > 12) {
SpannableString snippetText = new SpannableString(snippet);
snippetText.setSpan(new ForegroundColorSpan(Color.MAGENTA), 0, 10, 0);
@@ -211,17 +211,17 @@ private void render(Marker marker, View view) {
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
- setContentView(R.layout.marker_demo);
+ setContentView(com.example.common_ui.R.layout.marker_demo);
- mTopText = (TextView) findViewById(R.id.top_text);
+ mTopText = (TextView) findViewById(com.example.common_ui.R.id.top_text);
- mRotationBar = (SeekBar) findViewById(R.id.rotationSeekBar);
+ mRotationBar = (SeekBar) findViewById(com.example.common_ui.R.id.rotationSeekBar);
mRotationBar.setMax(360);
mRotationBar.setOnSeekBarChangeListener(this);
- mFlatBox = (CheckBox) findViewById(R.id.flat);
+ mFlatBox = (CheckBox) findViewById(com.example.common_ui.R.id.flat);
- mOptions = (RadioGroup) findViewById(R.id.custom_info_window_options);
+ mOptions = (RadioGroup) findViewById(com.example.common_ui.R.id.custom_info_window_options);
mOptions.setOnCheckedChangeListener(new OnCheckedChangeListener() {
@Override
public void onCheckedChanged(RadioGroup group, int checkedId) {
@@ -233,7 +233,7 @@ public void onCheckedChanged(RadioGroup group, int checkedId) {
});
SupportMapFragment mapFragment =
- (SupportMapFragment) getSupportFragmentManager().findFragmentById(R.id.map);
+ (SupportMapFragment) getSupportFragmentManager().findFragmentById(com.example.common_ui.R.id.map);
new OnMapAndViewReadyListener(mapFragment, this);
}
@@ -286,7 +286,7 @@ private void addMarkersToMap() {
.position(SYDNEY)
.title("Sydney")
.snippet("Population: 4,627,300")
- .icon(BitmapDescriptorFactory.fromResource(R.drawable.arrow))
+ .icon(BitmapDescriptorFactory.fromResource(com.example.common_ui.R.drawable.arrow))
.infoWindowAnchor(0.5f, 0.5f));
// Creates a draggable marker. Long press to drag.
@@ -332,7 +332,7 @@ private void addMarkersToMap() {
// Vector drawable resource as a marker icon.
mMap.addMarker(new MarkerOptions()
.position(ALICE_SPRINGS)
- .icon(vectorToBitmap(R.drawable.ic_android, Color.parseColor("#A4C639")))
+ .icon(vectorToBitmap(com.example.common_ui.R.drawable.ic_android, Color.parseColor("#A4C639")))
.title("Alice Springs"));
// Creates a marker rainbow demonstrating how to create default marker icons of different
@@ -371,7 +371,7 @@ private BitmapDescriptor vectorToBitmap(@DrawableRes int id, @ColorInt int color
private boolean checkReady() {
if (mMap == null) {
- Toast.makeText(this, R.string.map_not_ready, Toast.LENGTH_SHORT).show();
+ Toast.makeText(this, com.example.common_ui.R.string.map_not_ready, Toast.LENGTH_SHORT).show();
return false;
}
return true;
diff --git a/ApiDemos/java/app/src/v3/java/com/example/mapdemo/MultiMapDemoActivity.java b/ApiDemos/project/java-app/src/v3/java/com/example/mapdemo/MultiMapDemoActivity.java
similarity index 93%
rename from ApiDemos/java/app/src/v3/java/com/example/mapdemo/MultiMapDemoActivity.java
rename to ApiDemos/project/java-app/src/v3/java/com/example/mapdemo/MultiMapDemoActivity.java
index 6382f7702..2ca7b1f45 100644
--- a/ApiDemos/java/app/src/v3/java/com/example/mapdemo/MultiMapDemoActivity.java
+++ b/ApiDemos/project/java-app/src/v3/java/com/example/mapdemo/MultiMapDemoActivity.java
@@ -26,6 +26,6 @@ public class MultiMapDemoActivity extends AppCompatActivity {
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
- setContentView(R.layout.multimap_demo);
+ setContentView(com.example.common_ui.R.layout.multimap_demo);
}
}
diff --git a/ApiDemos/java/app/src/v3/java/com/example/mapdemo/MyLocationDemoActivity.java b/ApiDemos/project/java-app/src/v3/java/com/example/mapdemo/MyLocationDemoActivity.java
similarity index 97%
rename from ApiDemos/java/app/src/v3/java/com/example/mapdemo/MyLocationDemoActivity.java
rename to ApiDemos/project/java-app/src/v3/java/com/example/mapdemo/MyLocationDemoActivity.java
index 545dabe98..fbdacad6b 100755
--- a/ApiDemos/java/app/src/v3/java/com/example/mapdemo/MyLocationDemoActivity.java
+++ b/ApiDemos/project/java-app/src/v3/java/com/example/mapdemo/MyLocationDemoActivity.java
@@ -62,10 +62,10 @@ public class MyLocationDemoActivity extends AppCompatActivity
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
- setContentView(R.layout.my_location_demo);
+ setContentView(com.example.common_ui.R.layout.my_location_demo);
SupportMapFragment mapFragment =
- (SupportMapFragment) getSupportFragmentManager().findFragmentById(R.id.map);
+ (SupportMapFragment) getSupportFragmentManager().findFragmentById(com.example.common_ui.R.id.map);
mapFragment.getMapAsync(this);
}
diff --git a/ApiDemos/java/app/src/v3/java/com/example/mapdemo/OnMapAndViewReadyListener.java b/ApiDemos/project/java-app/src/v3/java/com/example/mapdemo/OnMapAndViewReadyListener.java
similarity index 100%
rename from ApiDemos/java/app/src/v3/java/com/example/mapdemo/OnMapAndViewReadyListener.java
rename to ApiDemos/project/java-app/src/v3/java/com/example/mapdemo/OnMapAndViewReadyListener.java
diff --git a/ApiDemos/java/app/src/v3/java/com/example/mapdemo/OptionsDemoActivity.java b/ApiDemos/project/java-app/src/v3/java/com/example/mapdemo/OptionsDemoActivity.java
similarity index 93%
rename from ApiDemos/java/app/src/v3/java/com/example/mapdemo/OptionsDemoActivity.java
rename to ApiDemos/project/java-app/src/v3/java/com/example/mapdemo/OptionsDemoActivity.java
index c068eae6d..ca78523a1 100644
--- a/ApiDemos/java/app/src/v3/java/com/example/mapdemo/OptionsDemoActivity.java
+++ b/ApiDemos/project/java-app/src/v3/java/com/example/mapdemo/OptionsDemoActivity.java
@@ -25,6 +25,6 @@ public final class OptionsDemoActivity extends AppCompatActivity {
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
- setContentView(R.layout.options_demo);
+ setContentView(com.example.common_ui.R.layout.options_demo);
}
}
diff --git a/ApiDemos/java/app/src/v3/java/com/example/mapdemo/PermissionUtils.java b/ApiDemos/project/java-app/src/v3/java/com/example/mapdemo/PermissionUtils.java
similarity index 91%
rename from ApiDemos/java/app/src/v3/java/com/example/mapdemo/PermissionUtils.java
rename to ApiDemos/project/java-app/src/v3/java/com/example/mapdemo/PermissionUtils.java
index e87f1bd74..ddcf6aa35 100755
--- a/ApiDemos/java/app/src/v3/java/com/example/mapdemo/PermissionUtils.java
+++ b/ApiDemos/project/java-app/src/v3/java/com/example/mapdemo/PermissionUtils.java
@@ -91,8 +91,8 @@ public Dialog onCreateDialog(Bundle savedInstanceState) {
finishActivity = getArguments().getBoolean(ARGUMENT_FINISH_ACTIVITY);
return new AlertDialog.Builder(getActivity())
- .setMessage(R.string.location_permission_denied)
- .setPositiveButton(android.R.string.ok, null)
+ .setMessage(com.example.common_ui.R.string.location_permission_denied)
+ .setPositiveButton(android.com.example.common_ui.R.string.ok, null)
.create();
}
@@ -100,7 +100,7 @@ public Dialog onCreateDialog(Bundle savedInstanceState) {
public void onDismiss(DialogInterface dialog) {
super.onDismiss(dialog);
if (finishActivity) {
- Toast.makeText(getActivity(), R.string.permission_required_toast,
+ Toast.makeText(getActivity(), com.example.common_ui.R.string.permission_required_toast,
Toast.LENGTH_SHORT).show();
getActivity().finish();
}
@@ -151,8 +151,8 @@ public Dialog onCreateDialog(Bundle savedInstanceState) {
finishActivity = arguments.getBoolean(ARGUMENT_FINISH_ACTIVITY);
return new AlertDialog.Builder(getActivity())
- .setMessage(R.string.permission_rationale_location)
- .setPositiveButton(android.R.string.ok, new DialogInterface.OnClickListener() {
+ .setMessage(com.example.common_ui.R.string.permission_rationale_location)
+ .setPositiveButton(android.com.example.common_ui.R.string.ok, new DialogInterface.OnClickListener() {
@Override
public void onClick(DialogInterface dialog, int which) {
// After click on Ok, request the permission.
@@ -163,7 +163,7 @@ public void onClick(DialogInterface dialog, int which) {
finishActivity = false;
}
})
- .setNegativeButton(android.R.string.cancel, null)
+ .setNegativeButton(android.com.example.common_ui.R.string.cancel, null)
.create();
}
@@ -172,7 +172,7 @@ public void onDismiss(DialogInterface dialog) {
super.onDismiss(dialog);
if (finishActivity) {
Toast.makeText(getActivity(),
- R.string.permission_required_toast,
+ com.example.common_ui.R.string.permission_required_toast,
Toast.LENGTH_SHORT)
.show();
getActivity().finish();
diff --git a/ApiDemos/java/app/src/v3/java/com/example/mapdemo/PolygonDemoActivity.java b/ApiDemos/project/java-app/src/v3/java/com/example/mapdemo/PolygonDemoActivity.java
similarity index 83%
rename from ApiDemos/java/app/src/v3/java/com/example/mapdemo/PolygonDemoActivity.java
rename to ApiDemos/project/java-app/src/v3/java/com/example/mapdemo/PolygonDemoActivity.java
index 179d318db..95fe8c333 100644
--- a/ApiDemos/java/app/src/v3/java/com/example/mapdemo/PolygonDemoActivity.java
+++ b/ApiDemos/project/java-app/src/v3/java/com/example/mapdemo/PolygonDemoActivity.java
@@ -77,57 +77,57 @@ public class PolygonDemoActivity extends AppCompatActivity
// string resource IDs as identifiers.
private static final int[] JOINT_TYPE_NAME_RESOURCE_IDS = {
- R.string.joint_type_default, // Default
- R.string.joint_type_bevel,
- R.string.joint_type_round,
+ com.example.common_ui.R.string.joint_type_default, // Default
+ com.example.common_ui.R.string.joint_type_bevel,
+ com.example.common_ui.R.string.joint_type_round,
};
private static final int[] PATTERN_TYPE_NAME_RESOURCE_IDS = {
- R.string.pattern_solid, // Default
- R.string.pattern_dashed,
- R.string.pattern_dotted,
- R.string.pattern_mixed,
+ com.example.common_ui.R.string.pattern_solid, // Default
+ com.example.common_ui.R.string.pattern_dashed,
+ com.example.common_ui.R.string.pattern_dotted,
+ com.example.common_ui.R.string.pattern_mixed,
};
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
- setContentView(R.layout.polygon_demo);
+ setContentView(com.example.common_ui.R.layout.polygon_demo);
- fillHueBar = findViewById(R.id.fillHueSeekBar);
+ fillHueBar = findViewById(com.example.common_ui.R.id.fillHueSeekBar);
fillHueBar.setMax(MAX_HUE_DEGREES);
fillHueBar.setProgress(MAX_HUE_DEGREES / 2);
- fillAlphaBar = findViewById(R.id.fillAlphaSeekBar);
+ fillAlphaBar = findViewById(com.example.common_ui.R.id.fillAlphaSeekBar);
fillAlphaBar.setMax(MAX_ALPHA);
fillAlphaBar.setProgress(MAX_ALPHA / 2);
- strokeWidthBar = findViewById(R.id.strokeWidthSeekBar);
+ strokeWidthBar = findViewById(com.example.common_ui.R.id.strokeWidthSeekBar);
strokeWidthBar.setMax(MAX_WIDTH_PX);
strokeWidthBar.setProgress(MAX_WIDTH_PX / 3);
- strokeHueBar = findViewById(R.id.strokeHueSeekBar);
+ strokeHueBar = findViewById(com.example.common_ui.R.id.strokeHueSeekBar);
strokeHueBar.setMax(MAX_HUE_DEGREES);
strokeHueBar.setProgress(0);
- strokeAlphaBar = findViewById(R.id.strokeAlphaSeekBar);
+ strokeAlphaBar = findViewById(com.example.common_ui.R.id.strokeAlphaSeekBar);
strokeAlphaBar.setMax(MAX_ALPHA);
strokeAlphaBar.setProgress(MAX_ALPHA);
- strokeJointTypeSpinner = findViewById(R.id.strokeJointTypeSpinner);
+ strokeJointTypeSpinner = findViewById(com.example.common_ui.R.id.strokeJointTypeSpinner);
strokeJointTypeSpinner.setAdapter(new ArrayAdapter<>(
- this, android.R.layout.simple_spinner_item,
+ this, android.com.example.common_ui.R.layout.simple_spinner_item,
getResourceStrings(JOINT_TYPE_NAME_RESOURCE_IDS)));
- strokePatternSpinner = findViewById(R.id.strokePatternSpinner);
+ strokePatternSpinner = findViewById(com.example.common_ui.R.id.strokePatternSpinner);
strokePatternSpinner.setAdapter(new ArrayAdapter<>(
- this, android.R.layout.simple_spinner_item,
+ this, android.com.example.common_ui.R.layout.simple_spinner_item,
getResourceStrings(PATTERN_TYPE_NAME_RESOURCE_IDS)));
- clickabilityCheckbox = findViewById(R.id.toggleClickability);
+ clickabilityCheckbox = findViewById(com.example.common_ui.R.id.toggleClickability);
SupportMapFragment mapFragment =
- (SupportMapFragment) getSupportFragmentManager().findFragmentById(R.id.map);
+ (SupportMapFragment) getSupportFragmentManager().findFragmentById(com.example.common_ui.R.id.map);
mapFragment.getMapAsync(this);
}
@@ -142,7 +142,7 @@ private String[] getResourceStrings(int[] resourceIds) {
@Override
public void onMapReady(GoogleMap map) {
// Override the default content description on the view, for accessibility mode.
- map.setContentDescription(getString(R.string.polygon_demo_description));
+ map.setContentDescription(getString(com.example.common_ui.R.string.polygon_demo_description));
int fillColorArgb = Color.HSVToColor(
fillAlphaBar.getProgress(), new float[]{fillHueBar.getProgress(), 1, 1});
@@ -198,11 +198,11 @@ private List createRectangle(LatLng center, double halfWidth, double hal
private int getSelectedJointType(int pos) {
switch (JOINT_TYPE_NAME_RESOURCE_IDS[pos]) {
- case R.string.joint_type_bevel:
+ case com.example.common_ui.R.string.joint_type_bevel:
return JointType.BEVEL;
- case R.string.joint_type_round:
+ case com.example.common_ui.R.string.joint_type_round:
return JointType.ROUND;
- case R.string.joint_type_default:
+ case com.example.common_ui.R.string.joint_type_default:
return JointType.DEFAULT;
}
return 0;
@@ -210,13 +210,13 @@ private int getSelectedJointType(int pos) {
private List getSelectedPattern(int pos) {
switch (PATTERN_TYPE_NAME_RESOURCE_IDS[pos]) {
- case R.string.pattern_solid:
+ case com.example.common_ui.R.string.pattern_solid:
return null;
- case R.string.pattern_dotted:
+ case com.example.common_ui.R.string.pattern_dotted:
return PATTERN_DOTTED;
- case R.string.pattern_dashed:
+ case com.example.common_ui.R.string.pattern_dashed:
return PATTERN_DASHED;
- case R.string.pattern_mixed:
+ case com.example.common_ui.R.string.pattern_mixed:
return PATTERN_MIXED;
default:
return null;
@@ -226,10 +226,10 @@ private List getSelectedPattern(int pos) {
@Override
public void onItemSelected(AdapterView> parent, View view, int pos, long id) {
switch (parent.getId()) {
- case R.id.strokeJointTypeSpinner:
+ case com.example.common_ui.R.id.strokeJointTypeSpinner:
mutablePolygon.setStrokeJointType(getSelectedJointType(pos));
break;
- case R.id.strokePatternSpinner:
+ case com.example.common_ui.R.id.strokePatternSpinner:
mutablePolygon.setStrokePattern(getSelectedPattern(pos));
break;
}
diff --git a/ApiDemos/java/app/src/v3/java/com/example/mapdemo/ProgrammaticDemoActivity.java b/ApiDemos/project/java-app/src/v3/java/com/example/mapdemo/ProgrammaticDemoActivity.java
similarity index 95%
rename from ApiDemos/java/app/src/v3/java/com/example/mapdemo/ProgrammaticDemoActivity.java
rename to ApiDemos/project/java-app/src/v3/java/com/example/mapdemo/ProgrammaticDemoActivity.java
index 4cc43482c..5f62bed42 100644
--- a/ApiDemos/java/app/src/v3/java/com/example/mapdemo/ProgrammaticDemoActivity.java
+++ b/ApiDemos/project/java-app/src/v3/java/com/example/mapdemo/ProgrammaticDemoActivity.java
@@ -49,7 +49,7 @@ protected void onCreate(Bundle savedInstanceState) {
// Then we add it using a FragmentTransaction.
FragmentTransaction fragmentTransaction =
getSupportFragmentManager().beginTransaction();
- fragmentTransaction.add(android.R.id.content, mapFragment, MAP_FRAGMENT_TAG);
+ fragmentTransaction.add(android.com.example.common_ui.R.id.content, mapFragment, MAP_FRAGMENT_TAG);
fragmentTransaction.commit();
}
mapFragment.getMapAsync(this);
diff --git a/ApiDemos/java/app/src/v3/java/com/example/mapdemo/RawMapViewDemoActivity.java b/ApiDemos/project/java-app/src/v3/java/com/example/mapdemo/RawMapViewDemoActivity.java
similarity index 95%
rename from ApiDemos/java/app/src/v3/java/com/example/mapdemo/RawMapViewDemoActivity.java
rename to ApiDemos/project/java-app/src/v3/java/com/example/mapdemo/RawMapViewDemoActivity.java
index 75520e85e..c50c28dd5 100644
--- a/ApiDemos/java/app/src/v3/java/com/example/mapdemo/RawMapViewDemoActivity.java
+++ b/ApiDemos/project/java-app/src/v3/java/com/example/mapdemo/RawMapViewDemoActivity.java
@@ -37,7 +37,7 @@ public class RawMapViewDemoActivity extends AppCompatActivity implements OnMapRe
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
- setContentView(R.layout.raw_mapview_demo);
+ setContentView(com.example.common_ui.R.layout.raw_mapview_demo);
// *** IMPORTANT ***
// MapView requires that the Bundle you pass contain _ONLY_ MapView SDK
@@ -46,7 +46,7 @@ protected void onCreate(Bundle savedInstanceState) {
if (savedInstanceState != null) {
mapViewBundle = savedInstanceState.getBundle(MAPVIEW_BUNDLE_KEY);
}
- mMapView = (MapView) findViewById(R.id.map);
+ mMapView = (MapView) findViewById(com.example.common_ui.R.id.map);
mMapView.onCreate(mapViewBundle);
mMapView.getMapAsync(this);
diff --git a/ApiDemos/java/app/src/v3/java/com/example/mapdemo/RetainMapDemoActivity.java b/ApiDemos/project/java-app/src/v3/java/com/example/mapdemo/RetainMapDemoActivity.java
similarity index 93%
rename from ApiDemos/java/app/src/v3/java/com/example/mapdemo/RetainMapDemoActivity.java
rename to ApiDemos/project/java-app/src/v3/java/com/example/mapdemo/RetainMapDemoActivity.java
index 65800deac..6a007efd2 100755
--- a/ApiDemos/java/app/src/v3/java/com/example/mapdemo/RetainMapDemoActivity.java
+++ b/ApiDemos/project/java-app/src/v3/java/com/example/mapdemo/RetainMapDemoActivity.java
@@ -33,10 +33,10 @@ public class RetainMapDemoActivity extends AppCompatActivity implements OnMapRea
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
- setContentView(R.layout.basic_demo);
+ setContentView(com.example.common_ui.R.layout.basic_demo);
SupportMapFragment mapFragment =
- (SupportMapFragment) getSupportFragmentManager().findFragmentById(R.id.map);
+ (SupportMapFragment) getSupportFragmentManager().findFragmentById(com.example.common_ui.R.id.map);
if (savedInstanceState == null) {
// First incarnation of this activity.
diff --git a/ApiDemos/java/app/src/v3/java/com/example/mapdemo/SaveStateDemoActivity.java b/ApiDemos/project/java-app/src/v3/java/com/example/mapdemo/SaveStateDemoActivity.java
similarity index 99%
rename from ApiDemos/java/app/src/v3/java/com/example/mapdemo/SaveStateDemoActivity.java
rename to ApiDemos/project/java-app/src/v3/java/com/example/mapdemo/SaveStateDemoActivity.java
index 26b0aa84f..d2b96aeea 100755
--- a/ApiDemos/java/app/src/v3/java/com/example/mapdemo/SaveStateDemoActivity.java
+++ b/ApiDemos/project/java-app/src/v3/java/com/example/mapdemo/SaveStateDemoActivity.java
@@ -214,6 +214,6 @@ public void onMarkerDragEnd(Marker marker) {
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
- setContentView(R.layout.save_state_demo);
+ setContentView(com.example.common_ui.R.layout.save_state_demo);
}
}
diff --git a/ApiDemos/java/app/src/v3/java/com/example/mapdemo/SnapshotDemoActivity.java b/ApiDemos/project/java-app/src/v3/java/com/example/mapdemo/SnapshotDemoActivity.java
similarity index 88%
rename from ApiDemos/java/app/src/v3/java/com/example/mapdemo/SnapshotDemoActivity.java
rename to ApiDemos/project/java-app/src/v3/java/com/example/mapdemo/SnapshotDemoActivity.java
index 1d908708f..6d2538819 100755
--- a/ApiDemos/java/app/src/v3/java/com/example/mapdemo/SnapshotDemoActivity.java
+++ b/ApiDemos/project/java-app/src/v3/java/com/example/mapdemo/SnapshotDemoActivity.java
@@ -43,11 +43,11 @@ public class SnapshotDemoActivity extends AppCompatActivity implements OnMapRead
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
- setContentView(R.layout.snapshot_demo);
- mWaitForMapLoadCheckBox = (CheckBox) findViewById(R.id.wait_for_map_load);
+ setContentView(com.example.common_ui.R.layout.snapshot_demo);
+ mWaitForMapLoadCheckBox = (CheckBox) findViewById(com.example.common_ui.R.id.wait_for_map_load);
SupportMapFragment mapFragment =
- (SupportMapFragment) getSupportFragmentManager().findFragmentById(R.id.map);
+ (SupportMapFragment) getSupportFragmentManager().findFragmentById(com.example.common_ui.R.id.map);
mapFragment.getMapAsync(this);
}
@@ -68,7 +68,7 @@ private void takeSnapshot() {
return;
}
- final ImageView snapshotHolder = (ImageView) findViewById(R.id.snapshot_holder);
+ final ImageView snapshotHolder = (ImageView) findViewById(com.example.common_ui.R.id.snapshot_holder);
final SnapshotReadyCallback callback = new SnapshotReadyCallback() {
@Override
@@ -94,7 +94,7 @@ public void onMapLoaded() {
* Called when the clear button is clicked.
*/
public void onClearScreenshot(View view) {
- ImageView snapshotHolder = (ImageView) findViewById(R.id.snapshot_holder);
+ ImageView snapshotHolder = (ImageView) findViewById(com.example.common_ui.R.id.snapshot_holder);
snapshotHolder.setImageDrawable(null);
}
}
diff --git a/ApiDemos/java/app/src/v3/java/com/example/mapdemo/SplitStreetViewPanoramaAndMapDemoActivity.java b/ApiDemos/project/java-app/src/v3/java/com/example/mapdemo/SplitStreetViewPanoramaAndMapDemoActivity.java
similarity index 95%
rename from ApiDemos/java/app/src/v3/java/com/example/mapdemo/SplitStreetViewPanoramaAndMapDemoActivity.java
rename to ApiDemos/project/java-app/src/v3/java/com/example/mapdemo/SplitStreetViewPanoramaAndMapDemoActivity.java
index 40d92608e..f349b5330 100755
--- a/ApiDemos/java/app/src/v3/java/com/example/mapdemo/SplitStreetViewPanoramaAndMapDemoActivity.java
+++ b/ApiDemos/project/java-app/src/v3/java/com/example/mapdemo/SplitStreetViewPanoramaAndMapDemoActivity.java
@@ -50,7 +50,7 @@ public class SplitStreetViewPanoramaAndMapDemoActivity extends AppCompatActivity
@Override
protected void onCreate(final Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
- setContentView(R.layout.split_street_view_panorama_and_map_demo);
+ setContentView(com.example.common_ui.R.layout.split_street_view_panorama_and_map_demo);
final LatLng markerPosition;
if (savedInstanceState == null) {
@@ -61,7 +61,7 @@ protected void onCreate(final Bundle savedInstanceState) {
SupportStreetViewPanoramaFragment streetViewPanoramaFragment =
(SupportStreetViewPanoramaFragment)
- getSupportFragmentManager().findFragmentById(R.id.streetviewpanorama);
+ getSupportFragmentManager().findFragmentById(com.example.common_ui.R.id.streetviewpanorama);
streetViewPanoramaFragment.getStreetViewPanoramaAsync(
new OnStreetViewPanoramaReadyCallback() {
@Override
@@ -78,7 +78,7 @@ public void onStreetViewPanoramaReady(StreetViewPanorama panorama) {
});
SupportMapFragment mapFragment =
- (SupportMapFragment) getSupportFragmentManager().findFragmentById(R.id.map);
+ (SupportMapFragment) getSupportFragmentManager().findFragmentById(com.example.common_ui.R.id.map);
mapFragment.getMapAsync(new OnMapReadyCallback() {
@Override
public void onMapReady(GoogleMap map) {
@@ -86,7 +86,7 @@ public void onMapReady(GoogleMap map) {
// Creates a draggable marker. Long press to drag.
marker = map.addMarker(new MarkerOptions()
.position(markerPosition)
- .icon(BitmapDescriptorFactory.fromResource(R.drawable.pegman))
+ .icon(BitmapDescriptorFactory.fromResource(com.example.common_ui.R.drawable.pegman))
.draggable(true));
}
});
diff --git a/ApiDemos/java/app/src/v3/java/com/example/mapdemo/StreetViewPanoramaBasicDemoActivity.java b/ApiDemos/project/java-app/src/v3/java/com/example/mapdemo/StreetViewPanoramaBasicDemoActivity.java
similarity index 93%
rename from ApiDemos/java/app/src/v3/java/com/example/mapdemo/StreetViewPanoramaBasicDemoActivity.java
rename to ApiDemos/project/java-app/src/v3/java/com/example/mapdemo/StreetViewPanoramaBasicDemoActivity.java
index 7d6c9bc9d..e68ccea91 100755
--- a/ApiDemos/java/app/src/v3/java/com/example/mapdemo/StreetViewPanoramaBasicDemoActivity.java
+++ b/ApiDemos/project/java-app/src/v3/java/com/example/mapdemo/StreetViewPanoramaBasicDemoActivity.java
@@ -34,11 +34,11 @@ public class StreetViewPanoramaBasicDemoActivity extends AppCompatActivity {
@Override
protected void onCreate(final Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
- setContentView(R.layout.street_view_panorama_basic_demo);
+ setContentView(com.example.common_ui.R.layout.street_view_panorama_basic_demo);
SupportStreetViewPanoramaFragment streetViewPanoramaFragment =
(SupportStreetViewPanoramaFragment)
- getSupportFragmentManager().findFragmentById(R.id.streetviewpanorama);
+ getSupportFragmentManager().findFragmentById(com.example.common_ui.R.id.streetviewpanorama);
streetViewPanoramaFragment.getStreetViewPanoramaAsync(
new OnStreetViewPanoramaReadyCallback() {
@Override
diff --git a/ApiDemos/java/app/src/v3/java/com/example/mapdemo/StreetViewPanoramaEventsDemoActivity.java b/ApiDemos/project/java-app/src/v3/java/com/example/mapdemo/StreetViewPanoramaEventsDemoActivity.java
similarity index 91%
rename from ApiDemos/java/app/src/v3/java/com/example/mapdemo/StreetViewPanoramaEventsDemoActivity.java
rename to ApiDemos/project/java-app/src/v3/java/com/example/mapdemo/StreetViewPanoramaEventsDemoActivity.java
index a905d8830..efd5b54b6 100755
--- a/ApiDemos/java/app/src/v3/java/com/example/mapdemo/StreetViewPanoramaEventsDemoActivity.java
+++ b/ApiDemos/project/java-app/src/v3/java/com/example/mapdemo/StreetViewPanoramaEventsDemoActivity.java
@@ -63,16 +63,16 @@ public class StreetViewPanoramaEventsDemoActivity extends AppCompatActivity
@Override
protected void onCreate(final Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
- setContentView(R.layout.street_view_panorama_events_demo);
+ setContentView(com.example.common_ui.R.layout.street_view_panorama_events_demo);
- panoChangeTimesTextView = findViewById(R.id.change_pano);
- panoCameraChangeTextView = findViewById(R.id.change_camera);
- panoClickTextView = findViewById(R.id.click_pano);
- panoLongClickTextView = findViewById(R.id.long_click_pano);
+ panoChangeTimesTextView = findViewById(com.example.common_ui.R.id.change_pano);
+ panoCameraChangeTextView = findViewById(com.example.common_ui.R.id.change_camera);
+ panoClickTextView = findViewById(com.example.common_ui.R.id.click_pano);
+ panoLongClickTextView = findViewById(com.example.common_ui.R.id.long_click_pano);
SupportStreetViewPanoramaFragment streetViewPanoramaFragment =
(SupportStreetViewPanoramaFragment)
- getSupportFragmentManager().findFragmentById(R.id.streetviewpanorama);
+ getSupportFragmentManager().findFragmentById(com.example.common_ui.R.id.streetviewpanorama);
streetViewPanoramaFragment.getStreetViewPanoramaAsync(
panorama -> {
streetViewPanorama = panorama;
diff --git a/ApiDemos/java/app/src/v3/java/com/example/mapdemo/StreetViewPanoramaNavigationDemoActivity.java b/ApiDemos/project/java-app/src/v3/java/com/example/mapdemo/StreetViewPanoramaNavigationDemoActivity.java
similarity index 96%
rename from ApiDemos/java/app/src/v3/java/com/example/mapdemo/StreetViewPanoramaNavigationDemoActivity.java
rename to ApiDemos/project/java-app/src/v3/java/com/example/mapdemo/StreetViewPanoramaNavigationDemoActivity.java
index f7d578abd..6125d7778 100755
--- a/ApiDemos/java/app/src/v3/java/com/example/mapdemo/StreetViewPanoramaNavigationDemoActivity.java
+++ b/ApiDemos/project/java-app/src/v3/java/com/example/mapdemo/StreetViewPanoramaNavigationDemoActivity.java
@@ -62,11 +62,11 @@ public class StreetViewPanoramaNavigationDemoActivity extends AppCompatActivity
@Override
protected void onCreate(final Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
- setContentView(R.layout.street_view_panorama_navigation_demo);
+ setContentView(com.example.common_ui.R.layout.street_view_panorama_navigation_demo);
SupportStreetViewPanoramaFragment streetViewPanoramaFragment =
(SupportStreetViewPanoramaFragment)
- getSupportFragmentManager().findFragmentById(R.id.streetviewpanorama);
+ getSupportFragmentManager().findFragmentById(com.example.common_ui.R.id.streetviewpanorama);
streetViewPanoramaFragment.getStreetViewPanoramaAsync(
new OnStreetViewPanoramaReadyCallback() {
@Override
@@ -79,7 +79,7 @@ public void onStreetViewPanoramaReady(StreetViewPanorama panorama) {
}
}
});
- mCustomDurationBar = (SeekBar) findViewById(R.id.duration_bar);
+ mCustomDurationBar = (SeekBar) findViewById(com.example.common_ui.R.id.duration_bar);
}
/**
@@ -88,7 +88,7 @@ public void onStreetViewPanoramaReady(StreetViewPanorama panorama) {
*/
private boolean checkReady() {
if (mStreetViewPanorama == null) {
- Toast.makeText(this, R.string.panorama_not_ready, Toast.LENGTH_SHORT).show();
+ Toast.makeText(this, com.example.common_ui.R.string.panorama_not_ready, Toast.LENGTH_SHORT).show();
return false;
}
return true;
diff --git a/ApiDemos/java/app/src/v3/java/com/example/mapdemo/StreetViewPanoramaOptionsDemoActivity.java b/ApiDemos/project/java-app/src/v3/java/com/example/mapdemo/StreetViewPanoramaOptionsDemoActivity.java
similarity index 86%
rename from ApiDemos/java/app/src/v3/java/com/example/mapdemo/StreetViewPanoramaOptionsDemoActivity.java
rename to ApiDemos/project/java-app/src/v3/java/com/example/mapdemo/StreetViewPanoramaOptionsDemoActivity.java
index d596fd7fc..787a73117 100755
--- a/ApiDemos/java/app/src/v3/java/com/example/mapdemo/StreetViewPanoramaOptionsDemoActivity.java
+++ b/ApiDemos/project/java-app/src/v3/java/com/example/mapdemo/StreetViewPanoramaOptionsDemoActivity.java
@@ -51,17 +51,17 @@ public class StreetViewPanoramaOptionsDemoActivity extends AppCompatActivity {
@Override
protected void onCreate(final Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
- setContentView(R.layout.street_view_panorama_options_demo);
+ setContentView(com.example.common_ui.R.layout.street_view_panorama_options_demo);
- streetNameCheckbox = findViewById(R.id.streetnames);
- navigationCheckbox = findViewById(R.id.navigation);
- zoomCheckbox = findViewById(R.id.zoom);
- panningCheckbox = findViewById(R.id.panning);
- outdoorCheckbox = findViewById(R.id.outdoor);
+ streetNameCheckbox = findViewById(com.example.common_ui.R.id.streetnames);
+ navigationCheckbox = findViewById(com.example.common_ui.R.id.navigation);
+ zoomCheckbox = findViewById(com.example.common_ui.R.id.zoom);
+ panningCheckbox = findViewById(com.example.common_ui.R.id.panning);
+ outdoorCheckbox = findViewById(com.example.common_ui.R.id.outdoor);
SupportStreetViewPanoramaFragment streetViewPanoramaFragment =
(SupportStreetViewPanoramaFragment)
- getSupportFragmentManager().findFragmentById(R.id.streetviewpanorama);
+ getSupportFragmentManager().findFragmentById(com.example.common_ui.R.id.streetviewpanorama);
streetViewPanoramaFragment.getStreetViewPanoramaAsync(
panorama -> {
streetViewPanorama = panorama;
@@ -88,7 +88,7 @@ private void setPosition() {
private boolean checkReady() {
if (streetViewPanorama == null) {
- Toast.makeText(this, R.string.map_not_ready, Toast.LENGTH_SHORT).show();
+ Toast.makeText(this, com.example.common_ui.R.string.map_not_ready, Toast.LENGTH_SHORT).show();
return false;
}
return true;
diff --git a/ApiDemos/java/app/src/v3/java/com/example/mapdemo/StreetViewPanoramaViewDemoActivity.java b/ApiDemos/project/java-app/src/v3/java/com/example/mapdemo/StreetViewPanoramaViewDemoActivity.java
similarity index 100%
rename from ApiDemos/java/app/src/v3/java/com/example/mapdemo/StreetViewPanoramaViewDemoActivity.java
rename to ApiDemos/project/java-app/src/v3/java/com/example/mapdemo/StreetViewPanoramaViewDemoActivity.java
diff --git a/ApiDemos/java/app/src/v3/java/com/example/mapdemo/StyledMapDemoActivity.java b/ApiDemos/project/java-app/src/v3/java/com/example/mapdemo/StyledMapDemoActivity.java
similarity index 82%
rename from ApiDemos/java/app/src/v3/java/com/example/mapdemo/StyledMapDemoActivity.java
rename to ApiDemos/project/java-app/src/v3/java/com/example/mapdemo/StyledMapDemoActivity.java
index dd08bf767..23246cef7 100644
--- a/ApiDemos/java/app/src/v3/java/com/example/mapdemo/StyledMapDemoActivity.java
+++ b/ApiDemos/project/java-app/src/v3/java/com/example/mapdemo/StyledMapDemoActivity.java
@@ -47,16 +47,16 @@ public class StyledMapDemoActivity extends AppCompatActivity implements OnMapRea
// Stores the ID of the currently selected style, so that we can re-apply it when
// the activity restores state, for example when the device changes orientation.
- private int mSelectedStyleId = R.string.style_label_default;
+ private int mSelectedStyleId = com.example.common_ui.R.string.style_label_default;
// These are simply the string resource IDs for each of the style names. We use them
// as identifiers when choosing which style to apply.
private int mStyleIds[] = {
- R.string.style_label_retro,
- R.string.style_label_night,
- R.string.style_label_grayscale,
- R.string.style_label_no_pois_no_transit,
- R.string.style_label_default,
+ com.example.common_ui.R.string.style_label_retro,
+ com.example.common_ui.R.string.style_label_night,
+ com.example.common_ui.R.string.style_label_grayscale,
+ com.example.common_ui.R.string.style_label_no_pois_no_transit,
+ com.example.common_ui.R.string.style_label_default,
};
private static final LatLng SYDNEY = new LatLng(-33.8688, 151.2093);
@@ -67,10 +67,10 @@ protected void onCreate(Bundle savedInstanceState) {
if (savedInstanceState != null) {
mSelectedStyleId = savedInstanceState.getInt(SELECTED_STYLE);
}
- setContentView(R.layout.styled_map_demo);
+ setContentView(com.example.common_ui.R.layout.styled_map_demo);
SupportMapFragment mapFragment =
- (SupportMapFragment) getSupportFragmentManager().findFragmentById(R.id.map);
+ (SupportMapFragment) getSupportFragmentManager().findFragmentById(com.example.common_ui.R.id.map);
mapFragment.getMapAsync(this);
}
@@ -96,7 +96,7 @@ public boolean onCreateOptionsMenu(Menu menu) {
@Override
public boolean onOptionsItemSelected(MenuItem item) {
- if (item.getItemId() == R.id.menu_style_choose) {
+ if (item.getItemId() == com.example.common_ui.R.id.menu_style_choose) {
showStylesDialog();
}
return true;
@@ -117,13 +117,13 @@ private void showStylesDialog() {
}
AlertDialog.Builder builder = new AlertDialog.Builder(this);
- builder.setTitle(getString(R.string.style_choose));
+ builder.setTitle(getString(com.example.common_ui.R.string.style_choose));
builder.setItems(styleNames.toArray(new CharSequence[styleNames.size()]),
new DialogInterface.OnClickListener() {
@Override
public void onClick(DialogInterface dialog, int which) {
mSelectedStyleId = mStyleIds[which];
- String msg = getString(R.string.style_set_to, getString(mSelectedStyleId));
+ String msg = getString(com.example.common_ui.R.string.style_set_to, getString(mSelectedStyleId));
Toast.makeText(getBaseContext(), msg, Toast.LENGTH_SHORT).show();
Log.d(TAG, msg);
setSelectedStyle();
@@ -140,19 +140,19 @@ public void onClick(DialogInterface dialog, int which) {
private void setSelectedStyle() {
MapStyleOptions style;
switch (mSelectedStyleId) {
- case R.string.style_label_retro:
+ case com.example.common_ui.R.string.style_label_retro:
// Sets the retro style via raw resource JSON.
- style = MapStyleOptions.loadRawResourceStyle(this, R.raw.mapstyle_retro);
+ style = MapStyleOptions.loadRawResourceStyle(this, com.example.common_ui.R.raw.mapstyle_retro);
break;
- case R.string.style_label_night:
+ case com.example.common_ui.R.string.style_label_night:
// Sets the night style via raw resource JSON.
- style = MapStyleOptions.loadRawResourceStyle(this, R.raw.mapstyle_night);
+ style = MapStyleOptions.loadRawResourceStyle(this, com.example.common_ui.R.raw.mapstyle_night);
break;
- case R.string.style_label_grayscale:
+ case com.example.common_ui.R.string.style_label_grayscale:
// Sets the grayscale style via raw resource JSON.
- style = MapStyleOptions.loadRawResourceStyle(this, R.raw.mapstyle_grayscale);
+ style = MapStyleOptions.loadRawResourceStyle(this, com.example.common_ui.R.raw.mapstyle_grayscale);
break;
- case R.string.style_label_no_pois_no_transit:
+ case com.example.common_ui.R.string.style_label_no_pois_no_transit:
// Sets the no POIs or transit style via JSON string.
style = new MapStyleOptions("[" +
" {" +
@@ -175,7 +175,7 @@ private void setSelectedStyle() {
" }" +
"]");
break;
- case R.string.style_label_default:
+ case com.example.common_ui.R.string.style_label_default:
// Removes previously set style, by setting it to null.
style = null;
break;
diff --git a/ApiDemos/java/app/src/v3/java/com/example/mapdemo/TagsDemoActivity.java b/ApiDemos/project/java-app/src/v3/java/com/example/mapdemo/TagsDemoActivity.java
similarity index 95%
rename from ApiDemos/java/app/src/v3/java/com/example/mapdemo/TagsDemoActivity.java
rename to ApiDemos/project/java-app/src/v3/java/com/example/mapdemo/TagsDemoActivity.java
index fd0228294..9d3e7c5c5 100644
--- a/ApiDemos/java/app/src/v3/java/com/example/mapdemo/TagsDemoActivity.java
+++ b/ApiDemos/project/java-app/src/v3/java/com/example/mapdemo/TagsDemoActivity.java
@@ -92,12 +92,12 @@ public String toString() {
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
- setContentView(R.layout.tags_demo);
+ setContentView(com.example.common_ui.R.layout.tags_demo);
- mTagText = (TextView) findViewById(R.id.tag_text);
+ mTagText = (TextView) findViewById(com.example.common_ui.R.id.tag_text);
SupportMapFragment mapFragment =
- (SupportMapFragment) getSupportFragmentManager().findFragmentById(R.id.map);
+ (SupportMapFragment) getSupportFragmentManager().findFragmentById(com.example.common_ui.R.id.map);
new OnMapAndViewReadyListener(mapFragment, this);
}
@@ -129,7 +129,7 @@ public void onMapReady(GoogleMap map) {
// Override the default content description on the view, for accessibility mode.
// Ideally this string would be localised.
- map.setContentDescription(getString(R.string.tags_demo_map_description));
+ map.setContentDescription(getString(com.example.common_ui.R.string.tags_demo_map_description));
// Create bounds that include all locations of the map.
LatLngBounds bounds = new LatLngBounds.Builder()
@@ -155,7 +155,7 @@ private void addObjectsToMap() {
// A ground overlay at Sydney.
mSydneyGroundOverlay = mMap.addGroundOverlay(new GroundOverlayOptions()
- .image(BitmapDescriptorFactory.fromResource(R.drawable.harbour_bridge))
+ .image(BitmapDescriptorFactory.fromResource(com.example.common_ui.R.drawable.harbour_bridge))
.position(SYDNEY, 700000)
.clickable(true));
mSydneyGroundOverlay.setTag(new CustomTag("Sydney ground overlay"));
diff --git a/ApiDemos/java/app/src/v3/java/com/example/mapdemo/TileCoordinateDemoActivity.java b/ApiDemos/project/java-app/src/v3/java/com/example/mapdemo/TileCoordinateDemoActivity.java
similarity index 96%
rename from ApiDemos/java/app/src/v3/java/com/example/mapdemo/TileCoordinateDemoActivity.java
rename to ApiDemos/project/java-app/src/v3/java/com/example/mapdemo/TileCoordinateDemoActivity.java
index 49764d5c2..6de5ed6c2 100755
--- a/ApiDemos/java/app/src/v3/java/com/example/mapdemo/TileCoordinateDemoActivity.java
+++ b/ApiDemos/project/java-app/src/v3/java/com/example/mapdemo/TileCoordinateDemoActivity.java
@@ -40,10 +40,10 @@ public class TileCoordinateDemoActivity extends AppCompatActivity implements OnM
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
- setContentView(R.layout.tile_coordinate_demo);
+ setContentView(com.example.common_ui.R.layout.tile_coordinate_demo);
SupportMapFragment mapFragment =
- (SupportMapFragment) getSupportFragmentManager().findFragmentById(R.id.map);
+ (SupportMapFragment) getSupportFragmentManager().findFragmentById(com.example.common_ui.R.id.map);
mapFragment.getMapAsync(this);
}
diff --git a/ApiDemos/java/app/src/v3/java/com/example/mapdemo/TileOverlayDemoActivity.java b/ApiDemos/project/java-app/src/v3/java/com/example/mapdemo/TileOverlayDemoActivity.java
similarity index 94%
rename from ApiDemos/java/app/src/v3/java/com/example/mapdemo/TileOverlayDemoActivity.java
rename to ApiDemos/project/java-app/src/v3/java/com/example/mapdemo/TileOverlayDemoActivity.java
index 24319f0ef..70592188d 100644
--- a/ApiDemos/java/app/src/v3/java/com/example/mapdemo/TileOverlayDemoActivity.java
+++ b/ApiDemos/project/java-app/src/v3/java/com/example/mapdemo/TileOverlayDemoActivity.java
@@ -53,14 +53,14 @@ public class TileOverlayDemoActivity extends AppCompatActivity
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
- setContentView(R.layout.tile_overlay_demo);
+ setContentView(com.example.common_ui.R.layout.tile_overlay_demo);
- mTransparencyBar = (SeekBar) findViewById(R.id.transparencySeekBar);
+ mTransparencyBar = (SeekBar) findViewById(com.example.common_ui.R.id.transparencySeekBar);
mTransparencyBar.setMax(TRANSPARENCY_MAX);
mTransparencyBar.setProgress(0);
SupportMapFragment mapFragment =
- (SupportMapFragment) getSupportFragmentManager().findFragmentById(R.id.map);
+ (SupportMapFragment) getSupportFragmentManager().findFragmentById(com.example.common_ui.R.id.map);
mapFragment.getMapAsync(this);
}
diff --git a/ApiDemos/java/app/src/v3/java/com/example/mapdemo/UiSettingsDemoActivity.java b/ApiDemos/project/java-app/src/v3/java/com/example/mapdemo/UiSettingsDemoActivity.java
similarity index 87%
rename from ApiDemos/java/app/src/v3/java/com/example/mapdemo/UiSettingsDemoActivity.java
rename to ApiDemos/project/java-app/src/v3/java/com/example/mapdemo/UiSettingsDemoActivity.java
index b7021bd53..c9eaeb1ef 100755
--- a/ApiDemos/java/app/src/v3/java/com/example/mapdemo/UiSettingsDemoActivity.java
+++ b/ApiDemos/project/java-app/src/v3/java/com/example/mapdemo/UiSettingsDemoActivity.java
@@ -59,13 +59,13 @@ public class UiSettingsDemoActivity extends AppCompatActivity implements OnMapRe
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
- setContentView(R.layout.ui_settings_demo);
+ setContentView(com.example.common_ui.R.layout.ui_settings_demo);
- mMyLocationButtonCheckbox = (CheckBox) findViewById(R.id.mylocationbutton_toggle);
- mMyLocationLayerCheckbox = (CheckBox) findViewById(R.id.mylocationlayer_toggle);
+ mMyLocationButtonCheckbox = (CheckBox) findViewById(com.example.common_ui.R.id.mylocationbutton_toggle);
+ mMyLocationLayerCheckbox = (CheckBox) findViewById(com.example.common_ui.R.id.mylocationlayer_toggle);
SupportMapFragment mapFragment =
- (SupportMapFragment) getSupportFragmentManager().findFragmentById(R.id.map);
+ (SupportMapFragment) getSupportFragmentManager().findFragmentById(com.example.common_ui.R.id.map);
mapFragment.getMapAsync(this);
}
@@ -83,20 +83,20 @@ public void onMapReady(GoogleMap map) {
mUiSettings = mMap.getUiSettings();
// Keep the UI Settings state in sync with the checkboxes.
- mUiSettings.setZoomControlsEnabled(isChecked(R.id.zoom_buttons_toggle));
- mUiSettings.setCompassEnabled(isChecked(R.id.compass_toggle));
- mUiSettings.setMyLocationButtonEnabled(isChecked(R.id.mylocationbutton_toggle));
- mUiSettings.setScrollGesturesEnabled(isChecked(R.id.scroll_toggle));
- mUiSettings.setZoomGesturesEnabled(isChecked(R.id.zoom_gestures_toggle));
- mUiSettings.setTiltGesturesEnabled(isChecked(R.id.tilt_toggle));
- mUiSettings.setRotateGesturesEnabled(isChecked(R.id.rotate_toggle));
+ mUiSettings.setZoomControlsEnabled(isChecked(com.example.common_ui.R.id.zoom_buttons_toggle));
+ mUiSettings.setCompassEnabled(isChecked(com.example.common_ui.R.id.compass_toggle));
+ mUiSettings.setMyLocationButtonEnabled(isChecked(com.example.common_ui.R.id.mylocationbutton_toggle));
+ mUiSettings.setScrollGesturesEnabled(isChecked(com.example.common_ui.R.id.scroll_toggle));
+ mUiSettings.setZoomGesturesEnabled(isChecked(com.example.common_ui.R.id.zoom_gestures_toggle));
+ mUiSettings.setTiltGesturesEnabled(isChecked(com.example.common_ui.R.id.tilt_toggle));
+ mUiSettings.setRotateGesturesEnabled(isChecked(com.example.common_ui.R.id.rotate_toggle));
if (ActivityCompat.checkSelfPermission(this, permission.ACCESS_FINE_LOCATION)
!= PackageManager.PERMISSION_GRANTED
&& ActivityCompat.checkSelfPermission(this, permission.ACCESS_COARSE_LOCATION)
!= PackageManager.PERMISSION_GRANTED) {
return;
}
- mMap.setMyLocationEnabled(isChecked(R.id.mylocationlayer_toggle));
+ mMap.setMyLocationEnabled(isChecked(com.example.common_ui.R.id.mylocationlayer_toggle));
}
/**
@@ -105,7 +105,7 @@ public void onMapReady(GoogleMap map) {
*/
private boolean checkReady() {
if (mMap == null) {
- Toast.makeText(this, R.string.map_not_ready, Toast.LENGTH_SHORT).show();
+ Toast.makeText(this, com.example.common_ui.R.string.map_not_ready, Toast.LENGTH_SHORT).show();
return false;
}
return true;
diff --git a/ApiDemos/java/app/src/v3/java/com/example/mapdemo/VisibleRegionDemoActivity.java b/ApiDemos/project/java-app/src/v3/java/com/example/mapdemo/VisibleRegionDemoActivity.java
similarity index 94%
rename from ApiDemos/java/app/src/v3/java/com/example/mapdemo/VisibleRegionDemoActivity.java
rename to ApiDemos/project/java-app/src/v3/java/com/example/mapdemo/VisibleRegionDemoActivity.java
index 81bc31a18..41ede6037 100755
--- a/ApiDemos/java/app/src/v3/java/com/example/mapdemo/VisibleRegionDemoActivity.java
+++ b/ApiDemos/project/java-app/src/v3/java/com/example/mapdemo/VisibleRegionDemoActivity.java
@@ -65,11 +65,11 @@ public class VisibleRegionDemoActivity extends AppCompatActivity implements
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
- setContentView(R.layout.visible_region_demo);
- mMessageView = (TextView) findViewById(R.id.message_text);
+ setContentView(com.example.common_ui.R.layout.visible_region_demo);
+ mMessageView = (TextView) findViewById(com.example.common_ui.R.id.message_text);
SupportMapFragment mapFragment =
- (SupportMapFragment) getSupportFragmentManager().findFragmentById(R.id.map);
+ (SupportMapFragment) getSupportFragmentManager().findFragmentById(com.example.common_ui.R.id.map);
new OnMapAndViewReadyListener(mapFragment, this);
}
@@ -97,7 +97,7 @@ public void onCameraIdle() {
*/
private boolean checkReady() {
if (mMap == null) {
- Toast.makeText(this, R.string.map_not_ready, Toast.LENGTH_SHORT).show();
+ Toast.makeText(this, com.example.common_ui.R.string.map_not_ready, Toast.LENGTH_SHORT).show();
return false;
}
return true;
@@ -135,7 +135,7 @@ public void setMorePadding(View view) {
if (!checkReady()) {
return;
}
- View mapView = (getSupportFragmentManager().findFragmentById(R.id.map)).getView();
+ View mapView = (getSupportFragmentManager().findFragmentById(com.example.common_ui.R.id.map)).getView();
int left = 150;
int top = 0;
int right = mapView.getWidth() / 3;
diff --git a/ApiDemos/java/app/src/v3/java/com/example/mapdemo/anim/AnimationManager.java b/ApiDemos/project/java-app/src/v3/java/com/example/mapdemo/anim/AnimationManager.java
similarity index 100%
rename from ApiDemos/java/app/src/v3/java/com/example/mapdemo/anim/AnimationManager.java
rename to ApiDemos/project/java-app/src/v3/java/com/example/mapdemo/anim/AnimationManager.java
diff --git a/ApiDemos/java/app/src/v3/java/com/example/mapdemo/model/MoveDirection.java b/ApiDemos/project/java-app/src/v3/java/com/example/mapdemo/model/MoveDirection.java
similarity index 100%
rename from ApiDemos/java/app/src/v3/java/com/example/mapdemo/model/MoveDirection.java
rename to ApiDemos/project/java-app/src/v3/java/com/example/mapdemo/model/MoveDirection.java
diff --git a/ApiDemos/java/app/src/v3/java/com/example/mapdemo/polyline/PolylineCapControlFragment.java b/ApiDemos/project/java-app/src/v3/java/com/example/mapdemo/polyline/PolylineCapControlFragment.java
similarity index 66%
rename from ApiDemos/java/app/src/v3/java/com/example/mapdemo/polyline/PolylineCapControlFragment.java
rename to ApiDemos/project/java-app/src/v3/java/com/example/mapdemo/polyline/PolylineCapControlFragment.java
index 3979037b9..cdde9c609 100644
--- a/ApiDemos/java/app/src/v3/java/com/example/mapdemo/polyline/PolylineCapControlFragment.java
+++ b/ApiDemos/project/java-app/src/v3/java/com/example/mapdemo/polyline/PolylineCapControlFragment.java
@@ -54,35 +54,35 @@ public class PolylineCapControlFragment extends PolylineControlFragment implemen
private RadioGroup endCapRadioGroup;
public PolylineCapControlFragment() {
- radioIdToStartCap.put(R.id.start_cap_radio_butt, new ButtCap());
- radioIdToStartCap.put(R.id.start_cap_radio_square, new SquareCap());
- radioIdToStartCap.put(R.id.start_cap_radio_round, new RoundCap());
+ radioIdToStartCap.put(com.example.common_ui.R.id.start_cap_radio_butt, new ButtCap());
+ radioIdToStartCap.put(com.example.common_ui.R.id.start_cap_radio_square, new SquareCap());
+ radioIdToStartCap.put(com.example.common_ui.R.id.start_cap_radio_round, new RoundCap());
radioIdToStartCap.put(
- R.id.start_cap_radio_custom_chevron,
- new CustomCap(BitmapDescriptorFactory.fromResource(R.drawable.chevron),
+ com.example.common_ui.R.id.start_cap_radio_custom_chevron,
+ new CustomCap(BitmapDescriptorFactory.fromResource(com.example.common_ui.R.drawable.chevron),
CHEVRON_REF_WIDTH));
radioIdToStartCap.put(
- R.id.start_cap_radio_custom_ook,
- new CustomCap(BitmapDescriptorFactory.fromResource(R.drawable.ook), OOK_REF_WIDTH));
+ com.example.common_ui.R.id.start_cap_radio_custom_ook,
+ new CustomCap(BitmapDescriptorFactory.fromResource(com.example.common_ui.R.drawable.ook), OOK_REF_WIDTH));
- radioIdToEndCap.put(R.id.end_cap_radio_butt, new ButtCap());
- radioIdToEndCap.put(R.id.end_cap_radio_square, new SquareCap());
- radioIdToEndCap.put(R.id.end_cap_radio_round, new RoundCap());
+ radioIdToEndCap.put(com.example.common_ui.R.id.end_cap_radio_butt, new ButtCap());
+ radioIdToEndCap.put(com.example.common_ui.R.id.end_cap_radio_square, new SquareCap());
+ radioIdToEndCap.put(com.example.common_ui.R.id.end_cap_radio_round, new RoundCap());
radioIdToEndCap.put(
- R.id.end_cap_radio_custom_chevron,
- new CustomCap(BitmapDescriptorFactory.fromResource(R.drawable.chevron),
+ com.example.common_ui.R.id.end_cap_radio_custom_chevron,
+ new CustomCap(BitmapDescriptorFactory.fromResource(com.example.common_ui.R.drawable.chevron),
CHEVRON_REF_WIDTH));
radioIdToEndCap.put(
- R.id.end_cap_radio_custom_ook,
- new CustomCap(BitmapDescriptorFactory.fromResource(R.drawable.ook), OOK_REF_WIDTH));
+ com.example.common_ui.R.id.end_cap_radio_custom_ook,
+ new CustomCap(BitmapDescriptorFactory.fromResource(com.example.common_ui.R.drawable.ook), OOK_REF_WIDTH));
}
@Override
public View onCreateView(LayoutInflater inflater, ViewGroup container, Bundle bundle) {
- View view = inflater.inflate(R.layout.polyline_cap_control_fragment, container, false);
+ View view = inflater.inflate(com.example.common_ui.R.layout.polyline_cap_control_fragment, container, false);
- startCapRadioGroup = view.findViewById(R.id.start_cap_radio);
- endCapRadioGroup = view.findViewById(R.id.end_cap_radio);
+ startCapRadioGroup = view.findViewById(com.example.common_ui.R.id.start_cap_radio);
+ endCapRadioGroup = view.findViewById(com.example.common_ui.R.id.end_cap_radio);
startCapRadioGroup.setOnCheckedChangeListener(this);
endCapRadioGroup.setOnCheckedChangeListener(this);
@@ -96,12 +96,12 @@ public void onCheckedChanged(RadioGroup group, int checkedId) {
}
int groupId = group.getId();
- if (groupId == R.id.start_cap_radio) {
+ if (groupId == com.example.common_ui.R.id.start_cap_radio) {
Cap startCap = radioIdToStartCap.get(checkedId);
if (startCap != null) {
polyline.setStartCap(startCap);
}
- } else if (groupId == R.id.end_cap_radio) {
+ } else if (groupId == com.example.common_ui.R.id.end_cap_radio) {
Cap endCap = radioIdToEndCap.get(checkedId);
if (endCap != null) {
polyline.setEndCap(endCap);
@@ -128,16 +128,16 @@ public void refresh() {
}
Cap startCap = polyline.getStartCap();
if (startCap instanceof ButtCap) {
- startCapRadioGroup.check(R.id.start_cap_radio_butt);
+ startCapRadioGroup.check(com.example.common_ui.R.id.start_cap_radio_butt);
} else if (startCap instanceof SquareCap) {
- startCapRadioGroup.check(R.id.start_cap_radio_square);
+ startCapRadioGroup.check(com.example.common_ui.R.id.start_cap_radio_square);
} else if (startCap instanceof RoundCap) {
- startCapRadioGroup.check(R.id.start_cap_radio_round);
+ startCapRadioGroup.check(com.example.common_ui.R.id.start_cap_radio_round);
} else if (startCap instanceof CustomCap) {
startCapRadioGroup.check(
isOok((CustomCap) startCap)
- ? R.id.start_cap_radio_custom_ook
- : R.id.start_cap_radio_custom_chevron);
+ ? com.example.common_ui.R.id.start_cap_radio_custom_ook
+ : com.example.common_ui.R.id.start_cap_radio_custom_chevron);
} else {
startCapRadioGroup.clearCheck();
}
@@ -147,16 +147,16 @@ public void refresh() {
}
Cap endCap = polyline.getEndCap();
if (endCap instanceof ButtCap) {
- endCapRadioGroup.check(R.id.end_cap_radio_butt);
+ endCapRadioGroup.check(com.example.common_ui.R.id.end_cap_radio_butt);
} else if (endCap instanceof SquareCap) {
- endCapRadioGroup.check(R.id.end_cap_radio_square);
+ endCapRadioGroup.check(com.example.common_ui.R.id.end_cap_radio_square);
} else if (endCap instanceof RoundCap) {
- endCapRadioGroup.check(R.id.end_cap_radio_round);
+ endCapRadioGroup.check(com.example.common_ui.R.id.end_cap_radio_round);
} else if (endCap instanceof CustomCap) {
endCapRadioGroup.check(
isOok((CustomCap) endCap)
- ? R.id.end_cap_radio_custom_ook
- : R.id.end_cap_radio_custom_chevron);
+ ? com.example.common_ui.R.id.end_cap_radio_custom_ook
+ : com.example.common_ui.R.id.end_cap_radio_custom_chevron);
} else {
endCapRadioGroup.clearCheck();
}
diff --git a/ApiDemos/java/app/src/v3/java/com/example/mapdemo/polyline/PolylineColorControlFragment.java b/ApiDemos/project/java-app/src/v3/java/com/example/mapdemo/polyline/PolylineColorControlFragment.java
similarity index 89%
rename from ApiDemos/java/app/src/v3/java/com/example/mapdemo/polyline/PolylineColorControlFragment.java
rename to ApiDemos/project/java-app/src/v3/java/com/example/mapdemo/polyline/PolylineColorControlFragment.java
index e3368ee87..6dd3f6d1e 100644
--- a/ApiDemos/java/app/src/v3/java/com/example/mapdemo/polyline/PolylineColorControlFragment.java
+++ b/ApiDemos/project/java-app/src/v3/java/com/example/mapdemo/polyline/PolylineColorControlFragment.java
@@ -37,17 +37,17 @@ public class PolylineColorControlFragment extends PolylineControlFragment implem
@Override
public View onCreateView(LayoutInflater inflater, ViewGroup container, Bundle bundle) {
- View view = inflater.inflate(R.layout.polyline_color_control_fragment, container, false);
+ View view = inflater.inflate(com.example.common_ui.R.layout.polyline_color_control_fragment, container, false);
- alphaBar = view.findViewById(R.id.alphaSeekBar);
+ alphaBar = view.findViewById(com.example.common_ui.R.id.alphaSeekBar);
alphaBar.setMax(ALPHA_MAX);
alphaBar.setOnSeekBarChangeListener(this);
- hueBar = view.findViewById(R.id.hueSeekBar);
+ hueBar = view.findViewById(com.example.common_ui.R.id.hueSeekBar);
hueBar.setMax(HUE_MAX);
hueBar.setOnSeekBarChangeListener(this);
- argbTextView = (TextView) view.findViewById(R.id.argbTextView);
+ argbTextView = (TextView) view.findViewById(com.example.common_ui.R.id.argbTextView);
return view;
}
diff --git a/ApiDemos/java/app/src/v3/java/com/example/mapdemo/polyline/PolylineControlFragment.java b/ApiDemos/project/java-app/src/v3/java/com/example/mapdemo/polyline/PolylineControlFragment.java
similarity index 100%
rename from ApiDemos/java/app/src/v3/java/com/example/mapdemo/polyline/PolylineControlFragment.java
rename to ApiDemos/project/java-app/src/v3/java/com/example/mapdemo/polyline/PolylineControlFragment.java
diff --git a/ApiDemos/java/app/src/v3/java/com/example/mapdemo/polyline/PolylineControlFragmentPagerAdapter.java b/ApiDemos/project/java-app/src/v3/java/com/example/mapdemo/polyline/PolylineControlFragmentPagerAdapter.java
similarity index 100%
rename from ApiDemos/java/app/src/v3/java/com/example/mapdemo/polyline/PolylineControlFragmentPagerAdapter.java
rename to ApiDemos/project/java-app/src/v3/java/com/example/mapdemo/polyline/PolylineControlFragmentPagerAdapter.java
diff --git a/ApiDemos/java/app/src/v3/java/com/example/mapdemo/polyline/PolylineDemoActivity.java b/ApiDemos/project/java-app/src/v3/java/com/example/mapdemo/polyline/PolylineDemoActivity.java
similarity index 92%
rename from ApiDemos/java/app/src/v3/java/com/example/mapdemo/polyline/PolylineDemoActivity.java
rename to ApiDemos/project/java-app/src/v3/java/com/example/mapdemo/polyline/PolylineDemoActivity.java
index 8703f043c..327b06ca0 100644
--- a/ApiDemos/java/app/src/v3/java/com/example/mapdemo/polyline/PolylineDemoActivity.java
+++ b/ApiDemos/project/java-app/src/v3/java/com/example/mapdemo/polyline/PolylineDemoActivity.java
@@ -72,22 +72,22 @@ public class PolylineDemoActivity extends AppCompatActivity implements
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
- setContentView(R.layout.polyline_demo);
+ setContentView(com.example.common_ui.R.layout.polyline_demo);
pagerAdapter =
new PolylineControlFragmentPagerAdapter(
getSupportFragmentManager(), /* isLiteMode= */ false);
- pager = findViewById(R.id.pager);
+ pager = findViewById(com.example.common_ui.R.id.pager);
pager.setAdapter(pagerAdapter);
// onPageSelected(0) isn't invoked once views are ready, so post a Runnable to
// refreshControlPanel() for the first time instead...
pager.post(this::refreshControlPanel);
- polylineRadio = findViewById(R.id.polyline_radio);
+ polylineRadio = findViewById(com.example.common_ui.R.id.polyline_radio);
SupportMapFragment mapFragment =
- (SupportMapFragment) getSupportFragmentManager().findFragmentById(R.id.map);
+ (SupportMapFragment) getSupportFragmentManager().findFragmentById(com.example.common_ui.R.id.map);
mapFragment.getMapAsync(this);
}
@@ -149,7 +149,7 @@ public void onMapReady(GoogleMap map) {
map.moveCamera(CameraUpdateFactory.newLatLng(SYDNEY));
selectedPolyline = australiaPolyline;
- polylineRadio.check(R.id.polyline_radio_australia);
+ polylineRadio.check(com.example.common_ui.R.id.polyline_radio_australia);
pager.addOnPageChangeListener(this);
polylineRadio.setOnCheckedChangeListener(this);
@@ -168,13 +168,13 @@ public void onPolylineClick(Polyline polyline) {
@Override
public void onCheckedChanged(RadioGroup group, int checkedId) {
- if (checkedId == R.id.polyline_radio_australia) {
+ if (checkedId == com.example.common_ui.R.id.polyline_radio_australia) {
selectedPolyline = australiaPolyline;
- } else if (checkedId == R.id.polyline_radio_sydney) {
+ } else if (checkedId == com.example.common_ui.R.id.polyline_radio_sydney) {
selectedPolyline = sydneyPolyline;
- } else if (checkedId == R.id.polyline_radio_melbourne) {
+ } else if (checkedId == com.example.common_ui.R.id.polyline_radio_melbourne) {
selectedPolyline = melbournePolyline;
- } else if (checkedId == R.id.polyline_radio_world) {
+ } else if (checkedId == com.example.common_ui.R.id.polyline_radio_world) {
selectedPolyline = worldPolyline;
}
refreshControlPanel();
diff --git a/ApiDemos/java/app/src/v3/java/com/example/mapdemo/polyline/PolylineJointControlFragment.java b/ApiDemos/project/java-app/src/v3/java/com/example/mapdemo/polyline/PolylineJointControlFragment.java
similarity index 77%
rename from ApiDemos/java/app/src/v3/java/com/example/mapdemo/polyline/PolylineJointControlFragment.java
rename to ApiDemos/project/java-app/src/v3/java/com/example/mapdemo/polyline/PolylineJointControlFragment.java
index 014247286..602904281 100644
--- a/ApiDemos/java/app/src/v3/java/com/example/mapdemo/polyline/PolylineJointControlFragment.java
+++ b/ApiDemos/project/java-app/src/v3/java/com/example/mapdemo/polyline/PolylineJointControlFragment.java
@@ -37,15 +37,15 @@ public class PolylineJointControlFragment extends PolylineControlFragment implem
private RadioGroup jointRadioGroup;
public PolylineJointControlFragment() {
- radioIdToJointType.put(R.id.joint_radio_default, JointType.DEFAULT);
- radioIdToJointType.put(R.id.joint_radio_bevel, JointType.BEVEL);
- radioIdToJointType.put(R.id.joint_radio_round, JointType.ROUND);
+ radioIdToJointType.put(com.example.common_ui.R.id.joint_radio_default, JointType.DEFAULT);
+ radioIdToJointType.put(com.example.common_ui.R.id.joint_radio_bevel, JointType.BEVEL);
+ radioIdToJointType.put(com.example.common_ui.R.id.joint_radio_round, JointType.ROUND);
}
@Override
public View onCreateView(LayoutInflater inflater, ViewGroup container, Bundle bundle) {
- View view = inflater.inflate(R.layout.polyline_joint_control_fragment, container, false);
- jointRadioGroup = view.findViewById(R.id.joint_radio);
+ View view = inflater.inflate(com.example.common_ui.R.layout.polyline_joint_control_fragment, container, false);
+ jointRadioGroup = view.findViewById(com.example.common_ui.R.id.joint_radio);
jointRadioGroup.setOnCheckedChangeListener(this);
return view;
}
@@ -78,13 +78,13 @@ public void refresh() {
switch (polyline.getJointType()) {
case JointType.DEFAULT:
- jointRadioGroup.check(R.id.joint_radio_default);
+ jointRadioGroup.check(com.example.common_ui.R.id.joint_radio_default);
break;
case JointType.BEVEL:
- jointRadioGroup.check(R.id.joint_radio_bevel);
+ jointRadioGroup.check(com.example.common_ui.R.id.joint_radio_bevel);
break;
case JointType.ROUND:
- jointRadioGroup.check(R.id.joint_radio_round);
+ jointRadioGroup.check(com.example.common_ui.R.id.joint_radio_round);
break;
default:
jointRadioGroup.clearCheck();
diff --git a/ApiDemos/java/app/src/v3/java/com/example/mapdemo/polyline/PolylineOtherOptionsControlFragment.java b/ApiDemos/project/java-app/src/v3/java/com/example/mapdemo/polyline/PolylineOtherOptionsControlFragment.java
similarity index 84%
rename from ApiDemos/java/app/src/v3/java/com/example/mapdemo/polyline/PolylineOtherOptionsControlFragment.java
rename to ApiDemos/project/java-app/src/v3/java/com/example/mapdemo/polyline/PolylineOtherOptionsControlFragment.java
index cd0391455..42982f1ce 100644
--- a/ApiDemos/java/app/src/v3/java/com/example/mapdemo/polyline/PolylineOtherOptionsControlFragment.java
+++ b/ApiDemos/project/java-app/src/v3/java/com/example/mapdemo/polyline/PolylineOtherOptionsControlFragment.java
@@ -34,12 +34,12 @@ public class PolylineOtherOptionsControlFragment extends PolylineControlFragment
@Override
public View onCreateView(LayoutInflater inflater, ViewGroup container, Bundle bundle) {
- View view = inflater.inflate(R.layout.polyline_other_options_control_fragment, container, false);
- clickabilityCheckBox = view.findViewById(R.id.clickabilityCheckBox);
+ View view = inflater.inflate(com.example.common_ui.R.layout.polyline_other_options_control_fragment, container, false);
+ clickabilityCheckBox = view.findViewById(com.example.common_ui.R.id.clickabilityCheckBox);
clickabilityCheckBox.setOnClickListener(this);
- geodesicCheckBox = view.findViewById(R.id.geodesicCheckBox);
+ geodesicCheckBox = view.findViewById(com.example.common_ui.R.id.geodesicCheckBox);
geodesicCheckBox.setOnClickListener(this);
- visibilityCheckBox = view.findViewById(R.id.visibilityCheckBox);
+ visibilityCheckBox = view.findViewById(com.example.common_ui.R.id.visibilityCheckBox);
visibilityCheckBox.setOnClickListener(this);
return view;
}
diff --git a/ApiDemos/java/app/src/v3/java/com/example/mapdemo/polyline/PolylinePatternControlFragment.java b/ApiDemos/project/java-app/src/v3/java/com/example/mapdemo/polyline/PolylinePatternControlFragment.java
similarity index 83%
rename from ApiDemos/java/app/src/v3/java/com/example/mapdemo/polyline/PolylinePatternControlFragment.java
rename to ApiDemos/project/java-app/src/v3/java/com/example/mapdemo/polyline/PolylinePatternControlFragment.java
index 497703bba..5657ec315 100644
--- a/ApiDemos/java/app/src/v3/java/com/example/mapdemo/polyline/PolylinePatternControlFragment.java
+++ b/ApiDemos/project/java-app/src/v3/java/com/example/mapdemo/polyline/PolylinePatternControlFragment.java
@@ -50,13 +50,13 @@ public class PolylinePatternControlFragment extends PolylineControlFragment impl
@Override
public View onCreateView(LayoutInflater inflater, ViewGroup container, Bundle bundle) {
- View view = inflater.inflate(R.layout.polyline_pattern_control_fragment, container, false);
- patternTextView = view.findViewById(R.id.patternTextView);
+ View view = inflater.inflate(com.example.common_ui.R.layout.polyline_pattern_control_fragment, container, false);
+ patternTextView = view.findViewById(com.example.common_ui.R.id.patternTextView);
- patternSolidBtn = view.findViewById(R.id.patternSolidBtn);
- patternDottedBtn = view.findViewById(R.id.patternDottedBtn);
- patternDashedBtn = view.findViewById(R.id.patternDashedBtn);
- patternMixedBtn = view.findViewById(R.id.patternMixedBtn);
+ patternSolidBtn = view.findViewById(com.example.common_ui.R.id.patternSolidBtn);
+ patternDottedBtn = view.findViewById(com.example.common_ui.R.id.patternDottedBtn);
+ patternDashedBtn = view.findViewById(com.example.common_ui.R.id.patternDashedBtn);
+ patternMixedBtn = view.findViewById(com.example.common_ui.R.id.patternMixedBtn);
patternSolidBtn.setOnClickListener(this);
patternDottedBtn.setOnClickListener(this);
@@ -73,16 +73,16 @@ public void onClick(View view) {
int id = view.getId();
List pattern;
- if (id == R.id.patternSolidBtn) {
+ if (id == com.example.common_ui.R.id.patternSolidBtn) {
pattern = null;
- } else if (id == R.id.patternDottedBtn) {
+ } else if (id == com.example.common_ui.R.id.patternDottedBtn) {
pattern = Arrays.asList(new Dot(), new Gap(RANDOM.nextFloat() * MAX_GAP_LENGTH));
- } else if (id == R.id.patternDashedBtn) {
+ } else if (id == com.example.common_ui.R.id.patternDashedBtn) {
pattern =
Arrays.asList(
new Dash(RANDOM.nextFloat() * MAX_DASH_LENGTH),
new Gap(RANDOM.nextFloat() * MAX_GAP_LENGTH));
- } else if (id == R.id.patternMixedBtn) {
+ } else if (id == com.example.common_ui.R.id.patternMixedBtn) {
int size = 2 * (1 + RANDOM.nextInt(MAX_PATTERN_SIZE / 2));
pattern = new ArrayList<>(size);
for (int i = 0; i < size; i++) {
diff --git a/ApiDemos/java/app/src/v3/java/com/example/mapdemo/polyline/PolylinePointsControlFragment.java b/ApiDemos/project/java-app/src/v3/java/com/example/mapdemo/polyline/PolylinePointsControlFragment.java
similarity index 81%
rename from ApiDemos/java/app/src/v3/java/com/example/mapdemo/polyline/PolylinePointsControlFragment.java
rename to ApiDemos/project/java-app/src/v3/java/com/example/mapdemo/polyline/PolylinePointsControlFragment.java
index 766b7a133..13a361473 100644
--- a/ApiDemos/java/app/src/v3/java/com/example/mapdemo/polyline/PolylinePointsControlFragment.java
+++ b/ApiDemos/project/java-app/src/v3/java/com/example/mapdemo/polyline/PolylinePointsControlFragment.java
@@ -60,19 +60,19 @@ public void run() {
@Override
public View onCreateView(LayoutInflater inflater, ViewGroup container, Bundle bundle) {
- View view = inflater.inflate(R.layout.polyline_points_control_fragment, container, false);
+ View view = inflater.inflate(com.example.common_ui.R.layout.polyline_points_control_fragment, container, false);
- view.findViewById(R.id.move_up).setOnTouchListener(this);
- view.findViewById(R.id.move_down).setOnTouchListener(this);
- view.findViewById(R.id.move_left).setOnTouchListener(this);
- view.findViewById(R.id.move_right).setOnTouchListener(this);
+ view.findViewById(com.example.common_ui.R.id.move_up).setOnTouchListener(this);
+ view.findViewById(com.example.common_ui.R.id.move_down).setOnTouchListener(this);
+ view.findViewById(com.example.common_ui.R.id.move_left).setOnTouchListener(this);
+ view.findViewById(com.example.common_ui.R.id.move_right).setOnTouchListener(this);
- EditText fpsEditText = (EditText) view.findViewById(R.id.fps_edittext);
+ EditText fpsEditText = (EditText) view.findViewById(com.example.common_ui.R.id.fps_edittext);
fpsEditText.setOnEditorActionListener(this);
fpsEditText.setOnFocusChangeListener(this);
setFrameRate(fpsEditText);
- EditText stepEditText = (EditText) view.findViewById(R.id.step_edittext);
+ EditText stepEditText = (EditText) view.findViewById(com.example.common_ui.R.id.step_edittext);
stepEditText.setOnEditorActionListener(this);
stepEditText.setOnFocusChangeListener(this);
setStepSize(stepEditText);
@@ -99,13 +99,13 @@ public boolean onTouch(View view, MotionEvent motionEvent) {
}
private void setMoveDirection(int buttonId) {
- if (buttonId == R.id.move_up) {
+ if (buttonId == com.example.common_ui.R.id.move_up) {
moveDirection = MoveDirection.UP;
- } else if (buttonId == R.id.move_down) {
+ } else if (buttonId == com.example.common_ui.R.id.move_down) {
moveDirection = MoveDirection.DOWN;
- } else if (buttonId == R.id.move_left) {
+ } else if (buttonId == com.example.common_ui.R.id.move_left) {
moveDirection = MoveDirection.LEFT;
- } else if (buttonId == R.id.move_right) {
+ } else if (buttonId == com.example.common_ui.R.id.move_right) {
moveDirection = MoveDirection.RIGHT;
} else {
moveDirection = null;
@@ -120,9 +120,9 @@ public boolean onEditorAction(TextView textView, int actionId, KeyEvent event) {
}
int textViewId = textView.getId();
- if (textViewId == R.id.fps_edittext) {
+ if (textViewId == com.example.common_ui.R.id.fps_edittext) {
setFrameRate(textView);
- } else if (textViewId == R.id.step_edittext) {
+ } else if (textViewId == com.example.common_ui.R.id.step_edittext) {
setStepSize(textView);
}
return false;
@@ -135,9 +135,9 @@ public void onFocusChange(View view, boolean hasFocus) {
}
int viewId = view.getId();
- if (viewId == R.id.fps_edittext) {
+ if (viewId == com.example.common_ui.R.id.fps_edittext) {
setFrameRate((TextView) view);
- } else if (viewId == R.id.step_edittext) {
+ } else if (viewId == com.example.common_ui.R.id.step_edittext) {
setStepSize((TextView) view);
}
}
diff --git a/ApiDemos/java/app/src/v3/java/com/example/mapdemo/polyline/PolylineSpansControlFragment.java b/ApiDemos/project/java-app/src/v3/java/com/example/mapdemo/polyline/PolylineSpansControlFragment.java
similarity index 91%
rename from ApiDemos/java/app/src/v3/java/com/example/mapdemo/polyline/PolylineSpansControlFragment.java
rename to ApiDemos/project/java-app/src/v3/java/com/example/mapdemo/polyline/PolylineSpansControlFragment.java
index 4352c90e7..b2d19e7e4 100644
--- a/ApiDemos/java/app/src/v3/java/com/example/mapdemo/polyline/PolylineSpansControlFragment.java
+++ b/ApiDemos/project/java-app/src/v3/java/com/example/mapdemo/polyline/PolylineSpansControlFragment.java
@@ -76,22 +76,22 @@ public void onCreate(Bundle savedInstanceState) {
@Override
public View onCreateView(LayoutInflater inflater, ViewGroup container, Bundle bundle) {
- View view = inflater.inflate(R.layout.polyline_spans_control_fragment, container, false);
+ View view = inflater.inflate(com.example.common_ui.R.layout.polyline_spans_control_fragment, container, false);
- spanCountBar = view.findViewById(R.id.spansSeekBar);
+ spanCountBar = view.findViewById(com.example.common_ui.R.id.spansSeekBar);
spanCountBar.setMax(SPAN_COUNT_MAX);
spanCountBar.setOnSeekBarChangeListener(this);
- spanCountTextView = view.findViewById(R.id.spansTextView);
+ spanCountTextView = view.findViewById(com.example.common_ui.R.id.spansTextView);
- gradientToggle = view.findViewById(R.id.gradientToggle);
+ gradientToggle = view.findViewById(com.example.common_ui.R.id.gradientToggle);
gradientToggle.setOnCheckedChangeListener(
(buttonView, isChecked) -> {
polylineGradientStates.put(polyline, isChecked);
updateSpans();
});
- polylineStampStyleRadioGroup = view.findViewById(R.id.polyline_stamp_style_radio_group);
+ polylineStampStyleRadioGroup = view.findViewById(com.example.common_ui.R.id.polyline_stamp_style_radio_group);
polylineStampStyleRadioGroup.setVisibility(View.INVISIBLE);
if (isLiteMode) {
@@ -125,9 +125,9 @@ private List generateSpans(int count) {
? StrokeStyle.gradientBuilder(polyline.getColor(), invertedPolylineColor)
: StrokeStyle.colorBuilder(color);
- if (selectedStampStyleId == R.id.polyline_texture_style) {
+ if (selectedStampStyleId == com.example.common_ui.R.id.polyline_texture_style) {
strokeStyleBuilder.stamp(
- TextureStyle.newBuilder(BitmapDescriptorFactory.fromResource(R.drawable.ook))
+ TextureStyle.newBuilder(BitmapDescriptorFactory.fromResource(com.example.common_ui.R.drawable.ook))
.build());
}
diff --git a/ApiDemos/java/app/src/v3/java/com/example/mapdemo/polyline/PolylineWidthControlFragment.java b/ApiDemos/project/java-app/src/v3/java/com/example/mapdemo/polyline/PolylineWidthControlFragment.java
similarity index 88%
rename from ApiDemos/java/app/src/v3/java/com/example/mapdemo/polyline/PolylineWidthControlFragment.java
rename to ApiDemos/project/java-app/src/v3/java/com/example/mapdemo/polyline/PolylineWidthControlFragment.java
index b69348d43..00e07a340 100644
--- a/ApiDemos/java/app/src/v3/java/com/example/mapdemo/polyline/PolylineWidthControlFragment.java
+++ b/ApiDemos/project/java-app/src/v3/java/com/example/mapdemo/polyline/PolylineWidthControlFragment.java
@@ -36,11 +36,11 @@ public class PolylineWidthControlFragment extends PolylineControlFragment implem
@Override
public View onCreateView(LayoutInflater inflater, ViewGroup container, Bundle bundle) {
- View view = inflater.inflate(R.layout.polyline_width_control_fragment, container, false);
- widthBar = view.findViewById(R.id.widthSeekBar);
+ View view = inflater.inflate(com.example.common_ui.R.layout.polyline_width_control_fragment, container, false);
+ widthBar = view.findViewById(com.example.common_ui.R.id.widthSeekBar);
widthBar.setMax(WIDTH_MAX);
widthBar.setOnSeekBarChangeListener(this);
- widthTextView = view.findViewById(R.id.widthTextView);
+ widthTextView = view.findViewById(com.example.common_ui.R.id.widthTextView);
return view;
}
diff --git a/ApiDemos/java/app/src/v3/res/layout/basic_demo.xml b/ApiDemos/project/java-app/src/v3/res/layout/basic_demo.xml
similarity index 100%
rename from ApiDemos/java/app/src/v3/res/layout/basic_demo.xml
rename to ApiDemos/project/java-app/src/v3/res/layout/basic_demo.xml
diff --git a/ApiDemos/kotlin/app/src/main/res/layout/camera_clamping_demo.xml b/ApiDemos/project/java-app/src/v3/res/layout/camera_clamping_demo.xml
similarity index 91%
rename from ApiDemos/kotlin/app/src/main/res/layout/camera_clamping_demo.xml
rename to ApiDemos/project/java-app/src/v3/res/layout/camera_clamping_demo.xml
index 2e24ffce8..7914410a6 100644
--- a/ApiDemos/kotlin/app/src/main/res/layout/camera_clamping_demo.xml
+++ b/ApiDemos/project/java-app/src/v3/res/layout/camera_clamping_demo.xml
@@ -31,16 +31,19 @@
android:id="@+id/clamp_min_zoom"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
+ android:onClick="onSetMinZoomClamp"
android:text="@string/clamp_min_zoom"/>
-
-
+
+ android:layout_height="match_parent"
+ class="com.google.android.libraries.maps.SupportMapFragment"/>
+
diff --git a/ApiDemos/kotlin/app/src/main/res/layout/styled_map_demo.xml b/ApiDemos/project/java-app/src/v3/res/layout/marker_collision_demo.xml
similarity index 87%
rename from ApiDemos/kotlin/app/src/main/res/layout/styled_map_demo.xml
rename to ApiDemos/project/java-app/src/v3/res/layout/marker_collision_demo.xml
index 0ce2bc643..d587601db 100644
--- a/ApiDemos/kotlin/app/src/main/res/layout/styled_map_demo.xml
+++ b/ApiDemos/project/java-app/src/v3/res/layout/marker_collision_demo.xml
@@ -14,9 +14,8 @@
See the License for the specific language governing permissions and
limitations under the License.
-->
-
\ No newline at end of file
+ android:layout_height="match_parent" />
diff --git a/ApiDemos/java/app/src/v3/res/layout/marker_demo.xml b/ApiDemos/project/java-app/src/v3/res/layout/marker_demo.xml
similarity index 100%
rename from ApiDemos/java/app/src/v3/res/layout/marker_demo.xml
rename to ApiDemos/project/java-app/src/v3/res/layout/marker_demo.xml
diff --git a/ApiDemos/java/app/src/v3/res/layout/multimap_demo.xml b/ApiDemos/project/java-app/src/v3/res/layout/multimap_demo.xml
similarity index 100%
rename from ApiDemos/java/app/src/v3/res/layout/multimap_demo.xml
rename to ApiDemos/project/java-app/src/v3/res/layout/multimap_demo.xml
diff --git a/ApiDemos/java/app/src/v3/res/layout/my_location_demo.xml b/ApiDemos/project/java-app/src/v3/res/layout/my_location_demo.xml
similarity index 100%
rename from ApiDemos/java/app/src/v3/res/layout/my_location_demo.xml
rename to ApiDemos/project/java-app/src/v3/res/layout/my_location_demo.xml
diff --git a/ApiDemos/java/app/src/v3/res/layout/options_demo.xml b/ApiDemos/project/java-app/src/v3/res/layout/options_demo.xml
similarity index 100%
rename from ApiDemos/java/app/src/v3/res/layout/options_demo.xml
rename to ApiDemos/project/java-app/src/v3/res/layout/options_demo.xml
diff --git a/ApiDemos/java/app/src/v3/res/layout/polygon_demo.xml b/ApiDemos/project/java-app/src/v3/res/layout/polygon_demo.xml
similarity index 100%
rename from ApiDemos/java/app/src/v3/res/layout/polygon_demo.xml
rename to ApiDemos/project/java-app/src/v3/res/layout/polygon_demo.xml
diff --git a/ApiDemos/kotlin/app/src/v3/res/layout/polyline_cap_control_fragment.xml b/ApiDemos/project/java-app/src/v3/res/layout/polyline_cap_control_fragment.xml
similarity index 86%
rename from ApiDemos/kotlin/app/src/v3/res/layout/polyline_cap_control_fragment.xml
rename to ApiDemos/project/java-app/src/v3/res/layout/polyline_cap_control_fragment.xml
index 6c19db8df..33eef6abd 100644
--- a/ApiDemos/kotlin/app/src/v3/res/layout/polyline_cap_control_fragment.xml
+++ b/ApiDemos/project/java-app/src/v3/res/layout/polyline_cap_control_fragment.xml
@@ -1,18 +1,19 @@
-
+
+
+
+
+
+
diff --git a/ApiDemos/java/app/src/v3/res/layout/polyline_joint_control_fragment.xml b/ApiDemos/project/java-app/src/v3/res/layout/polyline_joint_control_fragment.xml
similarity index 64%
rename from ApiDemos/java/app/src/v3/res/layout/polyline_joint_control_fragment.xml
rename to ApiDemos/project/java-app/src/v3/res/layout/polyline_joint_control_fragment.xml
index 01521e70e..865d3958d 100644
--- a/ApiDemos/java/app/src/v3/res/layout/polyline_joint_control_fragment.xml
+++ b/ApiDemos/project/java-app/src/v3/res/layout/polyline_joint_control_fragment.xml
@@ -1,18 +1,19 @@
-
+
+
+
+
+
+
+
+
+ Copyright 2025 Google LLC
+
+ Licensed under the Apache License, Version 2.0 (the "License");
+ you may not use this file except in compliance with the License.
+ You may obtain a copy of the License at
+
+ http://www.apache.org/licenses/LICENSE-2.0
+
+ Unless required by applicable law or agreed to in writing, software
+ distributed under the License is distributed on an "AS IS" BASIS,
+ WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ See the License for the specific language governing permissions and
+ limitations under the License.
+-->
-
+
-
-
-
+ android:gravity="center" />
diff --git a/ApiDemos/java/app/src/v3/res/layout/raw_mapview_demo.xml b/ApiDemos/project/java-app/src/v3/res/layout/raw_mapview_demo.xml
similarity index 100%
rename from ApiDemos/java/app/src/v3/res/layout/raw_mapview_demo.xml
rename to ApiDemos/project/java-app/src/v3/res/layout/raw_mapview_demo.xml
diff --git a/ApiDemos/java/app/src/v3/res/layout/save_state_demo.xml b/ApiDemos/project/java-app/src/v3/res/layout/save_state_demo.xml
similarity index 100%
rename from ApiDemos/java/app/src/v3/res/layout/save_state_demo.xml
rename to ApiDemos/project/java-app/src/v3/res/layout/save_state_demo.xml
diff --git a/ApiDemos/kotlin/app/src/main/res/layout/snapshot_demo.xml b/ApiDemos/project/java-app/src/v3/res/layout/snapshot_demo.xml
similarity index 92%
rename from ApiDemos/kotlin/app/src/main/res/layout/snapshot_demo.xml
rename to ApiDemos/project/java-app/src/v3/res/layout/snapshot_demo.xml
index c5a837cbf..793d28758 100755
--- a/ApiDemos/kotlin/app/src/main/res/layout/snapshot_demo.xml
+++ b/ApiDemos/project/java-app/src/v3/res/layout/snapshot_demo.xml
@@ -30,7 +30,7 @@
android:layout_width="match_parent"
android:layout_weight="1"
android:layout_height="0dp"
- class="com.google.android.gms.maps.SupportMapFragment" />
+ class="com.google.android.libraries.maps.SupportMapFragment" />
diff --git a/ApiDemos/java/app/src/v3/res/layout/split_street_view_panorama_and_map_demo.xml b/ApiDemos/project/java-app/src/v3/res/layout/split_street_view_panorama_and_map_demo.xml
similarity index 100%
rename from ApiDemos/java/app/src/v3/res/layout/split_street_view_panorama_and_map_demo.xml
rename to ApiDemos/project/java-app/src/v3/res/layout/split_street_view_panorama_and_map_demo.xml
diff --git a/ApiDemos/java/app/src/v3/res/layout/street_view_panorama_basic_demo.xml b/ApiDemos/project/java-app/src/v3/res/layout/street_view_panorama_basic_demo.xml
similarity index 100%
rename from ApiDemos/java/app/src/v3/res/layout/street_view_panorama_basic_demo.xml
rename to ApiDemos/project/java-app/src/v3/res/layout/street_view_panorama_basic_demo.xml
diff --git a/ApiDemos/java/app/src/v3/res/layout/street_view_panorama_events_demo.xml b/ApiDemos/project/java-app/src/v3/res/layout/street_view_panorama_events_demo.xml
similarity index 100%
rename from ApiDemos/java/app/src/v3/res/layout/street_view_panorama_events_demo.xml
rename to ApiDemos/project/java-app/src/v3/res/layout/street_view_panorama_events_demo.xml
diff --git a/ApiDemos/java/app/src/v3/res/layout/street_view_panorama_navigation_demo.xml b/ApiDemos/project/java-app/src/v3/res/layout/street_view_panorama_navigation_demo.xml
similarity index 100%
rename from ApiDemos/java/app/src/v3/res/layout/street_view_panorama_navigation_demo.xml
rename to ApiDemos/project/java-app/src/v3/res/layout/street_view_panorama_navigation_demo.xml
diff --git a/ApiDemos/java/app/src/v3/res/layout/street_view_panorama_options_demo.xml b/ApiDemos/project/java-app/src/v3/res/layout/street_view_panorama_options_demo.xml
similarity index 100%
rename from ApiDemos/java/app/src/v3/res/layout/street_view_panorama_options_demo.xml
rename to ApiDemos/project/java-app/src/v3/res/layout/street_view_panorama_options_demo.xml
diff --git a/ApiDemos/java/app/src/v3/res/layout/street_view_panorama_view_demo.xml b/ApiDemos/project/java-app/src/v3/res/layout/street_view_panorama_view_demo.xml
similarity index 100%
rename from ApiDemos/java/app/src/v3/res/layout/street_view_panorama_view_demo.xml
rename to ApiDemos/project/java-app/src/v3/res/layout/street_view_panorama_view_demo.xml
diff --git a/ApiDemos/kotlin/app/src/main/res/layout/tile_coordinate_demo.xml b/ApiDemos/project/java-app/src/v3/res/layout/styled_map_demo.xml
old mode 100755
new mode 100644
similarity index 83%
rename from ApiDemos/kotlin/app/src/main/res/layout/tile_coordinate_demo.xml
rename to ApiDemos/project/java-app/src/v3/res/layout/styled_map_demo.xml
index b90b22b8b..2a8f42a0e
--- a/ApiDemos/kotlin/app/src/main/res/layout/tile_coordinate_demo.xml
+++ b/ApiDemos/project/java-app/src/v3/res/layout/styled_map_demo.xml
@@ -13,9 +13,9 @@
WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
See the License for the specific language governing permissions and
limitations under the License.
--->
+-->
+ class="com.google.android.libraries.maps.SupportMapFragment" />
diff --git a/ApiDemos/kotlin/app/src/main/res/layout/street_view_panorama_basic_demo.xml b/ApiDemos/project/java-app/src/v3/res/layout/tags_demo.xml
similarity index 61%
rename from ApiDemos/kotlin/app/src/main/res/layout/street_view_panorama_basic_demo.xml
rename to ApiDemos/project/java-app/src/v3/res/layout/tags_demo.xml
index ecb9d2d95..a5c4a46b3 100644
--- a/ApiDemos/kotlin/app/src/main/res/layout/street_view_panorama_basic_demo.xml
+++ b/ApiDemos/project/java-app/src/v3/res/layout/tags_demo.xml
@@ -14,14 +14,19 @@
See the License for the specific language governing permissions and
limitations under the License.
-->
-
-
+
+
-
+ class="com.google.android.libraries.maps.SupportMapFragment"/>
+
+
\ No newline at end of file
diff --git a/ApiDemos/kotlin/app/src/main/res/layout/text_fragment.xml b/ApiDemos/project/java-app/src/v3/res/layout/text_fragment.xml
similarity index 100%
rename from ApiDemos/kotlin/app/src/main/res/layout/text_fragment.xml
rename to ApiDemos/project/java-app/src/v3/res/layout/text_fragment.xml
diff --git a/ApiDemos/java/app/src/v3/res/layout/tile_coordinate_demo.xml b/ApiDemos/project/java-app/src/v3/res/layout/tile_coordinate_demo.xml
similarity index 100%
rename from ApiDemos/java/app/src/v3/res/layout/tile_coordinate_demo.xml
rename to ApiDemos/project/java-app/src/v3/res/layout/tile_coordinate_demo.xml
diff --git a/ApiDemos/java/app/src/v3/res/layout/tile_overlay_demo.xml b/ApiDemos/project/java-app/src/v3/res/layout/tile_overlay_demo.xml
similarity index 100%
rename from ApiDemos/java/app/src/v3/res/layout/tile_overlay_demo.xml
rename to ApiDemos/project/java-app/src/v3/res/layout/tile_overlay_demo.xml
diff --git a/ApiDemos/java/app/src/v3/res/layout/ui_settings_demo.xml b/ApiDemos/project/java-app/src/v3/res/layout/ui_settings_demo.xml
similarity index 100%
rename from ApiDemos/java/app/src/v3/res/layout/ui_settings_demo.xml
rename to ApiDemos/project/java-app/src/v3/res/layout/ui_settings_demo.xml
diff --git a/ApiDemos/java/app/src/v3/res/layout/visible_region_demo.xml b/ApiDemos/project/java-app/src/v3/res/layout/visible_region_demo.xml
similarity index 100%
rename from ApiDemos/java/app/src/v3/res/layout/visible_region_demo.xml
rename to ApiDemos/project/java-app/src/v3/res/layout/visible_region_demo.xml
diff --git a/ApiDemos/kotlin/app/.gitignore b/ApiDemos/project/kotlin-app/.gitignore
similarity index 100%
rename from ApiDemos/kotlin/app/.gitignore
rename to ApiDemos/project/kotlin-app/.gitignore
diff --git a/ApiDemos/kotlin/app/build.gradle.kts b/ApiDemos/project/kotlin-app/build.gradle.kts
similarity index 96%
rename from ApiDemos/kotlin/app/build.gradle.kts
rename to ApiDemos/project/kotlin-app/build.gradle.kts
index f326c80e6..6136e94c8 100644
--- a/ApiDemos/kotlin/app/build.gradle.kts
+++ b/ApiDemos/project/kotlin-app/build.gradle.kts
@@ -67,7 +67,7 @@ kotlin {
}
dependencies {
- api(libs.appcompat)
+ implementation(libs.appcompat)
implementation(libs.kotlinStdlib)
implementation(libs.cardview)
implementation(libs.recyclerview)
@@ -78,7 +78,7 @@ dependencies {
implementation(libs.lifecycleRuntimeKtx)
implementation(libs.mapsKtx)
- implementation(libs.activityKtx)
+ implementation(libs.activity)
// Below is used to run the easypermissions library to manage location permissions
// EasyPermissions is needed to help us request for permission to access location
@@ -88,6 +88,8 @@ dependencies {
testImplementation(libs.junit)
androidTestImplementation(libs.androidxJunit)
androidTestImplementation(libs.espressoCore)
+
+ implementation(project(":common-ui"))
}
secrets {
diff --git a/ApiDemos/kotlin/app/proguard-rules.pro b/ApiDemos/project/kotlin-app/proguard-rules.pro
similarity index 100%
rename from ApiDemos/kotlin/app/proguard-rules.pro
rename to ApiDemos/project/kotlin-app/proguard-rules.pro
diff --git a/ApiDemos/kotlin/app/src/main/AndroidManifest.xml b/ApiDemos/project/kotlin-app/src/main/AndroidManifest.xml
similarity index 98%
rename from ApiDemos/kotlin/app/src/main/AndroidManifest.xml
rename to ApiDemos/project/kotlin-app/src/main/AndroidManifest.xml
index 4ea478577..51d0fa203 100644
--- a/ApiDemos/kotlin/app/src/main/AndroidManifest.xml
+++ b/ApiDemos/project/kotlin-app/src/main/AndroidManifest.xml
@@ -24,12 +24,13 @@
+ android:theme="@style/MaterialAppTheme">
-
-
+
+
\ No newline at end of file
diff --git a/ApiDemos/kotlin/app/src/main/res/mipmap-anydpi-v26/ic_launcher.xml b/ApiDemos/project/kotlin-app/src/main/res/mipmap-anydpi-v26/ic_launcher.xml
similarity index 100%
rename from ApiDemos/kotlin/app/src/main/res/mipmap-anydpi-v26/ic_launcher.xml
rename to ApiDemos/project/kotlin-app/src/main/res/mipmap-anydpi-v26/ic_launcher.xml
diff --git a/ApiDemos/kotlin/app/src/main/res/mipmap-anydpi-v26/ic_launcher_round.xml b/ApiDemos/project/kotlin-app/src/main/res/mipmap-anydpi-v26/ic_launcher_round.xml
similarity index 100%
rename from ApiDemos/kotlin/app/src/main/res/mipmap-anydpi-v26/ic_launcher_round.xml
rename to ApiDemos/project/kotlin-app/src/main/res/mipmap-anydpi-v26/ic_launcher_round.xml
diff --git a/ApiDemos/project/kotlin-app/src/main/res/mipmap-hdpi/ic_launcher.png b/ApiDemos/project/kotlin-app/src/main/res/mipmap-hdpi/ic_launcher.png
new file mode 100644
index 000000000..e69de29bb
diff --git a/ApiDemos/project/kotlin-app/src/main/res/mipmap-hdpi/ic_launcher_round.png b/ApiDemos/project/kotlin-app/src/main/res/mipmap-hdpi/ic_launcher_round.png
new file mode 100644
index 000000000..e69de29bb
diff --git a/ApiDemos/project/kotlin-app/src/main/res/mipmap-mdpi/ic_launcher.png b/ApiDemos/project/kotlin-app/src/main/res/mipmap-mdpi/ic_launcher.png
new file mode 100644
index 000000000..e69de29bb
diff --git a/ApiDemos/project/kotlin-app/src/main/res/mipmap-mdpi/ic_launcher_round.png b/ApiDemos/project/kotlin-app/src/main/res/mipmap-mdpi/ic_launcher_round.png
new file mode 100644
index 000000000..e69de29bb
diff --git a/ApiDemos/project/kotlin-app/src/main/res/mipmap-xhdpi/ic_launcher.png b/ApiDemos/project/kotlin-app/src/main/res/mipmap-xhdpi/ic_launcher.png
new file mode 100644
index 000000000..e69de29bb
diff --git a/ApiDemos/project/kotlin-app/src/main/res/mipmap-xhdpi/ic_launcher_round.png b/ApiDemos/project/kotlin-app/src/main/res/mipmap-xhdpi/ic_launcher_round.png
new file mode 100644
index 000000000..e69de29bb
diff --git a/ApiDemos/project/kotlin-app/src/main/res/mipmap-xxhdpi/ic_launcher.png b/ApiDemos/project/kotlin-app/src/main/res/mipmap-xxhdpi/ic_launcher.png
new file mode 100644
index 000000000..e69de29bb
diff --git a/ApiDemos/project/kotlin-app/src/main/res/mipmap-xxhdpi/ic_launcher_round.png b/ApiDemos/project/kotlin-app/src/main/res/mipmap-xxhdpi/ic_launcher_round.png
new file mode 100644
index 000000000..e69de29bb
diff --git a/ApiDemos/project/kotlin-app/src/main/res/mipmap-xxxhdpi/ic_launcher.png b/ApiDemos/project/kotlin-app/src/main/res/mipmap-xxxhdpi/ic_launcher.png
new file mode 100644
index 000000000..e69de29bb
diff --git a/ApiDemos/project/kotlin-app/src/main/res/mipmap-xxxhdpi/ic_launcher_round.png b/ApiDemos/project/kotlin-app/src/main/res/mipmap-xxxhdpi/ic_launcher_round.png
new file mode 100644
index 000000000..e69de29bb
diff --git a/ApiDemos/kotlin/app/src/main/res/values/colors.xml b/ApiDemos/project/kotlin-app/src/main/res/values/colors.xml
similarity index 100%
rename from ApiDemos/kotlin/app/src/main/res/values/colors.xml
rename to ApiDemos/project/kotlin-app/src/main/res/values/colors.xml
diff --git a/ApiDemos/project/kotlin-app/src/main/res/values/strings.xml b/ApiDemos/project/kotlin-app/src/main/res/values/strings.xml
new file mode 100644
index 000000000..e70a5ccb9
--- /dev/null
+++ b/ApiDemos/project/kotlin-app/src/main/res/values/strings.xml
@@ -0,0 +1,19 @@
+
+
+ Maps SDK for Android Demos (Kotlin)
+
+
\ No newline at end of file
diff --git a/ApiDemos/kotlin/app/src/main/res/values/styles.xml b/ApiDemos/project/kotlin-app/src/main/res/values/styles.xml
similarity index 100%
rename from ApiDemos/kotlin/app/src/main/res/values/styles.xml
rename to ApiDemos/project/kotlin-app/src/main/res/values/styles.xml
diff --git a/ApiDemos/kotlin/app/src/v3/AndroidManifest.xml b/ApiDemos/project/kotlin-app/src/v3/AndroidManifest.xml
similarity index 100%
rename from ApiDemos/kotlin/app/src/v3/AndroidManifest.xml
rename to ApiDemos/project/kotlin-app/src/v3/AndroidManifest.xml
diff --git a/ApiDemos/kotlin/app/src/v3/java/com/example/kotlindemos/BasicMapDemoActivity.kt b/ApiDemos/project/kotlin-app/src/v3/java/com/example/kotlindemos/BasicMapDemoActivity.kt
similarity index 92%
rename from ApiDemos/kotlin/app/src/v3/java/com/example/kotlindemos/BasicMapDemoActivity.kt
rename to ApiDemos/project/kotlin-app/src/v3/java/com/example/kotlindemos/BasicMapDemoActivity.kt
index 7475c076a..fcebf1a67 100644
--- a/ApiDemos/kotlin/app/src/v3/java/com/example/kotlindemos/BasicMapDemoActivity.kt
+++ b/ApiDemos/project/kotlin-app/src/v3/java/com/example/kotlindemos/BasicMapDemoActivity.kt
@@ -44,9 +44,9 @@ class BasicMapDemoActivity :
override fun onCreate(savedInstanceState: Bundle?) {
super.onCreate(savedInstanceState)
- setContentView(R.layout.activity_basic_map_demo)
+ setContentView(com.example.common_ui.R.layout.activity_basic_map_demo)
val mapFragment : SupportMapFragment? =
- supportFragmentManager.findFragmentById(R.id.map) as? SupportMapFragment
+ supportFragmentManager.findFragmentById(com.example.common_ui.R.id.map) as? SupportMapFragment
mapFragment?.getMapAsync(this)
}
diff --git a/ApiDemos/kotlin/app/src/v3/java/com/example/kotlindemos/CameraDemoActivity.kt b/ApiDemos/project/kotlin-app/src/v3/java/com/example/kotlindemos/CameraDemoActivity.kt
similarity index 96%
rename from ApiDemos/kotlin/app/src/v3/java/com/example/kotlindemos/CameraDemoActivity.kt
rename to ApiDemos/project/kotlin-app/src/v3/java/com/example/kotlindemos/CameraDemoActivity.kt
index 840b0b59d..3d40877aa 100644
--- a/ApiDemos/kotlin/app/src/v3/java/com/example/kotlindemos/CameraDemoActivity.kt
+++ b/ApiDemos/project/kotlin-app/src/v3/java/com/example/kotlindemos/CameraDemoActivity.kt
@@ -90,16 +90,16 @@ class CameraDemoActivity :
override fun onCreate(savedInstanceState: Bundle?) {
super.onCreate(savedInstanceState)
- setContentView(R.layout.camera_demo)
+ setContentView(com.example.common_ui.R.layout.camera_demo)
// [START_EXCLUDE silent]
- animateToggle = findViewById(R.id.animate)
- customDurationToggle = findViewById(R.id.duration_toggle)
- customDurationBar = findViewById(R.id.duration_bar)
+ animateToggle = findViewById(com.example.common_ui.R.id.animate)
+ customDurationToggle = findViewById(com.example.common_ui.R.id.duration_toggle)
+ customDurationBar = findViewById(com.example.common_ui.R.id.duration_bar)
updateEnabledState()
// [END_EXCLUDE]
- val mapFragment = supportFragmentManager.findFragmentById(R.id.map) as SupportMapFragment
+ val mapFragment = supportFragmentManager.findFragmentById(com.example.common_ui.R.id.map) as SupportMapFragment
mapFragment.getMapAsync(this)
}
@@ -139,7 +139,7 @@ class CameraDemoActivity :
*/
private fun checkReadyThen(stuffToDo: () -> Unit) {
if (!::map.isInitialized) {
- Toast.makeText(this, R.string.map_not_ready, Toast.LENGTH_SHORT).show()
+ Toast.makeText(this, com.example.common_ui.R.string.map_not_ready, Toast.LENGTH_SHORT).show()
} else {
stuffToDo()
}
diff --git a/ApiDemos/kotlin/app/src/v3/java/com/example/kotlindemos/CircleDemoActivity.kt b/ApiDemos/project/kotlin-app/src/v3/java/com/example/kotlindemos/CircleDemoActivity.kt
similarity index 89%
rename from ApiDemos/kotlin/app/src/v3/java/com/example/kotlindemos/CircleDemoActivity.kt
rename to ApiDemos/project/kotlin-app/src/v3/java/com/example/kotlindemos/CircleDemoActivity.kt
index 12c33da26..86daa9e37 100644
--- a/ApiDemos/kotlin/app/src/v3/java/com/example/kotlindemos/CircleDemoActivity.kt
+++ b/ApiDemos/project/kotlin-app/src/v3/java/com/example/kotlindemos/CircleDemoActivity.kt
@@ -83,10 +83,10 @@ class CircleDemoActivity :
// These are the options for stroke patterns
private val patterns: List?>> = listOf(
- Pair(R.string.pattern_solid, null),
- Pair(R.string.pattern_dashed, patternDashed),
- Pair(R.string.pattern_dotted, patternDotted),
- Pair(R.string.pattern_mixed, patternMixed)
+ Pair(com.example.common_ui.R.string.pattern_solid, null),
+ Pair(com.example.common_ui.R.string.pattern_dashed, patternDashed),
+ Pair(com.example.common_ui.R.string.pattern_dotted, patternDotted),
+ Pair(com.example.common_ui.R.string.pattern_mixed, patternMixed)
)
private lateinit var map: GoogleMap
@@ -166,42 +166,42 @@ class CircleDemoActivity :
override fun onCreate(savedInstanceState: Bundle?) {
super.onCreate(savedInstanceState)
- setContentView(R.layout.activity_circle_demo)
+ setContentView(com.example.common_ui.R.layout.activity_circle_demo)
// Set all the SeekBars
- fillHueBar = findViewById(R.id.fillHueSeekBar).apply {
+ fillHueBar = findViewById(com.example.common_ui.R.id.fillHueSeekBar).apply {
max = MAX_HUE_DEGREE
progress = MAX_HUE_DEGREE / 2
}
- fillAlphaBar = findViewById(R.id.fillAlphaSeekBar).apply {
+ fillAlphaBar = findViewById(com.example.common_ui.R.id.fillAlphaSeekBar).apply {
max = MAX_ALPHA
progress = MAX_ALPHA / 2
}
- strokeWidthBar = findViewById(R.id.strokeWidthSeekBar).apply {
+ strokeWidthBar = findViewById(com.example.common_ui.R.id.strokeWidthSeekBar).apply {
max = MAX_WIDTH_PX
progress = MAX_WIDTH_PX / 3
}
- strokeHueBar = findViewById(R.id.strokeHueSeekBar).apply {
+ strokeHueBar = findViewById(com.example.common_ui.R.id.strokeHueSeekBar).apply {
max = MAX_HUE_DEGREE
progress = 0
}
- strokeAlphaBar = findViewById(R.id.strokeAlphaSeekBar).apply {
+ strokeAlphaBar = findViewById(com.example.common_ui.R.id.strokeAlphaSeekBar).apply {
max = MAX_ALPHA
progress = MAX_ALPHA
}
- strokePatternSpinner = findViewById(R.id.strokePatternSpinner).apply {
+ strokePatternSpinner = findViewById(com.example.common_ui.R.id.strokePatternSpinner).apply {
adapter = ArrayAdapter(this@CircleDemoActivity,
- android.R.layout.simple_spinner_item,
+ android.com.example.common_ui.R.layout.simple_spinner_item,
getResourceStrings())
}
- clickabilityCheckbox = findViewById(R.id.toggleClickability)
+ clickabilityCheckbox = findViewById(com.example.common_ui.R.id.toggleClickability)
clickabilityCheckbox.setOnClickListener {
toggleClickability(it)
}
- val mapFragment = supportFragmentManager.findFragmentById(R.id.map) as SupportMapFragment
+ val mapFragment = supportFragmentManager.findFragmentById(com.example.common_ui.R.id.map) as SupportMapFragment
mapFragment.getMapAsync(this)
}
@@ -217,10 +217,10 @@ class CircleDemoActivity :
// we need to initialise map before creating a circle
with(map) {
moveCamera(CameraUpdateFactory.newLatLngZoom(sydney, 4.0f))
- setContentDescription(getString(R.string.circle_demo_details))
+ setContentDescription(getString(com.example.common_ui.R.string.circle_demo_details))
setOnMapLongClickListener { point ->
// We know the center, let's place the outline at a point 3/4 along the view.
- val view: View = supportFragmentManager.findFragmentById(R.id.map)?.view
+ val view: View = supportFragmentManager.findFragmentById(com.example.common_ui.R.id.map)?.view
?: return@setOnMapLongClickListener
val radiusLatLng = map.projection.fromScreenLocation(
Point(view.height * 3 / 4, view.width * 3 / 4))
@@ -269,7 +269,7 @@ class CircleDemoActivity :
private fun getSelectedPattern(pos: Int): List? = patterns[pos].second
override fun onItemSelected(parent: AdapterView<*>, view: View, pos: Int, id: Long) {
- if (parent.id == R.id.strokePatternSpinner) {
+ if (parent.id == com.example.common_ui.R.id.strokePatternSpinner) {
circles.map { it.setStrokePattern(getSelectedPattern(pos)) }
}
}
diff --git a/ApiDemos/kotlin/app/src/v3/java/com/example/kotlindemos/CloseInfoWindowDemoActivity.kt b/ApiDemos/project/kotlin-app/src/v3/java/com/example/kotlindemos/CloseInfoWindowDemoActivity.kt
similarity index 94%
rename from ApiDemos/kotlin/app/src/v3/java/com/example/kotlindemos/CloseInfoWindowDemoActivity.kt
rename to ApiDemos/project/kotlin-app/src/v3/java/com/example/kotlindemos/CloseInfoWindowDemoActivity.kt
index 420501bcc..e886e57b5 100644
--- a/ApiDemos/kotlin/app/src/v3/java/com/example/kotlindemos/CloseInfoWindowDemoActivity.kt
+++ b/ApiDemos/project/kotlin-app/src/v3/java/com/example/kotlindemos/CloseInfoWindowDemoActivity.kt
@@ -71,9 +71,9 @@ class CloseInfoWindowDemoActivity :
override fun onCreate(savedInstanceState: Bundle?) {
super.onCreate(savedInstanceState)
- setContentView(R.layout.activity_marker_close_info_window_on_retap_demo)
+ setContentView(com.example.common_ui.R.layout.activity_marker_close_info_window_on_retap_demo)
- val mapFragment = supportFragmentManager.findFragmentById(R.id.map) as SupportMapFragment
+ val mapFragment = supportFragmentManager.findFragmentById(com.example.common_ui.R.id.map) as SupportMapFragment
OnMapAndViewReadyListener(mapFragment, this)
}
@@ -90,7 +90,7 @@ class CloseInfoWindowDemoActivity :
// when the map is clicked. Clear the currently selected marker.
setOnMapClickListener { selectedMarker = null }
- setContentDescription(getString(R.string.close_info_window_demo_details))
+ setContentDescription(getString(com.example.common_ui.R.string.close_info_window_demo_details))
// Add markers to different cities in Australia and include it in bounds
val bounds = LatLngBounds.Builder()
diff --git a/ApiDemos/kotlin/app/src/v3/java/com/example/kotlindemos/CloudBasedMapStylingDemoActivity.kt b/ApiDemos/project/kotlin-app/src/v3/java/com/example/kotlindemos/CloudBasedMapStylingDemoActivity.kt
similarity index 78%
rename from ApiDemos/kotlin/app/src/v3/java/com/example/kotlindemos/CloudBasedMapStylingDemoActivity.kt
rename to ApiDemos/project/kotlin-app/src/v3/java/com/example/kotlindemos/CloudBasedMapStylingDemoActivity.kt
index 074c2bdca..702f634c3 100644
--- a/ApiDemos/kotlin/app/src/v3/java/com/example/kotlindemos/CloudBasedMapStylingDemoActivity.kt
+++ b/ApiDemos/project/kotlin-app/src/v3/java/com/example/kotlindemos/CloudBasedMapStylingDemoActivity.kt
@@ -45,8 +45,8 @@ class CloudBasedMapStylingDemoActivity : AppCompatActivity(), OnMapReadyCallback
// The underlying style the map will use has been set in the layout
// `cloud_styling_basic_demo` under the SupportMapFragment's `map:mapId` attribute.
- setContentView(R.layout.cloud_styling_basic_demo)
- val mapFragment = supportFragmentManager.findFragmentById(R.id.map) as SupportMapFragment?
+ setContentView(com.example.common_ui.R.layout.cloud_styling_basic_demo)
+ val mapFragment = supportFragmentManager.findFragmentById(com.example.common_ui.R.id.map) as SupportMapFragment?
mapFragment!!.getMapAsync(this)
setUpButtonListeners()
}
@@ -57,10 +57,10 @@ class CloudBasedMapStylingDemoActivity : AppCompatActivity(), OnMapReadyCallback
}
private fun setUpButtonListeners() {
- findViewById(R.id.styling_normal_mode).setOnClickListener { setMapType(GoogleMap.MAP_TYPE_NORMAL) }
- findViewById(R.id.styling_satellite_mode).setOnClickListener { setMapType(GoogleMap.MAP_TYPE_SATELLITE) }
- findViewById(R.id.styling_hybrid_mode).setOnClickListener { setMapType(GoogleMap.MAP_TYPE_HYBRID) }
- findViewById(R.id.styling_terrain_mode).setOnClickListener { setMapType(GoogleMap.MAP_TYPE_TERRAIN) }
+ findViewById(com.example.common_ui.R.id.styling_normal_mode).setOnClickListener { setMapType(GoogleMap.MAP_TYPE_NORMAL) }
+ findViewById(com.example.common_ui.R.id.styling_satellite_mode).setOnClickListener { setMapType(GoogleMap.MAP_TYPE_SATELLITE) }
+ findViewById(com.example.common_ui.R.id.styling_hybrid_mode).setOnClickListener { setMapType(GoogleMap.MAP_TYPE_HYBRID) }
+ findViewById(com.example.common_ui.R.id.styling_terrain_mode).setOnClickListener { setMapType(GoogleMap.MAP_TYPE_TERRAIN) }
}
private fun setMapType(mapType: Int) {
diff --git a/ApiDemos/kotlin/app/src/v3/java/com/example/kotlindemos/DemoDetails.kt b/ApiDemos/project/kotlin-app/src/v3/java/com/example/kotlindemos/DemoDetails.kt
similarity index 100%
rename from ApiDemos/kotlin/app/src/v3/java/com/example/kotlindemos/DemoDetails.kt
rename to ApiDemos/project/kotlin-app/src/v3/java/com/example/kotlindemos/DemoDetails.kt
diff --git a/ApiDemos/project/kotlin-app/src/v3/java/com/example/kotlindemos/DemoDetailsList.kt b/ApiDemos/project/kotlin-app/src/v3/java/com/example/kotlindemos/DemoDetailsList.kt
new file mode 100644
index 000000000..f163cb325
--- /dev/null
+++ b/ApiDemos/project/kotlin-app/src/v3/java/com/example/kotlindemos/DemoDetailsList.kt
@@ -0,0 +1,143 @@
+/*
+ * Copyright 2025 Google LLC
+ *
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ * https://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+
+package com.example.kotlindemos
+
+import com.example.kotlindemos.polyline.PolylineDemoActivity
+
+/**
+ * A list of all the demos we have available.
+ */
+class DemoDetailsList {
+ companion object {
+ val DEMOS = listOf(
+ DemoDetails(
+ com.example.common_ui.R.string.basic_demo_label,
+ com.example.common_ui.R.string.basic_demo_details,
+ BasicMapDemoActivity::class.java),
+ DemoDetails(
+ com.example.common_ui.R.string.camera_demo_label,
+ com.example.common_ui.R.string.camera_demo_description,
+ CameraDemoActivity::class.java),
+ DemoDetails(
+ com.example.common_ui.R.string.circle_demo_label,
+ com.example.common_ui.R.string.circle_demo_details,
+ CircleDemoActivity::class.java),
+ DemoDetails(
+ com.example.common_ui.R.string.close_info_window_demo_label,
+ com.example.common_ui.R.string.close_info_window_demo_details,
+ CloseInfoWindowDemoActivity::class.java),
+ DemoDetails(
+ com.example.common_ui.R.string.cloud_styling_label,
+ com.example.common_ui.R.string.cloud_styling_description,
+ CloudBasedMapStylingDemoActivity::class.java),
+ DemoDetails(
+ com.example.common_ui.R.string.events_demo_label,
+ com.example.common_ui.R.string.events_demo_details,
+ EventsDemoActivity::class.java),
+ DemoDetails(
+ com.example.common_ui.R.string.ground_overlay_demo_label,
+ com.example.common_ui.R.string.ground_overlay_demo_details,
+ GroundOverlayDemoActivity::class.java),
+ DemoDetails(
+ com.example.common_ui.R.string.indoor_demo_label,
+ com.example.common_ui.R.string.indoor_demo_details,
+ IndoorDemoActivity::class.java),
+ DemoDetails(
+ com.example.common_ui.R.string.layers_demo_label,
+ com.example.common_ui.R.string.layers_demo_description,
+ LayersDemoActivity::class.java),
+ DemoDetails(
+ com.example.common_ui.R.string.lite_demo_label,
+ com.example.common_ui.R.string.lite_demo_details,
+ LiteDemoActivity::class.java),
+ DemoDetails(
+ com.example.common_ui.R.string.lite_list_demo_label,
+ com.example.common_ui.R.string.lite_list_demo_details,
+ LiteListDemoActivity::class.java),
+ DemoDetails(
+ com.example.common_ui.R.string.marker_collision_label,
+ com.example.common_ui.R.string.marker_collision_description,
+ MarkerCollisionDemoActivity::class.java),
+ DemoDetails(
+ com.example.common_ui.R.string.markers_demo_label,
+ com.example.common_ui.R.string.markers_demo_description,
+ MarkerDemoActivity::class.java),
+ DemoDetails(
+ com.example.common_ui.R.string.my_location_demo_label,
+ com.example.common_ui.R.string.my_location_demo_details,
+ MyLocationDemoActivity::class.java),
+ DemoDetails(
+ com.example.common_ui.R.string.polygon_demo_label,
+ com.example.common_ui.R.string.polygon_demo_details,
+ PolygonDemoActivity::class.java),
+ DemoDetails(
+ com.example.common_ui.R.string.polyline_demo_label,
+ com.example.common_ui.R.string.polyline_demo_description,
+ PolylineDemoActivity::class.java),
+ DemoDetails(
+ com.example.common_ui.R.string.raw_map_view_demo_label,
+ com.example.common_ui.R.string.raw_map_view_demo_description,
+ RawMapViewDemoActivity::class.java),
+ DemoDetails(
+ com.example.common_ui.R.string.street_view_panorama_basic_demo_label,
+ com.example.common_ui.R.string.street_view_panorama_basic_demo_details,
+ StreetViewPanoramaBasicDemoActivity::class.java),
+ DemoDetails(
+ com.example.common_ui.R.string.street_view_panorama_navigation_demo_label,
+ com.example.common_ui.R.string.street_view_panorama_navigation_demo_details,
+ StreetViewPanoramaNavigationDemoActivity::class.java),
+ DemoDetails(
+ com.example.common_ui.R.string.split_street_view_panorama_and_map_demo_label,
+ com.example.common_ui.R.string.split_street_view_panorama_and_map_demo_details,
+ SplitStreetViewPanoramaAndMapDemoActivity::class.java),
+ DemoDetails(
+ com.example.common_ui.R.string.street_view_panorama_options_demo_label,
+ com.example.common_ui.R.string.street_view_panorama_options_demo_details,
+ StreetViewPanoramaOptionsDemoActivity::class.java),
+ DemoDetails(
+ com.example.common_ui.R.string.street_view_panorama_events_demo_label,
+ com.example.common_ui.R.string.street_view_panorama_events_demo_details,
+ StreetViewPanoramaEventsDemoActivity::class.java),
+ DemoDetails(
+ com.example.common_ui.R.string.street_view_panorama_view_demo_label,
+ com.example.common_ui.R.string.street_view_panorama_view_demo_details,
+ StreetViewPanoramaViewDemoActivity::class.java),
+ DemoDetails(
+ com.example.common_ui.R.string.tags_demo_label,
+ com.example.common_ui.R.string.tags_demo_details,
+ TagsDemoActivity::class.java),
+ DemoDetails(
+ com.example.common_ui.R.string.tile_coordinate_demo_label,
+ com.example.common_ui.R.string.tile_coordinate_demo_description,
+ TileCoordinateDemoActivity::class.java
+ ),
+ DemoDetails(
+ com.example.common_ui.R.string.tile_overlay_demo_label,
+ com.example.common_ui.R.string.tile_overlay_demo_description,
+ TileOverlayDemoActivity::class.java
+ ),
+ DemoDetails(
+ com.example.common_ui.R.string.ui_settings_demo_label,
+ com.example.common_ui.R.string.ui_settings_demo_details,
+ UiSettingsDemoActivity::class.java),
+ DemoDetails(
+ com.example.common_ui.R.string.region_demo_label,
+ com.example.common_ui.R.string.region_demo_details,
+ VisibleRegionDemoActivity::class.java)
+ )
+ }
+}
\ No newline at end of file
diff --git a/ApiDemos/kotlin/app/src/v3/java/com/example/kotlindemos/EventsDemoActivity.kt b/ApiDemos/project/kotlin-app/src/v3/java/com/example/kotlindemos/EventsDemoActivity.kt
similarity index 90%
rename from ApiDemos/kotlin/app/src/v3/java/com/example/kotlindemos/EventsDemoActivity.kt
rename to ApiDemos/project/kotlin-app/src/v3/java/com/example/kotlindemos/EventsDemoActivity.kt
index f599c87eb..6562dfff1 100644
--- a/ApiDemos/kotlin/app/src/v3/java/com/example/kotlindemos/EventsDemoActivity.kt
+++ b/ApiDemos/project/kotlin-app/src/v3/java/com/example/kotlindemos/EventsDemoActivity.kt
@@ -41,10 +41,10 @@ class EventsDemoActivity : AppCompatActivity(), OnMapClickListener,
override fun onCreate(savedInstanceState: Bundle?) {
super.onCreate(savedInstanceState)
- setContentView(R.layout.events_demo)
- tapTextView = findViewById(R.id.tap_text)
- cameraTextView = findViewById(R.id.camera_text)
- val mapFragment = supportFragmentManager.findFragmentById(R.id.map) as SupportMapFragment?
+ setContentView(com.example.common_ui.R.layout.events_demo)
+ tapTextView = findViewById(com.example.common_ui.R.id.tap_text)
+ cameraTextView = findViewById(com.example.common_ui.R.id.camera_text)
+ val mapFragment = supportFragmentManager.findFragmentById(com.example.common_ui.R.id.map) as SupportMapFragment?
mapFragment?.getMapAsync(this)
}
diff --git a/ApiDemos/kotlin/app/src/v3/java/com/example/kotlindemos/FeatureView.kt b/ApiDemos/project/kotlin-app/src/v3/java/com/example/kotlindemos/FeatureView.kt
similarity index 87%
rename from ApiDemos/kotlin/app/src/v3/java/com/example/kotlindemos/FeatureView.kt
rename to ApiDemos/project/kotlin-app/src/v3/java/com/example/kotlindemos/FeatureView.kt
index 18afef706..73f38bf0d 100644
--- a/ApiDemos/kotlin/app/src/v3/java/com/example/kotlindemos/FeatureView.kt
+++ b/ApiDemos/project/kotlin-app/src/v3/java/com/example/kotlindemos/FeatureView.kt
@@ -38,7 +38,7 @@ class FeatureView(context: Context) : FrameLayout(context) {
init {
val layoutInflater =
context.getSystemService(Context.LAYOUT_INFLATER_SERVICE) as LayoutInflater
- layoutInflater.inflate(R.layout.feature, this)
+ layoutInflater.inflate(com.example.common_ui.R.layout.feature, this)
}
/**
@@ -47,7 +47,7 @@ class FeatureView(context: Context) : FrameLayout(context) {
* @property titleId the resource id of the title of the demo
*/
fun setTitleId(titleId: Int) {
- findViewById(R.id.title).setText(titleId)
+ findViewById(com.example.common_ui.R.id.title).setText(titleId)
}
/**
@@ -56,6 +56,6 @@ class FeatureView(context: Context) : FrameLayout(context) {
* @property descriptionId the resource id of the description of the demo
*/
fun setDescriptionId(descriptionId: Int) {
- (findViewById(R.id.description)).setText(descriptionId)
+ (findViewById(com.example.common_ui.R.id.description)).setText(descriptionId)
}
}
\ No newline at end of file
diff --git a/ApiDemos/kotlin/app/src/v3/java/com/example/kotlindemos/GroundOverlayDemoActivity.kt b/ApiDemos/project/kotlin-app/src/v3/java/com/example/kotlindemos/GroundOverlayDemoActivity.kt
similarity index 89%
rename from ApiDemos/kotlin/app/src/v3/java/com/example/kotlindemos/GroundOverlayDemoActivity.kt
rename to ApiDemos/project/kotlin-app/src/v3/java/com/example/kotlindemos/GroundOverlayDemoActivity.kt
index adb99a68b..94c6fa1d8 100644
--- a/ApiDemos/kotlin/app/src/v3/java/com/example/kotlindemos/GroundOverlayDemoActivity.kt
+++ b/ApiDemos/project/kotlin-app/src/v3/java/com/example/kotlindemos/GroundOverlayDemoActivity.kt
@@ -48,12 +48,12 @@ class GroundOverlayDemoActivity : AppCompatActivity(), OnSeekBarChangeListener,
override fun onCreate(savedInstanceState: Bundle?) {
super.onCreate(savedInstanceState)
- setContentView(R.layout.ground_overlay_demo)
- transparencyBar = findViewById(R.id.transparencySeekBar)
+ setContentView(com.example.common_ui.R.layout.ground_overlay_demo)
+ transparencyBar = findViewById(com.example.common_ui.R.id.transparencySeekBar)
transparencyBar.max = TRANSPARENCY_MAX
transparencyBar.progress = 0
val mapFragment =
- supportFragmentManager.findFragmentById(R.id.map) as SupportMapFragment?
+ supportFragmentManager.findFragmentById(com.example.common_ui.R.id.map) as SupportMapFragment?
mapFragment?.getMapAsync(this)
}
@@ -69,8 +69,8 @@ class GroundOverlayDemoActivity : AppCompatActivity(), OnSeekBarChangeListener,
)
)
images.clear()
- images.add(BitmapDescriptorFactory.fromResource(R.drawable.newark_nj_1922))
- images.add(BitmapDescriptorFactory.fromResource(R.drawable.newark_prudential_sunny))
+ images.add(BitmapDescriptorFactory.fromResource(com.example.common_ui.R.drawable.newark_nj_1922))
+ images.add(BitmapDescriptorFactory.fromResource(com.example.common_ui.R.drawable.newark_prudential_sunny))
// Add a small, rotated overlay that is clickable by default
// (set by the initial state of the checkbox.)
@@ -79,7 +79,7 @@ class GroundOverlayDemoActivity : AppCompatActivity(), OnSeekBarChangeListener,
.image(images[1]).anchor(0f, 1f)
.position(NEAR_NEWARK, 4300f, 3025f)
.bearing(30f)
- .clickable((findViewById(R.id.toggleClickability) as CheckBox).isChecked)
+ .clickable((findViewById(com.example.common_ui.R.id.toggleClickability) as CheckBox).isChecked)
)
// Add a large overlay at Newark on top of the smaller overlay.
diff --git a/ApiDemos/kotlin/app/src/v3/java/com/example/kotlindemos/IndoorDemoActivity.kt b/ApiDemos/project/kotlin-app/src/v3/java/com/example/kotlindemos/IndoorDemoActivity.kt
similarity index 94%
rename from ApiDemos/kotlin/app/src/v3/java/com/example/kotlindemos/IndoorDemoActivity.kt
rename to ApiDemos/project/kotlin-app/src/v3/java/com/example/kotlindemos/IndoorDemoActivity.kt
index a6ac42084..18729d4af 100644
--- a/ApiDemos/kotlin/app/src/v3/java/com/example/kotlindemos/IndoorDemoActivity.kt
+++ b/ApiDemos/project/kotlin-app/src/v3/java/com/example/kotlindemos/IndoorDemoActivity.kt
@@ -40,9 +40,9 @@ class IndoorDemoActivity : AppCompatActivity(), OnMapReadyCallback {
override fun onCreate(savedInstanceState: Bundle?) {
super.onCreate(savedInstanceState)
- setContentView(R.layout.indoor_demo)
+ setContentView(com.example.common_ui.R.layout.indoor_demo)
val mapFragment =
- supportFragmentManager.findFragmentById(R.id.map) as SupportMapFragment?
+ supportFragmentManager.findFragmentById(com.example.common_ui.R.id.map) as SupportMapFragment?
mapFragment?.getMapAsync(this)
}
@@ -130,7 +130,7 @@ class IndoorDemoActivity : AppCompatActivity(), OnMapReadyCallback {
}
private fun setText(message: String) {
- val text = findViewById(R.id.top_text)
+ val text = findViewById(com.example.common_ui.R.id.top_text)
text.text = message
}
}
\ No newline at end of file
diff --git a/ApiDemos/kotlin/app/src/v3/java/com/example/kotlindemos/LayersDemoActivity.kt b/ApiDemos/project/kotlin-app/src/v3/java/com/example/kotlindemos/LayersDemoActivity.kt
similarity index 83%
rename from ApiDemos/kotlin/app/src/v3/java/com/example/kotlindemos/LayersDemoActivity.kt
rename to ApiDemos/project/kotlin-app/src/v3/java/com/example/kotlindemos/LayersDemoActivity.kt
index fc2dbe80a..db0bc8e4e 100644
--- a/ApiDemos/kotlin/app/src/v3/java/com/example/kotlindemos/LayersDemoActivity.kt
+++ b/ApiDemos/project/kotlin-app/src/v3/java/com/example/kotlindemos/LayersDemoActivity.kt
@@ -74,24 +74,24 @@ class LayersDemoActivity :
override fun onCreate(savedInstanceState: Bundle?) {
super.onCreate(savedInstanceState)
- setContentView(R.layout.layers_demo)
+ setContentView(com.example.common_ui.R.layout.layers_demo)
- spinner = findViewById(R.id.layers_spinner).apply {
+ spinner = findViewById(com.example.common_ui.R.id.layers_spinner).apply {
adapter = ArrayAdapter.createFromResource(this@LayersDemoActivity,
- R.array.layers_array, android.R.layout.simple_spinner_item).apply {
- setDropDownViewResource(android.R.layout.simple_spinner_dropdown_item)
+ R.array.layers_array, android.com.example.common_ui.R.layout.simple_spinner_item).apply {
+ setDropDownViewResource(android.com.example.common_ui.R.layout.simple_spinner_dropdown_item)
}
// set a listener for when the spinner to select map type is changed.
onItemSelectedListener = this@LayersDemoActivity
}
- myLocationCheckbox = findViewById(R.id.my_location)
- buildingsCheckbox = findViewById(R.id.buildings)
- indoorCheckbox = findViewById(R.id.indoor)
- trafficCheckbox = findViewById(R.id.traffic)
+ myLocationCheckbox = findViewById(com.example.common_ui.R.id.my_location)
+ buildingsCheckbox = findViewById(com.example.common_ui.R.id.buildings)
+ indoorCheckbox = findViewById(com.example.common_ui.R.id.indoor)
+ trafficCheckbox = findViewById(com.example.common_ui.R.id.traffic)
- val mapFragment = supportFragmentManager.findFragmentById(R.id.map) as SupportMapFragment
+ val mapFragment = supportFragmentManager.findFragmentById(com.example.common_ui.R.id.map) as SupportMapFragment
mapFragment.getMapAsync(this)
}
@@ -102,8 +102,8 @@ class LayersDemoActivity :
super.onResumeFragments()
if (showPermissionDeniedDialog) {
AlertDialog.Builder(this).apply {
- setPositiveButton(R.string.ok, null)
- setMessage(R.string.location_permission_denied)
+ setPositiveButton(com.example.common_ui.R.string.ok, null)
+ setMessage(com.example.common_ui.R.string.location_permission_denied)
create()
}.show()
showPermissionDeniedDialog = false
@@ -165,7 +165,7 @@ class LayersDemoActivity :
} else {
// if permissions are not currently granted, request permissions
EasyPermissions.requestPermissions(this,
- getString(R.string.permission_rationale_location),
+ getString(com.example.common_ui.R.string.permission_rationale_location),
LOCATION_PERMISSION_REQUEST_CODE, *permissions)
}
}
@@ -179,11 +179,11 @@ class LayersDemoActivity :
if (!::map.isInitialized) return
map.mapType = when (spinner.selectedItem) {
- getString(R.string.normal) -> MAP_TYPE_NORMAL
- getString(R.string.hybrid) -> MAP_TYPE_HYBRID
- getString(R.string.satellite) -> MAP_TYPE_SATELLITE
- getString(R.string.terrain) -> MAP_TYPE_TERRAIN
- getString(R.string.none_map) -> MAP_TYPE_NONE
+ getString(com.example.common_ui.R.string.normal) -> MAP_TYPE_NORMAL
+ getString(com.example.common_ui.R.string.hybrid) -> MAP_TYPE_HYBRID
+ getString(com.example.common_ui.R.string.satellite) -> MAP_TYPE_SATELLITE
+ getString(com.example.common_ui.R.string.terrain) -> MAP_TYPE_TERRAIN
+ getString(com.example.common_ui.R.string.none_map) -> MAP_TYPE_NONE
else -> {
map.mapType // do not change map type
Log.e(TAG, "Error setting layer with name ${spinner.selectedItem}")
diff --git a/ApiDemos/kotlin/app/src/v3/java/com/example/kotlindemos/LiteDemoActivity.kt b/ApiDemos/project/kotlin-app/src/v3/java/com/example/kotlindemos/LiteDemoActivity.kt
similarity index 98%
rename from ApiDemos/kotlin/app/src/v3/java/com/example/kotlindemos/LiteDemoActivity.kt
rename to ApiDemos/project/kotlin-app/src/v3/java/com/example/kotlindemos/LiteDemoActivity.kt
index 488eabbe4..2365fe417 100644
--- a/ApiDemos/kotlin/app/src/v3/java/com/example/kotlindemos/LiteDemoActivity.kt
+++ b/ApiDemos/project/kotlin-app/src/v3/java/com/example/kotlindemos/LiteDemoActivity.kt
@@ -42,10 +42,10 @@ class LiteDemoActivity : AppCompatActivity(), OnGlobalLayoutAndMapReadyListener
super.onCreate(savedInstanceState)
// Set the layout
- setContentView(R.layout.lite_demo)
+ setContentView(com.example.common_ui.R.layout.lite_demo)
// Get the map and register for the ready callback
- val mapFragment = supportFragmentManager.findFragmentById(R.id.map) as SupportMapFragment
+ val mapFragment = supportFragmentManager.findFragmentById(com.example.common_ui.R.id.map) as SupportMapFragment
OnMapAndViewReadyListener(mapFragment, this)
}
diff --git a/ApiDemos/kotlin/app/src/v3/java/com/example/kotlindemos/LiteListDemoActivity.kt b/ApiDemos/project/kotlin-app/src/v3/java/com/example/kotlindemos/LiteListDemoActivity.kt
similarity index 93%
rename from ApiDemos/kotlin/app/src/v3/java/com/example/kotlindemos/LiteListDemoActivity.kt
rename to ApiDemos/project/kotlin-app/src/v3/java/com/example/kotlindemos/LiteListDemoActivity.kt
index 6c561f989..89a49aa87 100644
--- a/ApiDemos/kotlin/app/src/v3/java/com/example/kotlindemos/LiteListDemoActivity.kt
+++ b/ApiDemos/project/kotlin-app/src/v3/java/com/example/kotlindemos/LiteListDemoActivity.kt
@@ -74,12 +74,12 @@ class LiteListDemoActivity : AppCompatActivity() {
override fun onCreate(savedInstanceState: Bundle?) {
super.onCreate(savedInstanceState)
- setContentView(R.layout.activity_lite_list_demo)
+ setContentView(com.example.common_ui.R.layout.activity_lite_list_demo)
mapAdapter = MapAdapter()
// Initialise the RecyclerView.
- recyclerView = findViewById(R.id.recycler_view).apply {
+ recyclerView = findViewById(com.example.common_ui.R.id.recycler_view).apply {
setHasFixedSize(true)
layoutManager = linearLayoutManager
adapter = mapAdapter
@@ -95,8 +95,8 @@ class LiteListDemoActivity : AppCompatActivity() {
override fun onOptionsItemSelected(item: MenuItem): Boolean {
recyclerView.layoutManager = when (item.itemId) {
- R.id.layout_linear -> linearLayoutManager
- R.id.layout_grid -> gridLayoutManager
+ com.example.common_ui.R.id.layout_linear -> linearLayoutManager
+ com.example.common_ui.R.id.layout_grid -> gridLayoutManager
else -> return false
}
return true
@@ -115,7 +115,7 @@ class LiteListDemoActivity : AppCompatActivity() {
override fun onCreateViewHolder(parent: ViewGroup, viewType: Int): ViewHolder {
val inflated = LayoutInflater.from(parent.context)
- .inflate(R.layout.lite_list_demo_row, parent, false)
+ .inflate(com.example.common_ui.R.layout.lite_list_demo_row, parent, false)
return ViewHolder(inflated)
}
@@ -127,8 +127,8 @@ class LiteListDemoActivity : AppCompatActivity() {
OnMapReadyCallback {
private val layout: View = view
- private val mapView: MapView = layout.findViewById(R.id.lite_listrow_map)
- private val title: TextView = layout.findViewById(R.id.lite_listrow_text)
+ private val mapView: MapView = layout.findViewById(com.example.common_ui.R.id.lite_listrow_map)
+ private val title: TextView = layout.findViewById(com.example.common_ui.R.id.lite_listrow_text)
private lateinit var map: GoogleMap
private lateinit var latLng: LatLng
diff --git a/ApiDemos/kotlin/app/src/v3/java/com/example/kotlindemos/MainActivity.kt b/ApiDemos/project/kotlin-app/src/v3/java/com/example/kotlindemos/MainActivity.kt
similarity index 90%
rename from ApiDemos/kotlin/app/src/v3/java/com/example/kotlindemos/MainActivity.kt
rename to ApiDemos/project/kotlin-app/src/v3/java/com/example/kotlindemos/MainActivity.kt
index f11c51362..9e642b864 100644
--- a/ApiDemos/kotlin/app/src/v3/java/com/example/kotlindemos/MainActivity.kt
+++ b/ApiDemos/project/kotlin-app/src/v3/java/com/example/kotlindemos/MainActivity.kt
@@ -45,12 +45,12 @@ class MainActivity : AppCompatActivity(), AdapterView.OnItemClickListener {
override fun onCreate(savedInstanceState: Bundle?) {
super.onCreate(savedInstanceState)
- setContentView(R.layout.activity_main)
+ setContentView(com.example.common_ui.R.layout.activity_main)
val listAdapter: ListAdapter = CustomArrayAdapter(this, DemoDetailsList.DEMOS)
// Find the view that will show empty message if there is no demo in DemoDetailsList.DEMOS
- val emptyMessage = findViewById(R.id.empty)
- with(findViewById(R.id.list)) {
+ val emptyMessage = findViewById(com.example.common_ui.R.id.empty)
+ with(findViewById(com.example.common_ui.R.id.list)) {
adapter = listAdapter
onItemClickListener = this@MainActivity
emptyView = emptyMessage
@@ -70,7 +70,7 @@ class MainActivity : AppCompatActivity(), AdapterView.OnItemClickListener {
*/
@SuppressLint("ResourceType")
class CustomArrayAdapter(context: Context, demos: List) :
- ArrayAdapter(context, R.layout.feature, demos) {
+ ArrayAdapter(context, com.example.common_ui.R.layout.feature, demos) {
override fun getView(position: Int, convertView: View?, parent: ViewGroup): View {
val demo: DemoDetails? = getItem(position)
diff --git a/ApiDemos/kotlin/app/src/v3/java/com/example/kotlindemos/MarkerCloseInfoWindowOnRetapDemoActivity.kt b/ApiDemos/project/kotlin-app/src/v3/java/com/example/kotlindemos/MarkerCloseInfoWindowOnRetapDemoActivity.kt
similarity index 93%
rename from ApiDemos/kotlin/app/src/v3/java/com/example/kotlindemos/MarkerCloseInfoWindowOnRetapDemoActivity.kt
rename to ApiDemos/project/kotlin-app/src/v3/java/com/example/kotlindemos/MarkerCloseInfoWindowOnRetapDemoActivity.kt
index 87e7fd713..27621c2de 100644
--- a/ApiDemos/kotlin/app/src/v3/java/com/example/kotlindemos/MarkerCloseInfoWindowOnRetapDemoActivity.kt
+++ b/ApiDemos/project/kotlin-app/src/v3/java/com/example/kotlindemos/MarkerCloseInfoWindowOnRetapDemoActivity.kt
@@ -71,9 +71,9 @@ class MarkerCloseInfoWindowOnRetapDemoActivity :
override fun onCreate(savedInstanceState: Bundle?) {
super.onCreate(savedInstanceState)
- setContentView(R.layout.activity_marker_close_info_window_on_retap_demo)
+ setContentView(com.example.common_ui.R.layout.activity_marker_close_info_window_on_retap_demo)
- val mapFragment = supportFragmentManager.findFragmentById(R.id.map) as SupportMapFragment
+ val mapFragment = supportFragmentManager.findFragmentById(com.example.common_ui.R.id.map) as SupportMapFragment
OnMapAndViewReadyListener(mapFragment, this)
}
@@ -90,7 +90,7 @@ class MarkerCloseInfoWindowOnRetapDemoActivity :
// when the map is clicked. Clear the currently selected marker.
setOnMapClickListener { selectedMarker = null }
- setContentDescription(getString(R.string.close_info_window_demo_details))
+ setContentDescription(getString(com.example.common_ui.R.string.close_info_window_demo_details))
// Add markers to different cities in Australia and include it in bounds
val bounds = LatLngBounds.Builder()
diff --git a/ApiDemos/kotlin/app/src/v3/java/com/example/kotlindemos/MarkerCollisionDemoActivity.kt b/ApiDemos/project/kotlin-app/src/v3/java/com/example/kotlindemos/MarkerCollisionDemoActivity.kt
similarity index 96%
rename from ApiDemos/kotlin/app/src/v3/java/com/example/kotlindemos/MarkerCollisionDemoActivity.kt
rename to ApiDemos/project/kotlin-app/src/v3/java/com/example/kotlindemos/MarkerCollisionDemoActivity.kt
index edcf69ad1..f94b9d0fc 100644
--- a/ApiDemos/kotlin/app/src/v3/java/com/example/kotlindemos/MarkerCollisionDemoActivity.kt
+++ b/ApiDemos/project/kotlin-app/src/v3/java/com/example/kotlindemos/MarkerCollisionDemoActivity.kt
@@ -38,8 +38,8 @@ class MarkerCollisionDemoActivity : AppCompatActivity(), OnMapReadyCallback {
private var map: GoogleMap? = null
override fun onCreate(savedInstanceState: Bundle?) {
super.onCreate(savedInstanceState)
- setContentView(R.layout.marker_collision_demo)
- val mapFragment = supportFragmentManager.findFragmentById(R.id.map) as SupportMapFragment?
+ setContentView(com.example.common_ui.R.layout.marker_collision_demo)
+ val mapFragment = supportFragmentManager.findFragmentById(com.example.common_ui.R.id.map) as SupportMapFragment?
mapFragment!!.getMapAsync(this)
}
diff --git a/ApiDemos/kotlin/app/src/v3/java/com/example/kotlindemos/MarkerDemoActivity.kt b/ApiDemos/project/kotlin-app/src/v3/java/com/example/kotlindemos/MarkerDemoActivity.kt
similarity index 89%
rename from ApiDemos/kotlin/app/src/v3/java/com/example/kotlindemos/MarkerDemoActivity.kt
rename to ApiDemos/project/kotlin-app/src/v3/java/com/example/kotlindemos/MarkerDemoActivity.kt
index 229e3e6eb..19db8ca20 100644
--- a/ApiDemos/kotlin/app/src/v3/java/com/example/kotlindemos/MarkerDemoActivity.kt
+++ b/ApiDemos/project/kotlin-app/src/v3/java/com/example/kotlindemos/MarkerDemoActivity.kt
@@ -116,11 +116,11 @@ class MarkerDemoActivity :
// These are both view groups containing an ImageView with id "badge" and two
// TextViews with id "title" and "snippet".
- private val window: View = layoutInflater.inflate(R.layout.custom_info_window, null)
- private val contents: View = layoutInflater.inflate(R.layout.custom_info_contents, null)
+ private val window: View = layoutInflater.inflate(com.example.common_ui.R.layout.custom_info_window, null)
+ private val contents: View = layoutInflater.inflate(com.example.common_ui.R.layout.custom_info_contents, null)
override fun getInfoWindow(marker: Marker): View? {
- if (options.checkedRadioButtonId != R.id.custom_info_window) {
+ if (options.checkedRadioButtonId != com.example.common_ui.R.id.custom_info_window) {
// This means that getInfoContents will be called.
return null
}
@@ -129,7 +129,7 @@ class MarkerDemoActivity :
}
override fun getInfoContents(marker: Marker): View? {
- if (options.checkedRadioButtonId != R.id.custom_info_contents) {
+ if (options.checkedRadioButtonId != com.example.common_ui.R.id.custom_info_contents) {
// This means that the default info contents will be used.
return null
}
@@ -139,20 +139,20 @@ class MarkerDemoActivity :
private fun render(marker: Marker, view: View) {
val badge = when (marker.title) {
- "Brisbane" -> R.drawable.badge_qld
- "Adelaide" -> R.drawable.badge_sa
- "Sydney" -> R.drawable.badge_nsw
- "Melbourne" -> R.drawable.badge_victoria
- "Perth" -> R.drawable.badge_wa
- in "Darwin Marker 1".."Darwin Marker 4" -> R.drawable.badge_nt
+ "Brisbane" -> com.example.common_ui.R.drawable.badge_qld
+ "Adelaide" -> com.example.common_ui.R.drawable.badge_sa
+ "Sydney" -> com.example.common_ui.R.drawable.badge_nsw
+ "Melbourne" -> com.example.common_ui.R.drawable.badge_victoria
+ "Perth" -> com.example.common_ui.R.drawable.badge_wa
+ in "Darwin Marker 1".."Darwin Marker 4" -> com.example.common_ui.R.drawable.badge_nt
else -> 0 // Passing 0 to setImageResource will clear the image view.
}
- view.findViewById(R.id.badge).setImageResource(badge)
+ view.findViewById(com.example.common_ui.R.id.badge).setImageResource(badge)
// Set the title and snippet for the custom info window
val title: String? = marker.title
- val titleUi = view.findViewById(R.id.title)
+ val titleUi = view.findViewById(com.example.common_ui.R.id.title)
if (title != null) {
// Spannable string allows us to edit the formatting of the text.
@@ -164,7 +164,7 @@ class MarkerDemoActivity :
}
val snippet: String? = marker.snippet
- val snippetUi = view.findViewById(R.id.snippet)
+ val snippetUi = view.findViewById(com.example.common_ui.R.id.snippet)
if (snippet != null && snippet.length > 12) {
snippetUi.text = SpannableString(snippet).apply {
setSpan(ForegroundColorSpan(Color.MAGENTA), 0, 10, 0)
@@ -178,11 +178,11 @@ class MarkerDemoActivity :
override fun onCreate(savedInstanceState: Bundle?) {
super.onCreate(savedInstanceState)
- setContentView(R.layout.marker_demo)
+ setContentView(com.example.common_ui.R.layout.marker_demo)
- topText = findViewById(R.id.top_text)
+ topText = findViewById(com.example.common_ui.R.id.top_text)
- rotationBar = findViewById(R.id.rotationSeekBar).apply {
+ rotationBar = findViewById(com.example.common_ui.R.id.rotationSeekBar).apply {
max = 360
setOnSeekBarChangeListener(object: OnSeekBarChangeListener {
@@ -203,9 +203,9 @@ class MarkerDemoActivity :
} )
}
- flatBox = findViewById(R.id.flat)
+ flatBox = findViewById(com.example.common_ui.R.id.flat)
- options = findViewById(R.id.custom_info_window_options).apply {
+ options = findViewById(com.example.common_ui.R.id.custom_info_window_options).apply {
setOnCheckedChangeListener { _, _ ->
if (lastSelectedMarker?.isInfoWindowShown == true) {
// Refresh the info window when the info window's content has changed.
@@ -216,7 +216,7 @@ class MarkerDemoActivity :
}
}
- val mapFragment = supportFragmentManager.findFragmentById(R.id.map) as SupportMapFragment
+ val mapFragment = supportFragmentManager.findFragmentById(com.example.common_ui.R.id.map) as SupportMapFragment
OnMapAndViewReadyListener(mapFragment, this)
}
@@ -281,7 +281,7 @@ class MarkerDemoActivity :
position = places.getValue("SYDNEY"),
title = "Sydney",
snippet = "Population: 4,627,300",
- icon = BitmapDescriptorFactory.fromResource(R.drawable.arrow),
+ icon = BitmapDescriptorFactory.fromResource(com.example.common_ui.R.drawable.arrow),
infoWindowAnchorX = 0.5f,
infoWindowAnchorY = 0.5f
),
@@ -299,7 +299,7 @@ class MarkerDemoActivity :
position = places.getValue("ALICE_SPRINGS"),
title = "Alice Springs",
icon = vectorToBitmap(
- R.drawable.ic_android, Color.parseColor("#A4C639"))
+ com.example.common_ui.R.drawable.ic_android, Color.parseColor("#A4C639"))
),
// More markers for good measure
@@ -461,15 +461,15 @@ class MarkerDemoActivity :
}
override fun onMarkerDragStart(marker : Marker) {
- topText.text = getString(R.string.on_marker_drag_start)
+ topText.text = getString(com.example.common_ui.R.string.on_marker_drag_start)
}
override fun onMarkerDragEnd(marker : Marker) {
- topText.text = getString(R.string.on_marker_drag_end)
+ topText.text = getString(com.example.common_ui.R.string.on_marker_drag_end)
}
override fun onMarkerDrag(marker : Marker) {
- topText.text = getString(R.string.on_marker_drag, marker.position.latitude, marker.position.longitude)
+ topText.text = getString(com.example.common_ui.R.string.on_marker_drag, marker.position.latitude, marker.position.longitude)
}
/**
@@ -479,7 +479,7 @@ class MarkerDemoActivity :
*/
private fun checkReadyThen(stuffToDo : () -> Unit) {
if (!::map.isInitialized) {
- Toast.makeText(this, R.string.map_not_ready, Toast.LENGTH_SHORT).show()
+ Toast.makeText(this, com.example.common_ui.R.string.map_not_ready, Toast.LENGTH_SHORT).show()
} else {
stuffToDo()
}
diff --git a/ApiDemos/kotlin/app/src/v3/java/com/example/kotlindemos/MyLocationDemoActivity.kt b/ApiDemos/project/kotlin-app/src/v3/java/com/example/kotlindemos/MyLocationDemoActivity.kt
similarity index 97%
rename from ApiDemos/kotlin/app/src/v3/java/com/example/kotlindemos/MyLocationDemoActivity.kt
rename to ApiDemos/project/kotlin-app/src/v3/java/com/example/kotlindemos/MyLocationDemoActivity.kt
index 6f736f5b2..a4de2fcd1 100644
--- a/ApiDemos/kotlin/app/src/v3/java/com/example/kotlindemos/MyLocationDemoActivity.kt
+++ b/ApiDemos/project/kotlin-app/src/v3/java/com/example/kotlindemos/MyLocationDemoActivity.kt
@@ -53,8 +53,8 @@ class MyLocationDemoActivity : AppCompatActivity(), OnMyLocationButtonClickListe
private lateinit var map: GoogleMap
override fun onCreate(savedInstanceState: Bundle?) {
super.onCreate(savedInstanceState)
- setContentView(R.layout.my_location_demo)
- val mapFragment = supportFragmentManager.findFragmentById(R.id.map) as SupportMapFragment?
+ setContentView(com.example.common_ui.R.layout.my_location_demo)
+ val mapFragment = supportFragmentManager.findFragmentById(com.example.common_ui.R.id.map) as SupportMapFragment?
mapFragment?.getMapAsync(this)
}
diff --git a/ApiDemos/kotlin/app/src/v3/java/com/example/kotlindemos/OnMapAndViewReadyListener.kt b/ApiDemos/project/kotlin-app/src/v3/java/com/example/kotlindemos/OnMapAndViewReadyListener.kt
similarity index 100%
rename from ApiDemos/kotlin/app/src/v3/java/com/example/kotlindemos/OnMapAndViewReadyListener.kt
rename to ApiDemos/project/kotlin-app/src/v3/java/com/example/kotlindemos/OnMapAndViewReadyListener.kt
diff --git a/ApiDemos/kotlin/app/src/v3/java/com/example/kotlindemos/PermissionUtils.kt b/ApiDemos/project/kotlin-app/src/v3/java/com/example/kotlindemos/PermissionUtils.kt
similarity index 91%
rename from ApiDemos/kotlin/app/src/v3/java/com/example/kotlindemos/PermissionUtils.kt
rename to ApiDemos/project/kotlin-app/src/v3/java/com/example/kotlindemos/PermissionUtils.kt
index 58f8f4060..ede8dcd7d 100644
--- a/ApiDemos/kotlin/app/src/v3/java/com/example/kotlindemos/PermissionUtils.kt
+++ b/ApiDemos/project/kotlin-app/src/v3/java/com/example/kotlindemos/PermissionUtils.kt
@@ -86,8 +86,8 @@ object PermissionUtils {
finishActivity =
arguments?.getBoolean(ARGUMENT_FINISH_ACTIVITY) ?: false
return AlertDialog.Builder(activity)
- .setMessage(R.string.location_permission_denied)
- .setPositiveButton(android.R.string.ok, null)
+ .setMessage(com.example.common_ui.R.string.location_permission_denied)
+ .setPositiveButton(android.com.example.common_ui.R.string.ok, null)
.create()
}
@@ -95,7 +95,7 @@ object PermissionUtils {
super.onDismiss(dialog)
if (finishActivity) {
Toast.makeText(
- activity, R.string.permission_required_toast,
+ activity, com.example.common_ui.R.string.permission_required_toast,
Toast.LENGTH_SHORT
).show()
activity?.finish()
@@ -138,8 +138,8 @@ object PermissionUtils {
finishActivity =
arguments?.getBoolean(ARGUMENT_FINISH_ACTIVITY) ?: false
return AlertDialog.Builder(activity)
- .setMessage(R.string.permission_rationale_location)
- .setPositiveButton(android.R.string.ok) { dialog, which -> // After click on Ok, request the permission.
+ .setMessage(com.example.common_ui.R.string.permission_rationale_location)
+ .setPositiveButton(android.com.example.common_ui.R.string.ok) { dialog, which -> // After click on Ok, request the permission.
ActivityCompat.requestPermissions(
requireActivity(),
arrayOf(Manifest.permission.ACCESS_FINE_LOCATION),
@@ -148,7 +148,7 @@ object PermissionUtils {
// Do not finish the Activity while requesting permission.
finishActivity = false
}
- .setNegativeButton(android.R.string.cancel, null)
+ .setNegativeButton(android.com.example.common_ui.R.string.cancel, null)
.create()
}
@@ -157,7 +157,7 @@ object PermissionUtils {
if (finishActivity) {
Toast.makeText(
activity,
- R.string.permission_required_toast,
+ com.example.common_ui.R.string.permission_required_toast,
Toast.LENGTH_SHORT
).show()
activity?.finish()
diff --git a/ApiDemos/kotlin/app/src/v3/java/com/example/kotlindemos/PolygonDemoActivity.kt b/ApiDemos/project/kotlin-app/src/v3/java/com/example/kotlindemos/PolygonDemoActivity.kt
similarity index 81%
rename from ApiDemos/kotlin/app/src/v3/java/com/example/kotlindemos/PolygonDemoActivity.kt
rename to ApiDemos/project/kotlin-app/src/v3/java/com/example/kotlindemos/PolygonDemoActivity.kt
index 503138df2..3bd0b5022 100644
--- a/ApiDemos/kotlin/app/src/v3/java/com/example/kotlindemos/PolygonDemoActivity.kt
+++ b/ApiDemos/project/kotlin-app/src/v3/java/com/example/kotlindemos/PolygonDemoActivity.kt
@@ -83,56 +83,56 @@ class PolygonDemoActivity :
// These are the options for polygon stroke joints and patterns. We use their
// string resource IDs as identifiers.
- private val jointTypeNameResourceIds = intArrayOf(R.string.joint_type_default, // Default
- R.string.joint_type_bevel, R.string.joint_type_round)
+ private val jointTypeNameResourceIds = intArrayOf(com.example.common_ui.R.string.joint_type_default, // Default
+ com.example.common_ui.R.string.joint_type_bevel, com.example.common_ui.R.string.joint_type_round)
- private val patternTypeNameResourceIds = intArrayOf(R.string.pattern_solid, // Default
- R.string.pattern_dashed, R.string.pattern_dotted, R.string.pattern_mixed)
+ private val patternTypeNameResourceIds = intArrayOf(com.example.common_ui.R.string.pattern_solid, // Default
+ com.example.common_ui.R.string.pattern_dashed, com.example.common_ui.R.string.pattern_dotted, com.example.common_ui.R.string.pattern_mixed)
override fun onCreate(savedInstanceState: Bundle?) {
super.onCreate(savedInstanceState)
- setContentView(R.layout.polygon_demo)
+ setContentView(com.example.common_ui.R.layout.polygon_demo)
- fillHueBar = findViewById(R.id.fillHueSeekBar).apply {
+ fillHueBar = findViewById(com.example.common_ui.R.id.fillHueSeekBar).apply {
max = MAX_HUE_DEGREES
progress = MAX_HUE_DEGREES / 2
}
- fillAlphaBar = findViewById(R.id.fillAlphaSeekBar).apply {
+ fillAlphaBar = findViewById(com.example.common_ui.R.id.fillAlphaSeekBar).apply {
max = MAX_ALPHA
progress = MAX_ALPHA / 2
}
- strokeWidthBar = findViewById(R.id.strokeWidthSeekBar).apply {
+ strokeWidthBar = findViewById(com.example.common_ui.R.id.strokeWidthSeekBar).apply {
max = MAX_WIDTH_PX
progress = MAX_WIDTH_PX / 3
}
- strokeHueBar = findViewById(R.id.strokeHueSeekBar).apply {
+ strokeHueBar = findViewById(com.example.common_ui.R.id.strokeHueSeekBar).apply {
max = MAX_HUE_DEGREES
progress = 0
}
- strokeAlphaBar = findViewById(R.id.strokeAlphaSeekBar).apply {
+ strokeAlphaBar = findViewById(com.example.common_ui.R.id.strokeAlphaSeekBar).apply {
max = MAX_ALPHA
progress = MAX_ALPHA
}
- strokeJointTypeSpinner = findViewById(R.id.strokeJointTypeSpinner).apply {
+ strokeJointTypeSpinner = findViewById(com.example.common_ui.R.id.strokeJointTypeSpinner).apply {
adapter = ArrayAdapter(
- this@PolygonDemoActivity, android.R.layout.simple_spinner_item,
+ this@PolygonDemoActivity, android.com.example.common_ui.R.layout.simple_spinner_item,
getResourceStrings(jointTypeNameResourceIds))
}
- strokePatternSpinner = findViewById(R.id.strokePatternSpinner).apply {
+ strokePatternSpinner = findViewById(com.example.common_ui.R.id.strokePatternSpinner).apply {
adapter = ArrayAdapter(
- this@PolygonDemoActivity, android.R.layout.simple_spinner_item,
+ this@PolygonDemoActivity, android.com.example.common_ui.R.layout.simple_spinner_item,
getResourceStrings(patternTypeNameResourceIds))
}
- clickabilityCheckbox = findViewById(R.id.toggleClickability)
+ clickabilityCheckbox = findViewById(com.example.common_ui.R.id.toggleClickability)
- val mapFragment = supportFragmentManager.findFragmentById(R.id.map) as SupportMapFragment
+ val mapFragment = supportFragmentManager.findFragmentById(com.example.common_ui.R.id.map) as SupportMapFragment
mapFragment.getMapAsync(this)
}
@@ -152,7 +152,7 @@ class PolygonDemoActivity :
with(googleMap) {
// Override the default content description on the view, for accessibility mode.
- setContentDescription(getString(R.string.polygon_demo_description))
+ setContentDescription(getString(com.example.common_ui.R.string.polygon_demo_description))
// Move the googleMap so that it is centered on the mutable polygon.
moveCamera(CameraUpdateFactory.newLatLngZoom(center, 4f))
@@ -210,19 +210,19 @@ class PolygonDemoActivity :
private fun getSelectedJointType(pos: Int): Int {
return when (jointTypeNameResourceIds[pos]) {
- R.string.joint_type_bevel -> JointType.BEVEL
- R.string.joint_type_round -> JointType.ROUND
- R.string.joint_type_default -> JointType.DEFAULT
+ com.example.common_ui.R.string.joint_type_bevel -> JointType.BEVEL
+ com.example.common_ui.R.string.joint_type_round -> JointType.ROUND
+ com.example.common_ui.R.string.joint_type_default -> JointType.DEFAULT
else -> 0
}
}
private fun getSelectedPattern(pos: Int): List? {
return when (patternTypeNameResourceIds[pos]) {
- R.string.pattern_solid -> null
- R.string.pattern_dotted -> patternDotted
- R.string.pattern_dashed -> patternDashed
- R.string.pattern_mixed -> patternMixed
+ com.example.common_ui.R.string.pattern_solid -> null
+ com.example.common_ui.R.string.pattern_dotted -> patternDotted
+ com.example.common_ui.R.string.pattern_dashed -> patternDashed
+ com.example.common_ui.R.string.pattern_mixed -> patternMixed
else -> null
}
}
@@ -288,9 +288,9 @@ class PolygonDemoActivity :
override fun onItemSelected(parent: AdapterView<*>?, view: View?, pos: Int,
id: Long) {
when (parent?.id) {
- R.id.strokeJointTypeSpinner ->
+ com.example.common_ui.R.id.strokeJointTypeSpinner ->
mutablePolygon.strokeJointType = getSelectedJointType(pos)
- R.id.strokePatternSpinner ->
+ com.example.common_ui.R.id.strokePatternSpinner ->
mutablePolygon.strokePattern = getSelectedPattern(pos)
}
}
diff --git a/ApiDemos/kotlin/app/src/v3/java/com/example/kotlindemos/RawMapViewDemoActivity.kt b/ApiDemos/project/kotlin-app/src/v3/java/com/example/kotlindemos/RawMapViewDemoActivity.kt
similarity index 95%
rename from ApiDemos/kotlin/app/src/v3/java/com/example/kotlindemos/RawMapViewDemoActivity.kt
rename to ApiDemos/project/kotlin-app/src/v3/java/com/example/kotlindemos/RawMapViewDemoActivity.kt
index 5d7d7d64c..5e8182c9b 100644
--- a/ApiDemos/kotlin/app/src/v3/java/com/example/kotlindemos/RawMapViewDemoActivity.kt
+++ b/ApiDemos/project/kotlin-app/src/v3/java/com/example/kotlindemos/RawMapViewDemoActivity.kt
@@ -37,13 +37,13 @@ class RawMapViewDemoActivity : AppCompatActivity(), OnMapReadyCallback {
override fun onCreate(savedInstanceState: Bundle?) {
super.onCreate(savedInstanceState)
- setContentView(R.layout.raw_mapview_demo)
+ setContentView(com.example.common_ui.R.layout.raw_mapview_demo)
// *** IMPORTANT ***
// MapView requires that the Bundle you pass contain _ONLY_ MapView SDK
// objects or sub-Bundles.
val mapViewBundle = savedInstanceState?.getBundle(MAPVIEW_BUNDLE_KEY)
- mapView = findViewById(R.id.map)
+ mapView = findViewById(com.example.common_ui.R.id.map)
mapView.onCreate(mapViewBundle)
mapView.getMapAsync(this)
}
diff --git a/ApiDemos/kotlin/app/src/v3/java/com/example/kotlindemos/SplitStreetViewPanoramaAndMapDemoActivity.kt b/ApiDemos/project/kotlin-app/src/v3/java/com/example/kotlindemos/SplitStreetViewPanoramaAndMapDemoActivity.kt
similarity index 88%
rename from ApiDemos/kotlin/app/src/v3/java/com/example/kotlindemos/SplitStreetViewPanoramaAndMapDemoActivity.kt
rename to ApiDemos/project/kotlin-app/src/v3/java/com/example/kotlindemos/SplitStreetViewPanoramaAndMapDemoActivity.kt
index aabbf8577..8d31474e6 100644
--- a/ApiDemos/kotlin/app/src/v3/java/com/example/kotlindemos/SplitStreetViewPanoramaAndMapDemoActivity.kt
+++ b/ApiDemos/project/kotlin-app/src/v3/java/com/example/kotlindemos/SplitStreetViewPanoramaAndMapDemoActivity.kt
@@ -39,11 +39,11 @@ class SplitStreetViewPanoramaAndMapDemoActivity : AppCompatActivity(),
override fun onCreate(savedInstanceState: Bundle?) {
super.onCreate(savedInstanceState)
- setContentView(R.layout.split_street_view_panorama_and_map_demo)
+ setContentView(com.example.common_ui.R.layout.split_street_view_panorama_and_map_demo)
val markerPosition = savedInstanceState?.getParcelable(MARKER_POSITION_KEY) ?: SYDNEY
val streetViewPanoramaFragment =
- supportFragmentManager.findFragmentById(R.id.streetviewpanorama) as SupportStreetViewPanoramaFragment?
+ supportFragmentManager.findFragmentById(com.example.common_ui.R.id.streetviewpanorama) as SupportStreetViewPanoramaFragment?
streetViewPanoramaFragment?.getStreetViewPanoramaAsync { panorama ->
streetViewPanorama = panorama
streetViewPanorama?.setOnStreetViewPanoramaChangeListener(
@@ -54,14 +54,14 @@ class SplitStreetViewPanoramaAndMapDemoActivity : AppCompatActivity(),
savedInstanceState ?: streetViewPanorama?.setPosition(SYDNEY)
}
val mapFragment =
- supportFragmentManager.findFragmentById(R.id.map) as SupportMapFragment?
+ supportFragmentManager.findFragmentById(com.example.common_ui.R.id.map) as SupportMapFragment?
mapFragment?.getMapAsync { map ->
map.setOnMarkerDragListener(this@SplitStreetViewPanoramaAndMapDemoActivity)
// Creates a draggable marker. Long press to drag.
marker = map.addMarker(
MarkerOptions()
.position(markerPosition)
- .icon(BitmapDescriptorFactory.fromResource(R.drawable.pegman))
+ .icon(BitmapDescriptorFactory.fromResource(com.example.common_ui.R.drawable.pegman))
.draggable(true)
)
}
diff --git a/ApiDemos/kotlin/app/src/v3/java/com/example/kotlindemos/StreetViewPanoramaBasicDemoActivity.kt b/ApiDemos/project/kotlin-app/src/v3/java/com/example/kotlindemos/StreetViewPanoramaBasicDemoActivity.kt
similarity index 88%
rename from ApiDemos/kotlin/app/src/v3/java/com/example/kotlindemos/StreetViewPanoramaBasicDemoActivity.kt
rename to ApiDemos/project/kotlin-app/src/v3/java/com/example/kotlindemos/StreetViewPanoramaBasicDemoActivity.kt
index 743ca26dc..a21c76d7e 100644
--- a/ApiDemos/kotlin/app/src/v3/java/com/example/kotlindemos/StreetViewPanoramaBasicDemoActivity.kt
+++ b/ApiDemos/project/kotlin-app/src/v3/java/com/example/kotlindemos/StreetViewPanoramaBasicDemoActivity.kt
@@ -31,10 +31,10 @@ import com.google.android.libraries.maps.model.LatLng
class StreetViewPanoramaBasicDemoActivity : AppCompatActivity() {
override fun onCreate(savedInstanceState: Bundle?) {
super.onCreate(savedInstanceState)
- setContentView(R.layout.street_view_panorama_basic_demo)
+ setContentView(com.example.common_ui.R.layout.street_view_panorama_basic_demo)
val streetViewPanoramaFragment =
- supportFragmentManager.findFragmentById(R.id.streetviewpanorama) as SupportStreetViewPanoramaFragment?
+ supportFragmentManager.findFragmentById(com.example.common_ui.R.id.streetviewpanorama) as SupportStreetViewPanoramaFragment?
streetViewPanoramaFragment?.getStreetViewPanoramaAsync { panorama ->
// Only set the panorama to SYDNEY on startup (when no panoramas have been
diff --git a/ApiDemos/kotlin/app/src/v3/java/com/example/kotlindemos/StreetViewPanoramaEventsDemoActivity.kt b/ApiDemos/project/kotlin-app/src/v3/java/com/example/kotlindemos/StreetViewPanoramaEventsDemoActivity.kt
similarity index 89%
rename from ApiDemos/kotlin/app/src/v3/java/com/example/kotlindemos/StreetViewPanoramaEventsDemoActivity.kt
rename to ApiDemos/project/kotlin-app/src/v3/java/com/example/kotlindemos/StreetViewPanoramaEventsDemoActivity.kt
index 860f4f29f..c9f0c080f 100644
--- a/ApiDemos/kotlin/app/src/v3/java/com/example/kotlindemos/StreetViewPanoramaEventsDemoActivity.kt
+++ b/ApiDemos/project/kotlin-app/src/v3/java/com/example/kotlindemos/StreetViewPanoramaEventsDemoActivity.kt
@@ -51,15 +51,15 @@ class StreetViewPanoramaEventsDemoActivity : AppCompatActivity(),
override fun onCreate(savedInstanceState: Bundle?) {
super.onCreate(savedInstanceState)
- setContentView(R.layout.street_view_panorama_events_demo)
+ setContentView(com.example.common_ui.R.layout.street_view_panorama_events_demo)
- panoChangeTimesTextView = findViewById(R.id.change_pano)
- panoCameraChangeTextView = findViewById(R.id.change_camera)
- panoClickTextView = findViewById(R.id.click_pano)
- panoLongClickTextView = findViewById(R.id.long_click_pano)
+ panoChangeTimesTextView = findViewById(com.example.common_ui.R.id.change_pano)
+ panoCameraChangeTextView = findViewById(com.example.common_ui.R.id.change_camera)
+ panoClickTextView = findViewById(com.example.common_ui.R.id.click_pano)
+ panoLongClickTextView = findViewById(com.example.common_ui.R.id.long_click_pano)
val streetViewPanoramaFragment =
- supportFragmentManager.findFragmentById(R.id.streetviewpanorama) as SupportStreetViewPanoramaFragment?
+ supportFragmentManager.findFragmentById(com.example.common_ui.R.id.streetviewpanorama) as SupportStreetViewPanoramaFragment?
streetViewPanoramaFragment?.getStreetViewPanoramaAsync { panorama: StreetViewPanorama ->
streetViewPanorama = panorama
streetViewPanorama.setOnStreetViewPanoramaChangeListener(
diff --git a/ApiDemos/kotlin/app/src/v3/java/com/example/kotlindemos/StreetViewPanoramaNavigationDemoActivity.kt b/ApiDemos/project/kotlin-app/src/v3/java/com/example/kotlindemos/StreetViewPanoramaNavigationDemoActivity.kt
similarity index 81%
rename from ApiDemos/kotlin/app/src/v3/java/com/example/kotlindemos/StreetViewPanoramaNavigationDemoActivity.kt
rename to ApiDemos/project/kotlin-app/src/v3/java/com/example/kotlindemos/StreetViewPanoramaNavigationDemoActivity.kt
index 01ba74e76..2554c19e6 100644
--- a/ApiDemos/kotlin/app/src/v3/java/com/example/kotlindemos/StreetViewPanoramaNavigationDemoActivity.kt
+++ b/ApiDemos/project/kotlin-app/src/v3/java/com/example/kotlindemos/StreetViewPanoramaNavigationDemoActivity.kt
@@ -62,10 +62,10 @@ class StreetViewPanoramaNavigationDemoActivity : AppCompatActivity() {
override fun onCreate(savedInstanceState:Bundle?) {
super.onCreate(savedInstanceState)
- setContentView(R.layout.activity_street_view_panorama_navigation_demo)
+ setContentView(com.example.common_ui.R.layout.activity_street_view_panorama_navigation_demo)
val streetViewPanoramaFragment = supportFragmentManager
- .findFragmentById(R.id.streetviewpanorama) as SupportStreetViewPanoramaFragment
+ .findFragmentById(com.example.common_ui.R.id.streetviewpanorama) as SupportStreetViewPanoramaFragment
streetViewPanoramaFragment.getStreetViewPanoramaAsync { panorama ->
streetViewPanorama = panorama
// Only set the panorama to sydney on startup (when no panoramas have been
@@ -75,7 +75,7 @@ class StreetViewPanoramaNavigationDemoActivity : AppCompatActivity() {
}
}
- customDurationBar = findViewById(R.id.duration_bar)
+ customDurationBar = findViewById(com.example.common_ui.R.id.duration_bar)
}
/**
@@ -85,7 +85,7 @@ class StreetViewPanoramaNavigationDemoActivity : AppCompatActivity() {
*/
private fun checkReadyThen(stuffToDo : () -> Unit) {
if (!::streetViewPanorama.isInitialized) {
- Toast.makeText(this, R.string.map_not_ready, Toast.LENGTH_SHORT).show()
+ Toast.makeText(this, com.example.common_ui.R.string.map_not_ready, Toast.LENGTH_SHORT).show()
} else {
stuffToDo()
}
@@ -96,10 +96,10 @@ class StreetViewPanoramaNavigationDemoActivity : AppCompatActivity() {
*/
fun onGoToLocation(view: View) {
when (view.id) {
- R.id.sydney -> streetViewPanorama.setPosition(sydney)
- R.id.sanfrancisco -> streetViewPanorama.setPosition(sanFrancisco)
- R.id.santorini -> streetViewPanorama.setPosition(santoriniPanoId)
- R.id.invalid -> streetViewPanorama.setPosition(invalid)
+ com.example.common_ui.R.id.sydney -> streetViewPanorama.setPosition(sydney)
+ com.example.common_ui.R.id.sanfrancisco -> streetViewPanorama.setPosition(sanFrancisco)
+ com.example.common_ui.R.id.santorini -> streetViewPanorama.setPosition(santoriniPanoId)
+ com.example.common_ui.R.id.invalid -> streetViewPanorama.setPosition(invalid)
}
}
@@ -119,16 +119,16 @@ class StreetViewPanoramaNavigationDemoActivity : AppCompatActivity() {
checkReadyThen {
with(streetViewPanorama.panoramaCamera) {
when (view.id) {
- R.id.zoom_in -> updateStreetViewPanorama(zoom + ZOOM_BY, tilt, bearing)
- R.id.zoom_out -> updateStreetViewPanorama(zoom - ZOOM_BY, tilt, bearing)
- R.id.pan_left -> updateStreetViewPanorama(zoom, tilt, bearing - PAN_BY_DEGREES)
- R.id.pan_right -> updateStreetViewPanorama(zoom, tilt, bearing + PAN_BY_DEGREES)
- R.id.pan_up -> {
+ com.example.common_ui.R.id.zoom_in -> updateStreetViewPanorama(zoom + ZOOM_BY, tilt, bearing)
+ com.example.common_ui.R.id.zoom_out -> updateStreetViewPanorama(zoom - ZOOM_BY, tilt, bearing)
+ com.example.common_ui.R.id.pan_left -> updateStreetViewPanorama(zoom, tilt, bearing - PAN_BY_DEGREES)
+ com.example.common_ui.R.id.pan_right -> updateStreetViewPanorama(zoom, tilt, bearing + PAN_BY_DEGREES)
+ com.example.common_ui.R.id.pan_up -> {
var newTilt = tilt + PAN_BY_DEGREES
if (newTilt > 90) newTilt = 90f
updateStreetViewPanorama(zoom, newTilt, bearing)
}
- R.id.pan_down -> {
+ com.example.common_ui.R.id.pan_down -> {
var newTilt = tilt - PAN_BY_DEGREES
if (newTilt < -90) newTilt = -90f
updateStreetViewPanorama(zoom, newTilt, bearing)
diff --git a/ApiDemos/kotlin/app/src/v3/java/com/example/kotlindemos/StreetViewPanoramaOptionsDemoActivity.kt b/ApiDemos/project/kotlin-app/src/v3/java/com/example/kotlindemos/StreetViewPanoramaOptionsDemoActivity.kt
similarity index 84%
rename from ApiDemos/kotlin/app/src/v3/java/com/example/kotlindemos/StreetViewPanoramaOptionsDemoActivity.kt
rename to ApiDemos/project/kotlin-app/src/v3/java/com/example/kotlindemos/StreetViewPanoramaOptionsDemoActivity.kt
index b4ce2f48f..fb08fac9b 100644
--- a/ApiDemos/kotlin/app/src/v3/java/com/example/kotlindemos/StreetViewPanoramaOptionsDemoActivity.kt
+++ b/ApiDemos/project/kotlin-app/src/v3/java/com/example/kotlindemos/StreetViewPanoramaOptionsDemoActivity.kt
@@ -44,14 +44,14 @@ class StreetViewPanoramaOptionsDemoActivity : AppCompatActivity() {
override fun onCreate(savedInstanceState: Bundle?) {
super.onCreate(savedInstanceState)
- setContentView(R.layout.street_view_panorama_options_demo)
- streetNameCheckbox = findViewById(R.id.streetnames)
- navigationCheckbox = findViewById(R.id.navigation)
- zoomCheckbox = findViewById(R.id.zoom)
- panningCheckbox = findViewById(R.id.panning)
- outdoorCheckbox = findViewById(R.id.outdoor)
+ setContentView(com.example.common_ui.R.layout.street_view_panorama_options_demo)
+ streetNameCheckbox = findViewById(com.example.common_ui.R.id.streetnames)
+ navigationCheckbox = findViewById(com.example.common_ui.R.id.navigation)
+ zoomCheckbox = findViewById(com.example.common_ui.R.id.zoom)
+ panningCheckbox = findViewById(com.example.common_ui.R.id.panning)
+ outdoorCheckbox = findViewById(com.example.common_ui.R.id.outdoor)
val streetViewPanoramaFragment =
- supportFragmentManager.findFragmentById(R.id.streetviewpanorama) as SupportStreetViewPanoramaFragment?
+ supportFragmentManager.findFragmentById(com.example.common_ui.R.id.streetviewpanorama) as SupportStreetViewPanoramaFragment?
streetViewPanoramaFragment?.getStreetViewPanoramaAsync { panorama: StreetViewPanorama ->
streetViewPanorama = panorama
panorama.isStreetNamesEnabled = streetNameCheckbox.isChecked()
@@ -75,7 +75,7 @@ class StreetViewPanoramaOptionsDemoActivity : AppCompatActivity() {
private fun checkReady(): Boolean {
if (streetViewPanorama == null) {
- Toast.makeText(this, R.string.map_not_ready, Toast.LENGTH_SHORT).show()
+ Toast.makeText(this, com.example.common_ui.R.string.map_not_ready, Toast.LENGTH_SHORT).show()
return false
}
return true
diff --git a/ApiDemos/kotlin/app/src/v3/java/com/example/kotlindemos/StreetViewPanoramaViewDemoActivity.kt b/ApiDemos/project/kotlin-app/src/v3/java/com/example/kotlindemos/StreetViewPanoramaViewDemoActivity.kt
similarity index 100%
rename from ApiDemos/kotlin/app/src/v3/java/com/example/kotlindemos/StreetViewPanoramaViewDemoActivity.kt
rename to ApiDemos/project/kotlin-app/src/v3/java/com/example/kotlindemos/StreetViewPanoramaViewDemoActivity.kt
diff --git a/ApiDemos/kotlin/app/src/v3/java/com/example/kotlindemos/TagsDemoActivity.kt b/ApiDemos/project/kotlin-app/src/v3/java/com/example/kotlindemos/TagsDemoActivity.kt
similarity index 95%
rename from ApiDemos/kotlin/app/src/v3/java/com/example/kotlindemos/TagsDemoActivity.kt
rename to ApiDemos/project/kotlin-app/src/v3/java/com/example/kotlindemos/TagsDemoActivity.kt
index 483855784..50869eaf7 100644
--- a/ApiDemos/kotlin/app/src/v3/java/com/example/kotlindemos/TagsDemoActivity.kt
+++ b/ApiDemos/project/kotlin-app/src/v3/java/com/example/kotlindemos/TagsDemoActivity.kt
@@ -87,11 +87,11 @@ class TagsDemoActivity : AppCompatActivity(),
override fun onCreate(savedInstanceState: Bundle?) {
super.onCreate(savedInstanceState)
- setContentView(R.layout.tags_demo)
+ setContentView(com.example.common_ui.R.layout.tags_demo)
- tagText = findViewById(R.id.tag_text)
+ tagText = findViewById(com.example.common_ui.R.id.tag_text)
- val mapFragment = supportFragmentManager.findFragmentById(R.id.map) as SupportMapFragment
+ val mapFragment = supportFragmentManager.findFragmentById(com.example.common_ui.R.id.map) as SupportMapFragment
OnMapAndViewReadyListener(mapFragment, this)
}
@@ -125,7 +125,7 @@ class TagsDemoActivity : AppCompatActivity(),
// Override the default content description on the view, for accessibility mode.
// Ideally this string would be localised.
- setContentDescription(getString(R.string.tags_demo_map_description))
+ setContentDescription(getString(com.example.common_ui.R.string.tags_demo_map_description))
// include all places we have markers for in the initial view of the map
val boundsBuilder = LatLngBounds.Builder()
@@ -153,7 +153,7 @@ class TagsDemoActivity : AppCompatActivity(),
// A ground overlay at Sydney.
addGroundOverlay(GroundOverlayOptions().apply {
- image(BitmapDescriptorFactory.fromResource(R.drawable.harbour_bridge))
+ image(BitmapDescriptorFactory.fromResource(com.example.common_ui.R.drawable.harbour_bridge))
position(places.getValue("SYDNEY"), 700000f)
clickable(true)
}).run {
diff --git a/ApiDemos/kotlin/app/src/v3/java/com/example/kotlindemos/TileCoordinateDemoActivity.kt b/ApiDemos/project/kotlin-app/src/v3/java/com/example/kotlindemos/TileCoordinateDemoActivity.kt
similarity index 97%
rename from ApiDemos/kotlin/app/src/v3/java/com/example/kotlindemos/TileCoordinateDemoActivity.kt
rename to ApiDemos/project/kotlin-app/src/v3/java/com/example/kotlindemos/TileCoordinateDemoActivity.kt
index 3e110d4aa..8a2ae2f10 100644
--- a/ApiDemos/kotlin/app/src/v3/java/com/example/kotlindemos/TileCoordinateDemoActivity.kt
+++ b/ApiDemos/project/kotlin-app/src/v3/java/com/example/kotlindemos/TileCoordinateDemoActivity.kt
@@ -43,8 +43,8 @@ class TileCoordinateDemoActivity : AppCompatActivity(), OnMapReadyCallback {
override fun onCreate(savedInstanceState: Bundle?) {
super.onCreate(savedInstanceState)
- setContentView(R.layout.tile_coordinate_demo)
- val mapFragment = supportFragmentManager.findFragmentById(R.id.map) as SupportMapFragment
+ setContentView(com.example.common_ui.R.layout.tile_coordinate_demo)
+ val mapFragment = supportFragmentManager.findFragmentById(com.example.common_ui.R.id.map) as SupportMapFragment
mapFragment.getMapAsync(this)
}
diff --git a/ApiDemos/kotlin/app/src/v3/java/com/example/kotlindemos/TileOverlayDemoActivity.kt b/ApiDemos/project/kotlin-app/src/v3/java/com/example/kotlindemos/TileOverlayDemoActivity.kt
similarity index 94%
rename from ApiDemos/kotlin/app/src/v3/java/com/example/kotlindemos/TileOverlayDemoActivity.kt
rename to ApiDemos/project/kotlin-app/src/v3/java/com/example/kotlindemos/TileOverlayDemoActivity.kt
index 08ada0a66..031877ca7 100644
--- a/ApiDemos/kotlin/app/src/v3/java/com/example/kotlindemos/TileOverlayDemoActivity.kt
+++ b/ApiDemos/project/kotlin-app/src/v3/java/com/example/kotlindemos/TileOverlayDemoActivity.kt
@@ -49,11 +49,11 @@ class TileOverlayDemoActivity : AppCompatActivity(), OnSeekBarChangeListener, On
override fun onCreate(savedInstanceState: Bundle?) {
super.onCreate(savedInstanceState)
- setContentView(R.layout.tile_overlay_demo)
- mTransparencyBar = findViewById(R.id.transparencySeekBar)
+ setContentView(com.example.common_ui.R.layout.tile_overlay_demo)
+ mTransparencyBar = findViewById(com.example.common_ui.R.id.transparencySeekBar)
mTransparencyBar.max = TRANSPARENCY_MAX
mTransparencyBar.progress = 0
- val mapFragment = supportFragmentManager.findFragmentById(R.id.map) as SupportMapFragment
+ val mapFragment = supportFragmentManager.findFragmentById(com.example.common_ui.R.id.map) as SupportMapFragment
mapFragment.getMapAsync(this)
}
diff --git a/ApiDemos/kotlin/app/src/v3/java/com/example/kotlindemos/UiSettingsDemoActivity.kt b/ApiDemos/project/kotlin-app/src/v3/java/com/example/kotlindemos/UiSettingsDemoActivity.kt
similarity index 65%
rename from ApiDemos/kotlin/app/src/v3/java/com/example/kotlindemos/UiSettingsDemoActivity.kt
rename to ApiDemos/project/kotlin-app/src/v3/java/com/example/kotlindemos/UiSettingsDemoActivity.kt
index 75537d5a9..21f92f085 100644
--- a/ApiDemos/kotlin/app/src/v3/java/com/example/kotlindemos/UiSettingsDemoActivity.kt
+++ b/ApiDemos/project/kotlin-app/src/v3/java/com/example/kotlindemos/UiSettingsDemoActivity.kt
@@ -45,9 +45,9 @@ class UiSettingsDemoActivity :
override fun onCreate(savedInstanceState: Bundle?) {
super.onCreate(savedInstanceState)
- setContentView(R.layout.activity_ui_settings_demo)
+ setContentView(com.example.common_ui.R.layout.activity_ui_settings_demo)
val mapFragment: SupportMapFragment =
- supportFragmentManager.findFragmentById(R.id.map) as SupportMapFragment
+ supportFragmentManager.findFragmentById(com.example.common_ui.R.id.map) as SupportMapFragment
mapFragment.getMapAsync(this)
}
@@ -57,15 +57,15 @@ class UiSettingsDemoActivity :
enableMyLocation()
// Set all the settings of the map to match the current state of the checkboxes
with(map.uiSettings) {
- isZoomControlsEnabled = isChecked(R.id.zoom_button)
- isCompassEnabled = isChecked(R.id.compass_button)
- isMyLocationButtonEnabled = isChecked(R.id.myloc_button)
- isIndoorLevelPickerEnabled = isChecked(R.id.level_button)
- isMapToolbarEnabled = isChecked(R.id.maptoolbar_button)
- isZoomGesturesEnabled = isChecked(R.id.zoomgest_button)
- isScrollGesturesEnabled = isChecked(R.id.scrollgest_button)
- isTiltGesturesEnabled = isChecked(R.id.tiltgest_button)
- isRotateGesturesEnabled = isChecked(R.id.rotategest_button)
+ isZoomControlsEnabled = isChecked(com.example.common_ui.R.id.zoom_button)
+ isCompassEnabled = isChecked(com.example.common_ui.R.id.compass_button)
+ isMyLocationButtonEnabled = isChecked(com.example.common_ui.R.id.myloc_button)
+ isIndoorLevelPickerEnabled = isChecked(com.example.common_ui.R.id.level_button)
+ isMapToolbarEnabled = isChecked(com.example.common_ui.R.id.maptoolbar_button)
+ isZoomGesturesEnabled = isChecked(com.example.common_ui.R.id.zoomgest_button)
+ isScrollGesturesEnabled = isChecked(com.example.common_ui.R.id.scrollgest_button)
+ isTiltGesturesEnabled = isChecked(com.example.common_ui.R.id.tiltgest_button)
+ isRotateGesturesEnabled = isChecked(com.example.common_ui.R.id.rotategest_button)
}
}
@@ -77,15 +77,15 @@ class UiSettingsDemoActivity :
val isChecked: Boolean = view.isChecked
with(map.uiSettings) {
when (view.id) {
- R.id.zoom_button -> isZoomControlsEnabled = isChecked
- R.id.compass_button -> isCompassEnabled = isChecked
- R.id.myloc_button -> isMyLocationButtonEnabled = isChecked
- R.id.level_button -> isIndoorLevelPickerEnabled = isChecked
- R.id.maptoolbar_button -> isMapToolbarEnabled = isChecked
- R.id.zoomgest_button -> isZoomGesturesEnabled = isChecked
- R.id.scrollgest_button -> isScrollGesturesEnabled = isChecked
- R.id.tiltgest_button -> isTiltGesturesEnabled = isChecked
- R.id.rotategest_button -> isRotateGesturesEnabled = isChecked
+ com.example.common_ui.R.id.zoom_button -> isZoomControlsEnabled = isChecked
+ com.example.common_ui.R.id.compass_button -> isCompassEnabled = isChecked
+ com.example.common_ui.R.id.myloc_button -> isMyLocationButtonEnabled = isChecked
+ com.example.common_ui.R.id.level_button -> isIndoorLevelPickerEnabled = isChecked
+ com.example.common_ui.R.id.maptoolbar_button -> isMapToolbarEnabled = isChecked
+ com.example.common_ui.R.id.zoomgest_button -> isZoomGesturesEnabled = isChecked
+ com.example.common_ui.R.id.scrollgest_button -> isScrollGesturesEnabled = isChecked
+ com.example.common_ui.R.id.tiltgest_button -> isTiltGesturesEnabled = isChecked
+ com.example.common_ui.R.id.rotategest_button -> isRotateGesturesEnabled = isChecked
}
}
}
@@ -116,7 +116,7 @@ class UiSettingsDemoActivity :
if (hasLocationPermission()) {
map.isMyLocationEnabled = true
} else {
- EasyPermissions.requestPermissions(this, getString(R.string.location),
+ EasyPermissions.requestPermissions(this, getString(com.example.common_ui.R.string.location),
REQUEST_CODE_LOCATION, Manifest.permission.ACCESS_FINE_LOCATION
)
}
diff --git a/ApiDemos/kotlin/app/src/v3/java/com/example/kotlindemos/VisibleRegionDemoActivity.kt b/ApiDemos/project/kotlin-app/src/v3/java/com/example/kotlindemos/VisibleRegionDemoActivity.kt
similarity index 88%
rename from ApiDemos/kotlin/app/src/v3/java/com/example/kotlindemos/VisibleRegionDemoActivity.kt
rename to ApiDemos/project/kotlin-app/src/v3/java/com/example/kotlindemos/VisibleRegionDemoActivity.kt
index 3ef9d48e2..f316a9843 100644
--- a/ApiDemos/kotlin/app/src/v3/java/com/example/kotlindemos/VisibleRegionDemoActivity.kt
+++ b/ApiDemos/project/kotlin-app/src/v3/java/com/example/kotlindemos/VisibleRegionDemoActivity.kt
@@ -69,17 +69,17 @@ class VisibleRegionDemoActivity :
override fun onCreate(savedInstanceState: Bundle?) {
super.onCreate(savedInstanceState)
- setContentView(R.layout.visible_region_demo)
- messageView = findViewById(R.id.message_text)
+ setContentView(com.example.common_ui.R.layout.visible_region_demo)
+ messageView = findViewById(com.example.common_ui.R.id.message_text)
- val mapFragment = supportFragmentManager.findFragmentById(R.id.map) as SupportMapFragment
+ val mapFragment = supportFragmentManager.findFragmentById(com.example.common_ui.R.id.map) as SupportMapFragment
OnMapAndViewReadyListener(mapFragment, this)
- normalButton = findViewById(R.id.vr_normal_button)
- morePaddedButton = findViewById(R.id.vr_more_padded_button)
- operaHouseButton = findViewById(R.id.vr_soh_button)
- sfoButton = findViewById(R.id.vr_sfo_button)
- australiaButton = findViewById(R.id.vr_aus_button)
+ normalButton = findViewById(com.example.common_ui.R.id.vr_normal_button)
+ morePaddedButton = findViewById(com.example.common_ui.R.id.vr_more_padded_button)
+ operaHouseButton = findViewById(com.example.common_ui.R.id.vr_soh_button)
+ sfoButton = findViewById(com.example.common_ui.R.id.vr_sfo_button)
+ australiaButton = findViewById(com.example.common_ui.R.id.vr_aus_button)
}
@@ -97,7 +97,7 @@ class VisibleRegionDemoActivity :
addMarker(MarkerOptions().position(operaHouseLatLng).title("Sydney Opera House"))
// Add a camera idle listener that displays the current camera position in a TextView
setOnCameraIdleListener {
- messageView.text = getString(R.string.camera_change_message,
+ messageView.text = getString(com.example.common_ui.R.string.camera_change_message,
this@VisibleRegionDemoActivity.map.cameraPosition)
}
}
@@ -110,7 +110,7 @@ class VisibleRegionDemoActivity :
// increases the amount of padding along the right and bottom of the map
morePaddedButton.setOnClickListener {
// get the view that contains the map
- val mapView: View? = supportFragmentManager.findFragmentById(R.id.map)?.view
+ val mapView: View? = supportFragmentManager.findFragmentById(com.example.common_ui.R.id.map)?.view
animatePadding(150, 0, (mapView?.width ?: 0) / 3,
(mapView?.height ?: 0)/ 4)
}
diff --git a/ApiDemos/kotlin/app/src/v3/java/com/example/kotlindemos/anim/AnimationManager.kt b/ApiDemos/project/kotlin-app/src/v3/java/com/example/kotlindemos/anim/AnimationManager.kt
similarity index 100%
rename from ApiDemos/kotlin/app/src/v3/java/com/example/kotlindemos/anim/AnimationManager.kt
rename to ApiDemos/project/kotlin-app/src/v3/java/com/example/kotlindemos/anim/AnimationManager.kt
diff --git a/ApiDemos/kotlin/app/src/v3/java/com/example/kotlindemos/model/MoveDirection.kt b/ApiDemos/project/kotlin-app/src/v3/java/com/example/kotlindemos/model/MoveDirection.kt
similarity index 100%
rename from ApiDemos/kotlin/app/src/v3/java/com/example/kotlindemos/model/MoveDirection.kt
rename to ApiDemos/project/kotlin-app/src/v3/java/com/example/kotlindemos/model/MoveDirection.kt
diff --git a/ApiDemos/kotlin/app/src/v3/java/com/example/kotlindemos/polyline/PolylineCapControlFragment.kt b/ApiDemos/project/kotlin-app/src/v3/java/com/example/kotlindemos/polyline/PolylineCapControlFragment.kt
similarity index 64%
rename from ApiDemos/kotlin/app/src/v3/java/com/example/kotlindemos/polyline/PolylineCapControlFragment.kt
rename to ApiDemos/project/kotlin-app/src/v3/java/com/example/kotlindemos/polyline/PolylineCapControlFragment.kt
index 8db42422f..e758f8d67 100644
--- a/ApiDemos/kotlin/app/src/v3/java/com/example/kotlindemos/polyline/PolylineCapControlFragment.kt
+++ b/ApiDemos/project/kotlin-app/src/v3/java/com/example/kotlindemos/polyline/PolylineCapControlFragment.kt
@@ -39,23 +39,23 @@ class PolylineCapControlFragment : PolylineControlFragment(), OnCheckedChangeLis
private lateinit var endCapRadioGroup: RadioGroup
init {
- radioIdToStartCap[R.id.start_cap_radio_butt] = ButtCap()
- radioIdToStartCap[R.id.start_cap_radio_square] = SquareCap()
- radioIdToStartCap[R.id.start_cap_radio_round] = RoundCap()
- radioIdToStartCap[R.id.start_cap_radio_custom_chevron] = CustomCap(BitmapDescriptorFactory.fromResource(R.drawable.chevron), CHEVRON_REF_WIDTH)
- radioIdToStartCap[R.id.start_cap_radio_custom_ook] = CustomCap(BitmapDescriptorFactory.fromResource(R.drawable.ook), OOK_REF_WIDTH)
- radioIdToEndCap[R.id.end_cap_radio_butt] = ButtCap()
- radioIdToEndCap[R.id.end_cap_radio_square] = SquareCap()
- radioIdToEndCap[R.id.end_cap_radio_round] = RoundCap()
- radioIdToEndCap[R.id.end_cap_radio_custom_chevron] = CustomCap(BitmapDescriptorFactory.fromResource(R.drawable.chevron),
+ radioIdToStartCap[com.example.common_ui.R.id.start_cap_radio_butt] = ButtCap()
+ radioIdToStartCap[com.example.common_ui.R.id.start_cap_radio_square] = SquareCap()
+ radioIdToStartCap[com.example.common_ui.R.id.start_cap_radio_round] = RoundCap()
+ radioIdToStartCap[com.example.common_ui.R.id.start_cap_radio_custom_chevron] = CustomCap(BitmapDescriptorFactory.fromResource(com.example.common_ui.R.drawable.chevron), CHEVRON_REF_WIDTH)
+ radioIdToStartCap[com.example.common_ui.R.id.start_cap_radio_custom_ook] = CustomCap(BitmapDescriptorFactory.fromResource(com.example.common_ui.R.drawable.ook), OOK_REF_WIDTH)
+ radioIdToEndCap[com.example.common_ui.R.id.end_cap_radio_butt] = ButtCap()
+ radioIdToEndCap[com.example.common_ui.R.id.end_cap_radio_square] = SquareCap()
+ radioIdToEndCap[com.example.common_ui.R.id.end_cap_radio_round] = RoundCap()
+ radioIdToEndCap[com.example.common_ui.R.id.end_cap_radio_custom_chevron] = CustomCap(BitmapDescriptorFactory.fromResource(com.example.common_ui.R.drawable.chevron),
CHEVRON_REF_WIDTH)
- radioIdToEndCap[R.id.end_cap_radio_custom_ook] = CustomCap(BitmapDescriptorFactory.fromResource(R.drawable.ook), OOK_REF_WIDTH)
+ radioIdToEndCap[com.example.common_ui.R.id.end_cap_radio_custom_ook] = CustomCap(BitmapDescriptorFactory.fromResource(com.example.common_ui.R.drawable.ook), OOK_REF_WIDTH)
}
override fun onCreateView(inflater: LayoutInflater, container: ViewGroup?, bundle: Bundle?): View {
- val view: View = inflater.inflate(R.layout.polyline_cap_control_fragment, container, false)
- startCapRadioGroup = view.findViewById(R.id.start_cap_radio)
- endCapRadioGroup = view.findViewById(R.id.end_cap_radio)
+ val view: View = inflater.inflate(com.example.common_ui.R.layout.polyline_cap_control_fragment, container, false)
+ startCapRadioGroup = view.findViewById(com.example.common_ui.R.id.start_cap_radio)
+ endCapRadioGroup = view.findViewById(com.example.common_ui.R.id.end_cap_radio)
startCapRadioGroup.setOnCheckedChangeListener(this)
endCapRadioGroup.setOnCheckedChangeListener(this)
return view
@@ -66,12 +66,12 @@ class PolylineCapControlFragment : PolylineControlFragment(), OnCheckedChangeLis
return
}
val groupId = group.getId()
- if (groupId == R.id.start_cap_radio) {
+ if (groupId == com.example.common_ui.R.id.start_cap_radio) {
val startCap = radioIdToStartCap[checkedId]
startCap?.let {
polyline?.setStartCap(it)
}
- } else if (groupId == R.id.end_cap_radio) {
+ } else if (groupId == com.example.common_ui.R.id.end_cap_radio) {
val endCap = radioIdToEndCap[checkedId]
endCap?.let {
polyline?.setEndCap(it)
@@ -96,17 +96,17 @@ class PolylineCapControlFragment : PolylineControlFragment(), OnCheckedChangeLis
}
when (val startCap = polyline?.startCap) {
is ButtCap -> {
- startCapRadioGroup.check(R.id.start_cap_radio_butt)
+ startCapRadioGroup.check(com.example.common_ui.R.id.start_cap_radio_butt)
}
is SquareCap -> {
- startCapRadioGroup.check(R.id.start_cap_radio_square)
+ startCapRadioGroup.check(com.example.common_ui.R.id.start_cap_radio_square)
}
is RoundCap -> {
- startCapRadioGroup.check(R.id.start_cap_radio_round)
+ startCapRadioGroup.check(com.example.common_ui.R.id.start_cap_radio_round)
}
is CustomCap -> {
startCapRadioGroup.check(
- if (isOok(startCap)) R.id.start_cap_radio_custom_ook else R.id.start_cap_radio_custom_chevron)
+ if (isOok(startCap)) com.example.common_ui.R.id.start_cap_radio_custom_ook else com.example.common_ui.R.id.start_cap_radio_custom_chevron)
}
else -> {
startCapRadioGroup.clearCheck()
@@ -117,17 +117,17 @@ class PolylineCapControlFragment : PolylineControlFragment(), OnCheckedChangeLis
}
when (val endCap = polyline?.endCap) {
is ButtCap -> {
- endCapRadioGroup.check(R.id.end_cap_radio_butt)
+ endCapRadioGroup.check(com.example.common_ui.R.id.end_cap_radio_butt)
}
is SquareCap -> {
- endCapRadioGroup.check(R.id.end_cap_radio_square)
+ endCapRadioGroup.check(com.example.common_ui.R.id.end_cap_radio_square)
}
is RoundCap -> {
- endCapRadioGroup.check(R.id.end_cap_radio_round)
+ endCapRadioGroup.check(com.example.common_ui.R.id.end_cap_radio_round)
}
is CustomCap -> {
endCapRadioGroup.check(
- if (isOok(endCap)) R.id.end_cap_radio_custom_ook else R.id.end_cap_radio_custom_chevron)
+ if (isOok(endCap)) com.example.common_ui.R.id.end_cap_radio_custom_ook else com.example.common_ui.R.id.end_cap_radio_custom_chevron)
}
else -> {
endCapRadioGroup.clearCheck()
diff --git a/ApiDemos/kotlin/app/src/v3/java/com/example/kotlindemos/polyline/PolylineColorControlFragment.kt b/ApiDemos/project/kotlin-app/src/v3/java/com/example/kotlindemos/polyline/PolylineColorControlFragment.kt
similarity index 89%
rename from ApiDemos/kotlin/app/src/v3/java/com/example/kotlindemos/polyline/PolylineColorControlFragment.kt
rename to ApiDemos/project/kotlin-app/src/v3/java/com/example/kotlindemos/polyline/PolylineColorControlFragment.kt
index 82ace9c36..6fa67b15b 100644
--- a/ApiDemos/kotlin/app/src/v3/java/com/example/kotlindemos/polyline/PolylineColorControlFragment.kt
+++ b/ApiDemos/project/kotlin-app/src/v3/java/com/example/kotlindemos/polyline/PolylineColorControlFragment.kt
@@ -32,14 +32,14 @@ class PolylineColorControlFragment : PolylineControlFragment(), OnSeekBarChangeL
private lateinit var argbTextView: TextView
override fun onCreateView(inflater: LayoutInflater, container: ViewGroup?, bundle: Bundle?): View {
- val view: View = inflater.inflate(R.layout.polyline_color_control_fragment, container, false)
- alphaBar = view.findViewById(R.id.alphaSeekBar)
+ val view: View = inflater.inflate(com.example.common_ui.R.layout.polyline_color_control_fragment, container, false)
+ alphaBar = view.findViewById(com.example.common_ui.R.id.alphaSeekBar)
alphaBar.max = ALPHA_MAX
alphaBar.setOnSeekBarChangeListener(this)
- hueBar = view.findViewById(R.id.hueSeekBar)
+ hueBar = view.findViewById(com.example.common_ui.R.id.hueSeekBar)
hueBar.max = HUE_MAX
hueBar.setOnSeekBarChangeListener(this)
- argbTextView = view.findViewById(R.id.argbTextView) as TextView
+ argbTextView = view.findViewById(com.example.common_ui.R.id.argbTextView) as TextView
return view
}
diff --git a/ApiDemos/kotlin/app/src/v3/java/com/example/kotlindemos/polyline/PolylineControlFragment.kt b/ApiDemos/project/kotlin-app/src/v3/java/com/example/kotlindemos/polyline/PolylineControlFragment.kt
similarity index 100%
rename from ApiDemos/kotlin/app/src/v3/java/com/example/kotlindemos/polyline/PolylineControlFragment.kt
rename to ApiDemos/project/kotlin-app/src/v3/java/com/example/kotlindemos/polyline/PolylineControlFragment.kt
diff --git a/ApiDemos/kotlin/app/src/v3/java/com/example/kotlindemos/polyline/PolylineControlFragmentPagerAdapter.kt b/ApiDemos/project/kotlin-app/src/v3/java/com/example/kotlindemos/polyline/PolylineControlFragmentPagerAdapter.kt
similarity index 100%
rename from ApiDemos/kotlin/app/src/v3/java/com/example/kotlindemos/polyline/PolylineControlFragmentPagerAdapter.kt
rename to ApiDemos/project/kotlin-app/src/v3/java/com/example/kotlindemos/polyline/PolylineControlFragmentPagerAdapter.kt
diff --git a/ApiDemos/kotlin/app/src/v3/java/com/example/kotlindemos/polyline/PolylineDemoActivity.kt b/ApiDemos/project/kotlin-app/src/v3/java/com/example/kotlindemos/polyline/PolylineDemoActivity.kt
similarity index 92%
rename from ApiDemos/kotlin/app/src/v3/java/com/example/kotlindemos/polyline/PolylineDemoActivity.kt
rename to ApiDemos/project/kotlin-app/src/v3/java/com/example/kotlindemos/polyline/PolylineDemoActivity.kt
index 99839c669..fdf856f09 100644
--- a/ApiDemos/kotlin/app/src/v3/java/com/example/kotlindemos/polyline/PolylineDemoActivity.kt
+++ b/ApiDemos/project/kotlin-app/src/v3/java/com/example/kotlindemos/polyline/PolylineDemoActivity.kt
@@ -54,19 +54,19 @@ class PolylineDemoActivity : AppCompatActivity(), OnMapReadyCallback, OnPageChan
override fun onCreate(savedInstanceState: Bundle?) {
super.onCreate(savedInstanceState)
- setContentView(R.layout.multicolor_polyline_demo)
+ setContentView(com.example.common_ui.R.layout.multicolor_polyline_demo)
pagerAdapter = PolylineControlFragmentPagerAdapter(
supportFragmentManager,
/* isLiteMode= */false
)
- pager = findViewById(R.id.pager)
+ pager = findViewById(com.example.common_ui.R.id.pager)
pager.adapter = pagerAdapter
// onPageSelected(0) isn't invoked once views are ready, so post a Runnable to
// refreshControlPanel() for the first time instead...
pager.post { refreshControlPanel() }
- polylineRadio = findViewById(R.id.polyline_radio)
- val mapFragment: SupportMapFragment = supportFragmentManager.findFragmentById(R.id.map) as SupportMapFragment
+ polylineRadio = findViewById(com.example.common_ui.R.id.polyline_radio)
+ val mapFragment: SupportMapFragment = supportFragmentManager.findFragmentById(com.example.common_ui.R.id.map) as SupportMapFragment
mapFragment.getMapAsync(this)
}
@@ -122,7 +122,7 @@ class PolylineDemoActivity : AppCompatActivity(), OnMapReadyCallback, OnPageChan
.clickable(true))
map.moveCamera(CameraUpdateFactory.newLatLng(SYDNEY))
selectedPolyline = australiaPolyline
- polylineRadio.check(R.id.polyline_radio_australia)
+ polylineRadio.check(com.example.common_ui.R.id.polyline_radio_australia)
pager.addOnPageChangeListener(this)
polylineRadio.setOnCheckedChangeListener(this)
map.setOnPolylineClickListener(this)
@@ -139,16 +139,16 @@ class PolylineDemoActivity : AppCompatActivity(), OnMapReadyCallback, OnPageChan
override fun onCheckedChanged(group: RadioGroup?, checkedId: Int) {
when (checkedId) {
- R.id.polyline_radio_australia -> {
+ com.example.common_ui.R.id.polyline_radio_australia -> {
selectedPolyline = australiaPolyline
}
- R.id.polyline_radio_sydney -> {
+ com.example.common_ui.R.id.polyline_radio_sydney -> {
selectedPolyline = sydneyPolyline
}
- R.id.polyline_radio_melbourne -> {
+ com.example.common_ui.R.id.polyline_radio_melbourne -> {
selectedPolyline = melbournePolyline
}
- R.id.polyline_radio_world -> {
+ com.example.common_ui.R.id.polyline_radio_world -> {
selectedPolyline = worldPolyline
}
}
diff --git a/ApiDemos/kotlin/app/src/v3/java/com/example/kotlindemos/polyline/PolylineJointControlFragment.kt b/ApiDemos/project/kotlin-app/src/v3/java/com/example/kotlindemos/polyline/PolylineJointControlFragment.kt
similarity index 73%
rename from ApiDemos/kotlin/app/src/v3/java/com/example/kotlindemos/polyline/PolylineJointControlFragment.kt
rename to ApiDemos/project/kotlin-app/src/v3/java/com/example/kotlindemos/polyline/PolylineJointControlFragment.kt
index c9bf64bc7..90d95f3a4 100644
--- a/ApiDemos/kotlin/app/src/v3/java/com/example/kotlindemos/polyline/PolylineJointControlFragment.kt
+++ b/ApiDemos/project/kotlin-app/src/v3/java/com/example/kotlindemos/polyline/PolylineJointControlFragment.kt
@@ -32,8 +32,8 @@ class PolylineJointControlFragment : PolylineControlFragment(), OnCheckedChangeL
private lateinit var jointRadioGroup: RadioGroup
override fun onCreateView(inflater: LayoutInflater, container: ViewGroup?, bundle: Bundle?): View {
- val view = inflater.inflate(R.layout.polyline_joint_control_fragment, container, false)
- jointRadioGroup = view.findViewById(R.id.joint_radio)
+ val view = inflater.inflate(com.example.common_ui.R.layout.polyline_joint_control_fragment, container, false)
+ jointRadioGroup = view.findViewById(com.example.common_ui.R.id.joint_radio)
jointRadioGroup.setOnCheckedChangeListener(this)
return view
}
@@ -60,16 +60,16 @@ class PolylineJointControlFragment : PolylineControlFragment(), OnCheckedChangeL
jointRadioGroup.getChildAt(i).isEnabled = true
}
when (polyline?.jointType) {
- JointType.DEFAULT -> jointRadioGroup.check(R.id.joint_radio_default)
- JointType.BEVEL -> jointRadioGroup.check(R.id.joint_radio_bevel)
- JointType.ROUND -> jointRadioGroup.check(R.id.joint_radio_round)
+ JointType.DEFAULT -> jointRadioGroup.check(com.example.common_ui.R.id.joint_radio_default)
+ JointType.BEVEL -> jointRadioGroup.check(com.example.common_ui.R.id.joint_radio_bevel)
+ JointType.ROUND -> jointRadioGroup.check(com.example.common_ui.R.id.joint_radio_round)
else -> jointRadioGroup.clearCheck()
}
}
init {
- radioIdToJointType[R.id.joint_radio_default] = JointType.DEFAULT
- radioIdToJointType[R.id.joint_radio_bevel] = JointType.BEVEL
- radioIdToJointType[R.id.joint_radio_round] = JointType.ROUND
+ radioIdToJointType[com.example.common_ui.R.id.joint_radio_default] = JointType.DEFAULT
+ radioIdToJointType[com.example.common_ui.R.id.joint_radio_bevel] = JointType.BEVEL
+ radioIdToJointType[com.example.common_ui.R.id.joint_radio_round] = JointType.ROUND
}
}
\ No newline at end of file
diff --git a/ApiDemos/kotlin/app/src/v3/java/com/example/kotlindemos/polyline/PolylineOtherOptionsControlFragment.kt b/ApiDemos/project/kotlin-app/src/v3/java/com/example/kotlindemos/polyline/PolylineOtherOptionsControlFragment.kt
similarity index 84%
rename from ApiDemos/kotlin/app/src/v3/java/com/example/kotlindemos/polyline/PolylineOtherOptionsControlFragment.kt
rename to ApiDemos/project/kotlin-app/src/v3/java/com/example/kotlindemos/polyline/PolylineOtherOptionsControlFragment.kt
index 89b3346e8..6e4928556 100644
--- a/ApiDemos/kotlin/app/src/v3/java/com/example/kotlindemos/polyline/PolylineOtherOptionsControlFragment.kt
+++ b/ApiDemos/project/kotlin-app/src/v3/java/com/example/kotlindemos/polyline/PolylineOtherOptionsControlFragment.kt
@@ -32,12 +32,12 @@ class PolylineOtherOptionsControlFragment : PolylineControlFragment(), View.OnCl
private lateinit var visibilityCheckBox: CheckBox
override fun onCreateView(inflater: LayoutInflater, container: ViewGroup?, bundle: Bundle?): View {
- val view = inflater.inflate(R.layout.polyline_other_options_control_fragment, container, false)
- clickabilityCheckBox = view.findViewById(R.id.clickabilityCheckBox)
+ val view = inflater.inflate(com.example.common_ui.R.layout.polyline_other_options_control_fragment, container, false)
+ clickabilityCheckBox = view.findViewById(com.example.common_ui.R.id.clickabilityCheckBox)
clickabilityCheckBox.setOnClickListener(this)
- geodesicCheckBox = view.findViewById(R.id.geodesicCheckBox)
+ geodesicCheckBox = view.findViewById(com.example.common_ui.R.id.geodesicCheckBox)
geodesicCheckBox.setOnClickListener(this)
- visibilityCheckBox = view.findViewById(R.id.visibilityCheckBox)
+ visibilityCheckBox = view.findViewById(com.example.common_ui.R.id.visibilityCheckBox)
visibilityCheckBox.setOnClickListener(this)
return view
}
diff --git a/ApiDemos/kotlin/app/src/v3/java/com/example/kotlindemos/polyline/PolylinePatternControlFragment.kt b/ApiDemos/project/kotlin-app/src/v3/java/com/example/kotlindemos/polyline/PolylinePatternControlFragment.kt
similarity index 84%
rename from ApiDemos/kotlin/app/src/v3/java/com/example/kotlindemos/polyline/PolylinePatternControlFragment.kt
rename to ApiDemos/project/kotlin-app/src/v3/java/com/example/kotlindemos/polyline/PolylinePatternControlFragment.kt
index 30bc0986e..61e252930 100644
--- a/ApiDemos/kotlin/app/src/v3/java/com/example/kotlindemos/polyline/PolylinePatternControlFragment.kt
+++ b/ApiDemos/project/kotlin-app/src/v3/java/com/example/kotlindemos/polyline/PolylinePatternControlFragment.kt
@@ -39,12 +39,12 @@ class PolylinePatternControlFragment : PolylineControlFragment(), OnClickListene
private lateinit var patternTextView: TextView
override fun onCreateView(inflater: LayoutInflater, container: ViewGroup?, bundle: Bundle?): View {
- val view = inflater.inflate(R.layout.polyline_pattern_control_fragment, container, false)
- patternTextView = view.findViewById(R.id.patternTextView)
- patternSolidBtn = view.findViewById(R.id.patternSolidBtn)
- patternDottedBtn = view.findViewById(R.id.patternDottedBtn)
- patternDashedBtn = view.findViewById(R.id.patternDashedBtn)
- patternMixedBtn = view.findViewById(R.id.patternMixedBtn)
+ val view = inflater.inflate(com.example.common_ui.R.layout.polyline_pattern_control_fragment, container, false)
+ patternTextView = view.findViewById(com.example.common_ui.R.id.patternTextView)
+ patternSolidBtn = view.findViewById(com.example.common_ui.R.id.patternSolidBtn)
+ patternDottedBtn = view.findViewById(com.example.common_ui.R.id.patternDottedBtn)
+ patternDashedBtn = view.findViewById(com.example.common_ui.R.id.patternDashedBtn)
+ patternMixedBtn = view.findViewById(com.example.common_ui.R.id.patternMixedBtn)
patternSolidBtn.setOnClickListener(this)
patternDottedBtn.setOnClickListener(this)
patternDashedBtn.setOnClickListener(this)
@@ -59,18 +59,18 @@ class PolylinePatternControlFragment : PolylineControlFragment(), OnClickListene
val id: Int = view.id
val pattern: List?
when (id) {
- R.id.patternSolidBtn -> {
+ com.example.common_ui.R.id.patternSolidBtn -> {
pattern = null
}
- R.id.patternDottedBtn -> {
+ com.example.common_ui.R.id.patternDottedBtn -> {
pattern = listOf(Dot(), Gap(RANDOM.nextFloat() * MAX_GAP_LENGTH))
}
- R.id.patternDashedBtn -> {
+ com.example.common_ui.R.id.patternDashedBtn -> {
pattern = listOf(
Dash(RANDOM.nextFloat() * MAX_DASH_LENGTH),
Gap(RANDOM.nextFloat() * MAX_GAP_LENGTH))
}
- R.id.patternMixedBtn -> {
+ com.example.common_ui.R.id.patternMixedBtn -> {
val size: Int = 2 * (1 + RANDOM.nextInt(MAX_PATTERN_SIZE / 2))
pattern = ArrayList(size)
for (i in 0 until size) {
diff --git a/ApiDemos/kotlin/app/src/v3/java/com/example/kotlindemos/polyline/PolylinePointsControlFragment.kt b/ApiDemos/project/kotlin-app/src/v3/java/com/example/kotlindemos/polyline/PolylinePointsControlFragment.kt
similarity index 80%
rename from ApiDemos/kotlin/app/src/v3/java/com/example/kotlindemos/polyline/PolylinePointsControlFragment.kt
rename to ApiDemos/project/kotlin-app/src/v3/java/com/example/kotlindemos/polyline/PolylinePointsControlFragment.kt
index 833ac8b60..e4319cdd6 100644
--- a/ApiDemos/kotlin/app/src/v3/java/com/example/kotlindemos/polyline/PolylinePointsControlFragment.kt
+++ b/ApiDemos/project/kotlin-app/src/v3/java/com/example/kotlindemos/polyline/PolylinePointsControlFragment.kt
@@ -52,16 +52,16 @@ class PolylinePointsControlFragment : PolylineControlFragment(), View.OnTouchLis
})
override fun onCreateView(inflater: LayoutInflater, container: ViewGroup?, bundle: Bundle?): View {
- val view: View = inflater.inflate(R.layout.polyline_points_control_fragment, container, false)
- (view.findViewById(R.id.move_up) as View).setOnTouchListener(this)
- (view.findViewById(R.id.move_down) as View).setOnTouchListener(this)
- (view.findViewById(R.id.move_left) as View).setOnTouchListener(this)
- (view.findViewById(R.id.move_right) as View).setOnTouchListener(this)
- val fpsEditText: EditText = view.findViewById(R.id.fps_edittext) as EditText
+ val view: View = inflater.inflate(com.example.common_ui.R.layout.polyline_points_control_fragment, container, false)
+ (view.findViewById(com.example.common_ui.R.id.move_up) as View).setOnTouchListener(this)
+ (view.findViewById(com.example.common_ui.R.id.move_down) as View).setOnTouchListener(this)
+ (view.findViewById(com.example.common_ui.R.id.move_left) as View).setOnTouchListener(this)
+ (view.findViewById(com.example.common_ui.R.id.move_right) as View).setOnTouchListener(this)
+ val fpsEditText: EditText = view.findViewById(com.example.common_ui.R.id.fps_edittext) as EditText
fpsEditText.setOnEditorActionListener(this)
fpsEditText.onFocusChangeListener = this
setFrameRate(fpsEditText)
- val stepEditText: EditText = view.findViewById(R.id.step_edittext) as EditText
+ val stepEditText: EditText = view.findViewById(com.example.common_ui.R.id.step_edittext) as EditText
stepEditText.setOnEditorActionListener(this)
stepEditText.onFocusChangeListener = this
setStepSize(stepEditText)
@@ -87,16 +87,16 @@ class PolylinePointsControlFragment : PolylineControlFragment(), View.OnTouchLis
private fun setMoveDirection(buttonId: Int) {
moveDirection = when (buttonId) {
- R.id.move_up -> {
+ com.example.common_ui.R.id.move_up -> {
MoveDirection.UP
}
- R.id.move_down -> {
+ com.example.common_ui.R.id.move_down -> {
MoveDirection.DOWN
}
- R.id.move_left -> {
+ com.example.common_ui.R.id.move_left -> {
MoveDirection.LEFT
}
- R.id.move_right -> {
+ com.example.common_ui.R.id.move_right -> {
MoveDirection.RIGHT
}
else -> {
@@ -111,9 +111,9 @@ class PolylinePointsControlFragment : PolylineControlFragment(), View.OnTouchLis
return false
}
val textViewId: Int = textView.getId()
- if (textViewId == R.id.fps_edittext) {
+ if (textViewId == com.example.common_ui.R.id.fps_edittext) {
setFrameRate(textView)
- } else if (textViewId == R.id.step_edittext) {
+ } else if (textViewId == com.example.common_ui.R.id.step_edittext) {
setStepSize(textView)
}
return false
@@ -124,9 +124,9 @@ class PolylinePointsControlFragment : PolylineControlFragment(), View.OnTouchLis
return
}
val viewId: Int = view.getId()
- if (viewId == R.id.fps_edittext) {
+ if (viewId == com.example.common_ui.R.id.fps_edittext) {
setFrameRate(view as TextView)
- } else if (viewId == R.id.step_edittext) {
+ } else if (viewId == com.example.common_ui.R.id.step_edittext) {
setStepSize(view as TextView)
}
}
diff --git a/ApiDemos/kotlin/app/src/v3/java/com/example/kotlindemos/polyline/PolylineSpansControlFragment.kt b/ApiDemos/project/kotlin-app/src/v3/java/com/example/kotlindemos/polyline/PolylineSpansControlFragment.kt
similarity index 91%
rename from ApiDemos/kotlin/app/src/v3/java/com/example/kotlindemos/polyline/PolylineSpansControlFragment.kt
rename to ApiDemos/project/kotlin-app/src/v3/java/com/example/kotlindemos/polyline/PolylineSpansControlFragment.kt
index a98574e95..d1c827a09 100644
--- a/ApiDemos/kotlin/app/src/v3/java/com/example/kotlindemos/polyline/PolylineSpansControlFragment.kt
+++ b/ApiDemos/project/kotlin-app/src/v3/java/com/example/kotlindemos/polyline/PolylineSpansControlFragment.kt
@@ -56,19 +56,19 @@ class PolylineSpansControlFragment : PolylineControlFragment(), SeekBar.OnSeekBa
}
override fun onCreateView(inflater: LayoutInflater, container: ViewGroup?, bundle: Bundle?): View {
- val view = inflater.inflate(R.layout.polyline_spans_control_fragment, container, false)
- spanCountBar = view.findViewById(R.id.spansSeekBar)
+ val view = inflater.inflate(com.example.common_ui.R.layout.polyline_spans_control_fragment, container, false)
+ spanCountBar = view.findViewById(com.example.common_ui.R.id.spansSeekBar)
spanCountBar.max = SPAN_COUNT_MAX
spanCountBar.setOnSeekBarChangeListener(this)
- spanCountTextView = view.findViewById(R.id.spansTextView)
- gradientToggle = view.findViewById(R.id.gradientToggle)
+ spanCountTextView = view.findViewById(com.example.common_ui.R.id.spansTextView)
+ gradientToggle = view.findViewById(com.example.common_ui.R.id.gradientToggle)
gradientToggle.setOnCheckedChangeListener { _, isChecked ->
polyline?.let {
polylineGradientStates[it] = isChecked
}
updateSpans()
}
- polylineStampStyleRadioGroup = view.findViewById(R.id.polyline_stamp_style_radio_group)
+ polylineStampStyleRadioGroup = view.findViewById(com.example.common_ui.R.id.polyline_stamp_style_radio_group)
polylineStampStyleRadioGroup.visibility = View.INVISIBLE
if (isLiteMode) {
gradientToggle.visibility = View.INVISIBLE
@@ -98,9 +98,9 @@ class PolylineSpansControlFragment : PolylineControlFragment(), SeekBar.OnSeekBa
val color = if (i % 2 == 0) polyline.color else invertedPolylineColor
val segmentCount = (polyline.points.size - 1).toDouble() / count
val strokeStyleBuilder: StrokeStyle.Builder = if (gradientToggle.isChecked) StrokeStyle.gradientBuilder(polyline.color, invertedPolylineColor) else StrokeStyle.colorBuilder(color)
- if (selectedStampStyleId == R.id.polyline_texture_style) {
+ if (selectedStampStyleId == com.example.common_ui.R.id.polyline_texture_style) {
strokeStyleBuilder.stamp(
- TextureStyle.newBuilder(BitmapDescriptorFactory.fromResource(R.drawable.ook))
+ TextureStyle.newBuilder(BitmapDescriptorFactory.fromResource(com.example.common_ui.R.drawable.ook))
.build())
}
newSpans.add(StyleSpan(strokeStyleBuilder.build(), segmentCount))
diff --git a/ApiDemos/kotlin/app/src/v3/java/com/example/kotlindemos/polyline/PolylineWidthControlFragment.kt b/ApiDemos/project/kotlin-app/src/v3/java/com/example/kotlindemos/polyline/PolylineWidthControlFragment.kt
similarity index 89%
rename from ApiDemos/kotlin/app/src/v3/java/com/example/kotlindemos/polyline/PolylineWidthControlFragment.kt
rename to ApiDemos/project/kotlin-app/src/v3/java/com/example/kotlindemos/polyline/PolylineWidthControlFragment.kt
index 6edf59e4d..ea8bc30b2 100644
--- a/ApiDemos/kotlin/app/src/v3/java/com/example/kotlindemos/polyline/PolylineWidthControlFragment.kt
+++ b/ApiDemos/project/kotlin-app/src/v3/java/com/example/kotlindemos/polyline/PolylineWidthControlFragment.kt
@@ -31,11 +31,11 @@ class PolylineWidthControlFragment : PolylineControlFragment(), SeekBar.OnSeekBa
private lateinit var widthTextView: TextView
override fun onCreateView(inflater: LayoutInflater, container: ViewGroup?, bundle: Bundle?): View {
- val view = inflater.inflate(R.layout.polyline_width_control_fragment, container, false)
- widthBar = view.findViewById(R.id.widthSeekBar)
+ val view = inflater.inflate(com.example.common_ui.R.layout.polyline_width_control_fragment, container, false)
+ widthBar = view.findViewById(com.example.common_ui.R.id.widthSeekBar)
widthBar.max = WIDTH_MAX
widthBar.setOnSeekBarChangeListener(this)
- widthTextView = view.findViewById(R.id.widthTextView)
+ widthTextView = view.findViewById(com.example.common_ui.R.id.widthTextView)
return view
}
diff --git a/ApiDemos/kotlin/app/src/v3/res/layout/activity_basic_map_demo.xml b/ApiDemos/project/kotlin-app/src/v3/res/layout/activity_basic_map_demo.xml
similarity index 100%
rename from ApiDemos/kotlin/app/src/v3/res/layout/activity_basic_map_demo.xml
rename to ApiDemos/project/kotlin-app/src/v3/res/layout/activity_basic_map_demo.xml
diff --git a/ApiDemos/kotlin/app/src/v3/res/layout/activity_circle_demo.xml b/ApiDemos/project/kotlin-app/src/v3/res/layout/activity_circle_demo.xml
similarity index 100%
rename from ApiDemos/kotlin/app/src/v3/res/layout/activity_circle_demo.xml
rename to ApiDemos/project/kotlin-app/src/v3/res/layout/activity_circle_demo.xml
diff --git a/ApiDemos/kotlin/app/src/main/res/layout/activity_lite_list_demo.xml b/ApiDemos/project/kotlin-app/src/v3/res/layout/activity_lite_list_demo.xml
similarity index 100%
rename from ApiDemos/kotlin/app/src/main/res/layout/activity_lite_list_demo.xml
rename to ApiDemos/project/kotlin-app/src/v3/res/layout/activity_lite_list_demo.xml
diff --git a/ApiDemos/kotlin/app/src/v3/res/layout/activity_main.xml b/ApiDemos/project/kotlin-app/src/v3/res/layout/activity_main.xml
similarity index 100%
rename from ApiDemos/kotlin/app/src/v3/res/layout/activity_main.xml
rename to ApiDemos/project/kotlin-app/src/v3/res/layout/activity_main.xml
diff --git a/ApiDemos/kotlin/app/src/v3/res/layout/activity_marker_close_info_window_on_retap_demo.xml b/ApiDemos/project/kotlin-app/src/v3/res/layout/activity_marker_close_info_window_on_retap_demo.xml
similarity index 100%
rename from ApiDemos/kotlin/app/src/v3/res/layout/activity_marker_close_info_window_on_retap_demo.xml
rename to ApiDemos/project/kotlin-app/src/v3/res/layout/activity_marker_close_info_window_on_retap_demo.xml
diff --git a/ApiDemos/kotlin/app/src/v3/res/layout/activity_street_view_panorama_navigation_demo.xml b/ApiDemos/project/kotlin-app/src/v3/res/layout/activity_street_view_panorama_navigation_demo.xml
similarity index 100%
rename from ApiDemos/kotlin/app/src/v3/res/layout/activity_street_view_panorama_navigation_demo.xml
rename to ApiDemos/project/kotlin-app/src/v3/res/layout/activity_street_view_panorama_navigation_demo.xml
diff --git a/ApiDemos/kotlin/app/src/v3/res/layout/activity_ui_settings_demo.xml b/ApiDemos/project/kotlin-app/src/v3/res/layout/activity_ui_settings_demo.xml
similarity index 100%
rename from ApiDemos/kotlin/app/src/v3/res/layout/activity_ui_settings_demo.xml
rename to ApiDemos/project/kotlin-app/src/v3/res/layout/activity_ui_settings_demo.xml
diff --git a/ApiDemos/kotlin/app/src/v3/res/layout/camera_demo.xml b/ApiDemos/project/kotlin-app/src/v3/res/layout/camera_demo.xml
similarity index 100%
rename from ApiDemos/kotlin/app/src/v3/res/layout/camera_demo.xml
rename to ApiDemos/project/kotlin-app/src/v3/res/layout/camera_demo.xml
diff --git a/ApiDemos/kotlin/app/src/v3/res/layout/cloud_styling_basic_demo.xml b/ApiDemos/project/kotlin-app/src/v3/res/layout/cloud_styling_basic_demo.xml
similarity index 100%
rename from ApiDemos/kotlin/app/src/v3/res/layout/cloud_styling_basic_demo.xml
rename to ApiDemos/project/kotlin-app/src/v3/res/layout/cloud_styling_basic_demo.xml
diff --git a/ApiDemos/kotlin/app/src/main/res/layout/custom_info_contents.xml b/ApiDemos/project/kotlin-app/src/v3/res/layout/custom_info_contents.xml
similarity index 100%
rename from ApiDemos/kotlin/app/src/main/res/layout/custom_info_contents.xml
rename to ApiDemos/project/kotlin-app/src/v3/res/layout/custom_info_contents.xml
diff --git a/ApiDemos/kotlin/app/src/main/res/layout/custom_info_window.xml b/ApiDemos/project/kotlin-app/src/v3/res/layout/custom_info_window.xml
similarity index 100%
rename from ApiDemos/kotlin/app/src/main/res/layout/custom_info_window.xml
rename to ApiDemos/project/kotlin-app/src/v3/res/layout/custom_info_window.xml
diff --git a/ApiDemos/kotlin/app/src/v3/res/layout/events_demo.xml b/ApiDemos/project/kotlin-app/src/v3/res/layout/events_demo.xml
similarity index 62%
rename from ApiDemos/kotlin/app/src/v3/res/layout/events_demo.xml
rename to ApiDemos/project/kotlin-app/src/v3/res/layout/events_demo.xml
index 85629c65b..e55d59988 100644
--- a/ApiDemos/kotlin/app/src/v3/res/layout/events_demo.xml
+++ b/ApiDemos/project/kotlin-app/src/v3/res/layout/events_demo.xml
@@ -1,17 +1,17 @@
-
-
+ android:layout_height="match_parent" />
diff --git a/ApiDemos/kotlin/app/src/v3/res/layout/marker_demo.xml b/ApiDemos/project/kotlin-app/src/v3/res/layout/marker_demo.xml
similarity index 100%
rename from ApiDemos/kotlin/app/src/v3/res/layout/marker_demo.xml
rename to ApiDemos/project/kotlin-app/src/v3/res/layout/marker_demo.xml
diff --git a/ApiDemos/kotlin/app/src/v3/res/layout/multicolor_polyline_demo.xml b/ApiDemos/project/kotlin-app/src/v3/res/layout/multicolor_polyline_demo.xml
similarity index 84%
rename from ApiDemos/kotlin/app/src/v3/res/layout/multicolor_polyline_demo.xml
rename to ApiDemos/project/kotlin-app/src/v3/res/layout/multicolor_polyline_demo.xml
index a76e17355..113f4bf45 100644
--- a/ApiDemos/kotlin/app/src/v3/res/layout/multicolor_polyline_demo.xml
+++ b/ApiDemos/project/kotlin-app/src/v3/res/layout/multicolor_polyline_demo.xml
@@ -1,18 +1,18 @@
+ Copyright 2025 Google LLC
+
+ Licensed under the Apache License, Version 2.0 (the "License");
+ you may not use this file except in compliance with the License.
+ You may obtain a copy of the License at
+
+ https://www.apache.org/licenses/LICENSE-2.0
+
+ Unless required by applicable law or agreed to in writing, software
+ distributed under the License is distributed on an "AS IS" BASIS,
+ WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ See the License for the specific language governing permissions and
+ limitations under the License.
+-->
diff --git a/ApiDemos/project/kotlin-app/src/v3/res/layout/my_location_demo.xml b/ApiDemos/project/kotlin-app/src/v3/res/layout/my_location_demo.xml
new file mode 100644
index 000000000..712b4c361
--- /dev/null
+++ b/ApiDemos/project/kotlin-app/src/v3/res/layout/my_location_demo.xml
@@ -0,0 +1,27 @@
+
+
+
+
+
+
diff --git a/ApiDemos/kotlin/app/src/v3/res/layout/polygon_demo.xml b/ApiDemos/project/kotlin-app/src/v3/res/layout/polygon_demo.xml
similarity index 100%
rename from ApiDemos/kotlin/app/src/v3/res/layout/polygon_demo.xml
rename to ApiDemos/project/kotlin-app/src/v3/res/layout/polygon_demo.xml
diff --git a/ApiDemos/java/app/src/v3/res/layout/polyline_cap_control_fragment.xml b/ApiDemos/project/kotlin-app/src/v3/res/layout/polyline_cap_control_fragment.xml
similarity index 88%
rename from ApiDemos/java/app/src/v3/res/layout/polyline_cap_control_fragment.xml
rename to ApiDemos/project/kotlin-app/src/v3/res/layout/polyline_cap_control_fragment.xml
index 6c19db8df..b7d10c078 100644
--- a/ApiDemos/java/app/src/v3/res/layout/polyline_cap_control_fragment.xml
+++ b/ApiDemos/project/kotlin-app/src/v3/res/layout/polyline_cap_control_fragment.xml
@@ -1,18 +1,18 @@
+ Copyright 2025 Google LLC
+
+ Licensed under the Apache License, Version 2.0 (the "License");
+ you may not use this file except in compliance with the License.
+ You may obtain a copy of the License at
+
+ https://www.apache.org/licenses/LICENSE-2.0
+
+ Unless required by applicable law or agreed to in writing, software
+ distributed under the License is distributed on an "AS IS" BASIS,
+ WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ See the License for the specific language governing permissions and
+ limitations under the License.
+-->
+ Copyright 2025 Google LLC
+
+ Licensed under the Apache License, Version 2.0 (the "License");
+ you may not use this file except in compliance with the License.
+ You may obtain a copy of the License at
+
+ https://www.apache.org/licenses/LICENSE-2.0
+
+ Unless required by applicable law or agreed to in writing, software
+ distributed under the License is distributed on an "AS IS" BASIS,
+ WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ See the License for the specific language governing permissions and
+ limitations under the License.
+-->
+-->
+ Copyright 2025 Google LLC
+
+ Licensed under the Apache License, Version 2.0 (the "License");
+ you may not use this file except in compliance with the License.
+ You may obtain a copy of the License at
+
+ https://www.apache.org/licenses/LICENSE-2.0
+
+ Unless required by applicable law or agreed to in writing, software
+ distributed under the License is distributed on an "AS IS" BASIS,
+ WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ See the License for the specific language governing permissions and
+ limitations under the License.
+-->
+ Copyright 2025 Google LLC
+
+ Licensed under the Apache License, Version 2.0 (the "License");
+ you may not use this file except in compliance with the License.
+ You may obtain a copy of the License at
+
+ https://www.apache.org/licenses/LICENSE-2.0
+
+ Unless required by applicable law or agreed to in writing, software
+ distributed under the License is distributed on an "AS IS" BASIS,
+ WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ See the License for the specific language governing permissions and
+ limitations under the License.
+-->
+ Copyright 2025 Google LLC
+
+ Licensed under the Apache License, Version 2.0 (the "License");
+ you may not use this file except in compliance with the License.
+ You may obtain a copy of the License at
+
+ https://www.apache.org/licenses/LICENSE-2.0
+
+ Unless required by applicable law or agreed to in writing, software
+ distributed under the License is distributed on an "AS IS" BASIS,
+ WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ See the License for the specific language governing permissions and
+ limitations under the License.
+-->
+ Copyright 2025 Google LLC
+
+ Licensed under the Apache License, Version 2.0 (the "License");
+ you may not use this file except in compliance with the License.
+ You may obtain a copy of the License at
+
+ https://www.apache.org/licenses/LICENSE-2.0
+
+ Unless required by applicable law or agreed to in writing, software
+ distributed under the License is distributed on an "AS IS" BASIS,
+ WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ See the License for the specific language governing permissions and
+ limitations under the License.
+-->
+ Copyright 2025 Google LLC
+
+ Licensed under the Apache License, Version 2.0 (the "License");
+ you may not use this file except in compliance with the License.
+ You may obtain a copy of the License at
+
+ https://www.apache.org/licenses/LICENSE-2.0
+
+ Unless required by applicable law or agreed to in writing, software
+ distributed under the License is distributed on an "AS IS" BASIS,
+ WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ See the License for the specific language governing permissions and
+ limitations under the License.
+-->
+
diff --git a/ApiDemos/kotlin/app/src/v3/res/layout/split_street_view_panorama_and_map_demo.xml b/ApiDemos/project/kotlin-app/src/v3/res/layout/split_street_view_panorama_and_map_demo.xml
similarity index 67%
rename from ApiDemos/kotlin/app/src/v3/res/layout/split_street_view_panorama_and_map_demo.xml
rename to ApiDemos/project/kotlin-app/src/v3/res/layout/split_street_view_panorama_and_map_demo.xml
index 6d2226c28..4f9ea349f 100644
--- a/ApiDemos/kotlin/app/src/v3/res/layout/split_street_view_panorama_and_map_demo.xml
+++ b/ApiDemos/project/kotlin-app/src/v3/res/layout/split_street_view_panorama_and_map_demo.xml
@@ -1,17 +1,17 @@
+-->
+
-
-
-
-
-
\ No newline at end of file
+ class="com.google.android.libraries.maps.SupportStreetViewPanoramaFragment" />
+
diff --git a/ApiDemos/kotlin/app/src/v3/res/layout/street_view_panorama_events_demo.xml b/ApiDemos/project/kotlin-app/src/v3/res/layout/street_view_panorama_events_demo.xml
similarity index 70%
rename from ApiDemos/kotlin/app/src/v3/res/layout/street_view_panorama_events_demo.xml
rename to ApiDemos/project/kotlin-app/src/v3/res/layout/street_view_panorama_events_demo.xml
index ed2825f30..f8a9de842 100644
--- a/ApiDemos/kotlin/app/src/v3/res/layout/street_view_panorama_events_demo.xml
+++ b/ApiDemos/project/kotlin-app/src/v3/res/layout/street_view_panorama_events_demo.xml
@@ -1,17 +1,17 @@
-
+-->
-
-
+ class="com.google.android.libraries.maps.SupportMapFragment" />
diff --git a/ApiDemos/kotlin/app/src/v3/res/layout/tile_overlay_demo.xml b/ApiDemos/project/kotlin-app/src/v3/res/layout/tile_overlay_demo.xml
similarity index 70%
rename from ApiDemos/kotlin/app/src/v3/res/layout/tile_overlay_demo.xml
rename to ApiDemos/project/kotlin-app/src/v3/res/layout/tile_overlay_demo.xml
index 43ad79ff3..83ef11ec4 100755
--- a/ApiDemos/kotlin/app/src/v3/res/layout/tile_overlay_demo.xml
+++ b/ApiDemos/project/kotlin-app/src/v3/res/layout/tile_overlay_demo.xml
@@ -1,17 +1,17 @@
-
+
-
+
-
+
-
+
("clean") {
diff --git a/snippets/gradle/libs.versions.toml b/snippets/gradle/libs.versions.toml
index 1c0b82022..1d746ff8f 100644
--- a/snippets/gradle/libs.versions.toml
+++ b/snippets/gradle/libs.versions.toml
@@ -2,19 +2,21 @@
espressoCore = "3.6.1"
junit = "4.13.2"
junitVersion = "1.2.1"
-kotlin = "2.1.0"
-coreKtx = "1.15.0"
-appCompat = "1.7.0"
-composeFoundation = "1.7.6"
-composeMaterial = "1.7.6"
-mapsKtx = "5.1.1"
+kotlin = "2.2.0"
+coreKtx = "1.16.0"
+appCompat = "1.7.1"
+composeFoundation = "1.8.3"
+composeMaterial = "1.8.3"
+mapsKtx = "5.2.0"
material = "1.12.0"
-constraintLayout = "2.2.0"
-navigation = "2.8.5"
+constraintLayout = "2.2.1"
+navigation = "2.9.0"
rxlifecycleAndroidLifecycleKotlin = "4.0.2"
volley = "1.2.1"
-lifecycleRuntime = "2.8.7"
-places = "4.1.0"
+lifecycleRuntime = "2.9.1"
+places = "4.3.1"
+secretsGradlePlugin = "2.0.1"
+agp = "8.10.1"
[libraries]
espresso-core = { module = "androidx.test.espresso:espresso-core", version.ref = "espressoCore" }
@@ -34,4 +36,10 @@ navigation-ui-ktx = { group = "androidx.navigation", name = "navigation-ui-ktx",
rxlifecycle-android-lifecycle-kotlin = { module = "com.trello.rxlifecycle4:rxlifecycle-android-lifecycle-kotlin", version.ref = "rxlifecycleAndroidLifecycleKotlin" }
volley = { group = "com.android.volley", name = "volley", version.ref = "volley" }
lifecycle-runtime-ktx = { group = "androidx.lifecycle", name = "lifecycle-runtime-ktx", version.ref = "lifecycleRuntime" }
-places = { group = "com.google.android.libraries.places", name = "places", version.ref = "places" }
\ No newline at end of file
+places = { group = "com.google.android.libraries.places", name = "places", version.ref = "places" }
+secretsGradlePlugin = { module = "com.google.android.libraries.mapsplatform.secrets-gradle-plugin:secrets-gradle-plugin", version.ref = "secretsGradlePlugin" }
+
+[plugins]
+org-jetbrains-kotlin-android = { id = "org.jetbrains.kotlin.android", version.ref = "kotlin" }
+compose-compiler = { id = "org.jetbrains.kotlin.plugin.compose", version.ref = "kotlin" }
+android-application = { id = "com.android.application", version.ref = "agp" }
\ No newline at end of file
diff --git a/tutorials/java/CurrentPlaceDetailsOnMap/app/build.gradle.kts b/tutorials/java/CurrentPlaceDetailsOnMap/app/build.gradle.kts
index b8fe20cfd..eaa40a144 100644
--- a/tutorials/java/CurrentPlaceDetailsOnMap/app/build.gradle.kts
+++ b/tutorials/java/CurrentPlaceDetailsOnMap/app/build.gradle.kts
@@ -53,6 +53,7 @@ dependencies {
implementation(libs.places)
implementation(libs.volley)
implementation(platform(libs.kotlinBom))
+ implementation (libs.material)
testImplementation(libs.junit)
}
diff --git a/tutorials/java/CurrentPlaceDetailsOnMap/gradle/libs.versions.toml b/tutorials/java/CurrentPlaceDetailsOnMap/gradle/libs.versions.toml
index bcba2ce0d..1d59ab45d 100644
--- a/tutorials/java/CurrentPlaceDetailsOnMap/gradle/libs.versions.toml
+++ b/tutorials/java/CurrentPlaceDetailsOnMap/gradle/libs.versions.toml
@@ -1,14 +1,15 @@
[versions]
-compileSdk = "34"
-gradle = "8.5.2"
-minSdk = "21"
+compileSdk = "36"
+gradle = "8.10.1"
+material = "1.12.0"
+minSdk = "23"
secretsGradlePlugin = "2.0.1"
-targetSdk = "34"
+targetSdk = "36"
versionCode = "1"
versionName = "1.0"
-appcompat = "1.7.0"
-playServicesMaps = "19.0.0"
-places = "3.5.0"
+appcompat = "1.7.1"
+playServicesMaps = "19.2.0"
+places = "4.3.1"
volley = "1.2.1"
kotlinBom = "2.0.0"
junit = "4.13.2"
@@ -16,6 +17,7 @@ junit = "4.13.2"
[libraries]
appcompat = { group = "androidx.appcompat", name = "appcompat", version.ref = "appcompat" }
gradle = { module = "com.android.tools.build:gradle", version.ref = "gradle" }
+material = { module = "com.google.android.material:material", version.ref = "material" }
playServicesMaps = { group = "com.google.android.gms", name = "play-services-maps", version.ref = "playServicesMaps" }
places = { group = "com.google.android.libraries.places", name = "places", version.ref = "places" }
secretsGradlePlugin = { module = "com.google.android.libraries.mapsplatform.secrets-gradle-plugin:secrets-gradle-plugin", version.ref = "secretsGradlePlugin" }
diff --git a/tutorials/java/CurrentPlaceDetailsOnMap/gradle/wrapper/gradle-wrapper.jar b/tutorials/java/CurrentPlaceDetailsOnMap/gradle/wrapper/gradle-wrapper.jar
index 7f93135c4..a4b76b953 100644
Binary files a/tutorials/java/CurrentPlaceDetailsOnMap/gradle/wrapper/gradle-wrapper.jar and b/tutorials/java/CurrentPlaceDetailsOnMap/gradle/wrapper/gradle-wrapper.jar differ
diff --git a/tutorials/java/CurrentPlaceDetailsOnMap/gradle/wrapper/gradle-wrapper.properties b/tutorials/java/CurrentPlaceDetailsOnMap/gradle/wrapper/gradle-wrapper.properties
index 454c55ae6..e2847c820 100644
--- a/tutorials/java/CurrentPlaceDetailsOnMap/gradle/wrapper/gradle-wrapper.properties
+++ b/tutorials/java/CurrentPlaceDetailsOnMap/gradle/wrapper/gradle-wrapper.properties
@@ -1,7 +1,6 @@
-#Wed Jul 10 22:15:41 CEST 2024
distributionBase=GRADLE_USER_HOME
distributionPath=wrapper/dists
-distributionUrl=https\://services.gradle.org/distributions/gradle-8.7-bin.zip
+distributionUrl=https\://services.gradle.org/distributions/gradle-8.11.1-bin.zip
networkTimeout=10000
validateDistributionUrl=true
zipStoreBase=GRADLE_USER_HOME
diff --git a/tutorials/java/CurrentPlaceDetailsOnMap/gradlew b/tutorials/java/CurrentPlaceDetailsOnMap/gradlew
index 1aa94a426..f5feea6d6 100755
--- a/tutorials/java/CurrentPlaceDetailsOnMap/gradlew
+++ b/tutorials/java/CurrentPlaceDetailsOnMap/gradlew
@@ -15,6 +15,8 @@
# See the License for the specific language governing permissions and
# limitations under the License.
#
+# SPDX-License-Identifier: Apache-2.0
+#
##############################################################################
#
@@ -55,7 +57,7 @@
# Darwin, MinGW, and NonStop.
#
# (3) This script is generated from the Groovy template
-# https://github.com/gradle/gradle/blob/HEAD/subprojects/plugins/src/main/resources/org/gradle/api/internal/plugins/unixStartScript.txt
+# https://github.com/gradle/gradle/blob/HEAD/platforms/jvm/plugins-application/src/main/resources/org/gradle/api/internal/plugins/unixStartScript.txt
# within the Gradle project.
#
# You can find Gradle at https://github.com/gradle/gradle/.
@@ -84,7 +86,8 @@ done
# shellcheck disable=SC2034
APP_BASE_NAME=${0##*/}
# Discard cd standard output in case $CDPATH is set (https://github.com/gradle/gradle/issues/25036)
-APP_HOME=$( cd "${APP_HOME:-./}" > /dev/null && pwd -P ) || exit
+APP_HOME=$( cd -P "${APP_HOME:-./}" > /dev/null && printf '%s
+' "$PWD" ) || exit
# Use the maximum available, or set MAX_FD != -1 to use that value.
MAX_FD=maximum
diff --git a/tutorials/java/CurrentPlaceDetailsOnMap/gradlew.bat b/tutorials/java/CurrentPlaceDetailsOnMap/gradlew.bat
index 6689b85be..9b42019c7 100644
--- a/tutorials/java/CurrentPlaceDetailsOnMap/gradlew.bat
+++ b/tutorials/java/CurrentPlaceDetailsOnMap/gradlew.bat
@@ -13,6 +13,8 @@
@rem See the License for the specific language governing permissions and
@rem limitations under the License.
@rem
+@rem SPDX-License-Identifier: Apache-2.0
+@rem
@if "%DEBUG%"=="" @echo off
@rem ##########################################################################
@@ -43,11 +45,11 @@ set JAVA_EXE=java.exe
%JAVA_EXE% -version >NUL 2>&1
if %ERRORLEVEL% equ 0 goto execute
-echo.
-echo ERROR: JAVA_HOME is not set and no 'java' command could be found in your PATH.
-echo.
-echo Please set the JAVA_HOME variable in your environment to match the
-echo location of your Java installation.
+echo. 1>&2
+echo ERROR: JAVA_HOME is not set and no 'java' command could be found in your PATH. 1>&2
+echo. 1>&2
+echo Please set the JAVA_HOME variable in your environment to match the 1>&2
+echo location of your Java installation. 1>&2
goto fail
@@ -57,11 +59,11 @@ set JAVA_EXE=%JAVA_HOME%/bin/java.exe
if exist "%JAVA_EXE%" goto execute
-echo.
-echo ERROR: JAVA_HOME is set to an invalid directory: %JAVA_HOME%
-echo.
-echo Please set the JAVA_HOME variable in your environment to match the
-echo location of your Java installation.
+echo. 1>&2
+echo ERROR: JAVA_HOME is set to an invalid directory: %JAVA_HOME% 1>&2
+echo. 1>&2
+echo Please set the JAVA_HOME variable in your environment to match the 1>&2
+echo location of your Java installation. 1>&2
goto fail
diff --git a/tutorials/java/MapWithMarker/build.gradle.kts b/tutorials/java/MapWithMarker/build.gradle.kts
index fc7cb2973..5abc3ecf1 100644
--- a/tutorials/java/MapWithMarker/build.gradle.kts
+++ b/tutorials/java/MapWithMarker/build.gradle.kts
@@ -22,7 +22,7 @@ buildscript {
google()
}
dependencies {
- classpath("com.android.tools.build:gradle:8.5.0")
+ classpath(libs.android.gradle.plugin)
classpath("com.google.android.libraries.mapsplatform.secrets-gradle-plugin:secrets-gradle-plugin:2.0.1")
}
}
diff --git a/tutorials/java/MapWithMarker/gradle/libs.versions.toml b/tutorials/java/MapWithMarker/gradle/libs.versions.toml
index 8b47e88c4..50763b7c8 100644
--- a/tutorials/java/MapWithMarker/gradle/libs.versions.toml
+++ b/tutorials/java/MapWithMarker/gradle/libs.versions.toml
@@ -1,15 +1,16 @@
[versions]
-compileSdk = "34"
+compileSdk = "36"
minSdk = "21"
-targetSdk = "34"
+targetSdk = "36"
versionCode = "1"
versionName = "1.0"
-playServicesMaps = "19.0.0"
+playServicesMaps = "19.2.0"
kotlinBom = "2.0.0"
-appcompat = "1.7.0"
+appcompat = "1.7.1"
junit = "4.13.2"
androidxTestExtJunit = "1.2.1"
espressoCore = "3.6.1"
+agp = "8.10.1"
[libraries]
playServicesMaps = { group = "com.google.android.gms", name = "play-services-maps", version.ref = "playServicesMaps" }
@@ -18,3 +19,4 @@ appcompat = { group = "androidx.appcompat", name = "appcompat", version.ref = "a
junit = { group = "junit", name = "junit", version.ref = "junit" }
androidxTestExtJunit = { group = "androidx.test.ext", name = "junit", version.ref = "androidxTestExtJunit" }
espressoCore = { group = "androidx.test.espresso", name = "espresso-core", version.ref = "espressoCore" }
+android-gradle-plugin = { module = "com.android.tools.build:gradle", version.ref = "agp" }
\ No newline at end of file
diff --git a/tutorials/java/MapWithMarker/gradle/wrapper/gradle-wrapper.jar b/tutorials/java/MapWithMarker/gradle/wrapper/gradle-wrapper.jar
index 7f93135c4..a4b76b953 100644
Binary files a/tutorials/java/MapWithMarker/gradle/wrapper/gradle-wrapper.jar and b/tutorials/java/MapWithMarker/gradle/wrapper/gradle-wrapper.jar differ
diff --git a/tutorials/java/MapWithMarker/gradle/wrapper/gradle-wrapper.properties b/tutorials/java/MapWithMarker/gradle/wrapper/gradle-wrapper.properties
index 261f84537..e2847c820 100644
--- a/tutorials/java/MapWithMarker/gradle/wrapper/gradle-wrapper.properties
+++ b/tutorials/java/MapWithMarker/gradle/wrapper/gradle-wrapper.properties
@@ -1,7 +1,6 @@
-#Wed Jul 10 22:16:57 CEST 2024
distributionBase=GRADLE_USER_HOME
distributionPath=wrapper/dists
-distributionUrl=https\://services.gradle.org/distributions/gradle-8.7-bin.zip
+distributionUrl=https\://services.gradle.org/distributions/gradle-8.11.1-bin.zip
networkTimeout=10000
validateDistributionUrl=true
zipStoreBase=GRADLE_USER_HOME
diff --git a/tutorials/java/MapWithMarker/gradlew b/tutorials/java/MapWithMarker/gradlew
index 1aa94a426..f5feea6d6 100755
--- a/tutorials/java/MapWithMarker/gradlew
+++ b/tutorials/java/MapWithMarker/gradlew
@@ -15,6 +15,8 @@
# See the License for the specific language governing permissions and
# limitations under the License.
#
+# SPDX-License-Identifier: Apache-2.0
+#
##############################################################################
#
@@ -55,7 +57,7 @@
# Darwin, MinGW, and NonStop.
#
# (3) This script is generated from the Groovy template
-# https://github.com/gradle/gradle/blob/HEAD/subprojects/plugins/src/main/resources/org/gradle/api/internal/plugins/unixStartScript.txt
+# https://github.com/gradle/gradle/blob/HEAD/platforms/jvm/plugins-application/src/main/resources/org/gradle/api/internal/plugins/unixStartScript.txt
# within the Gradle project.
#
# You can find Gradle at https://github.com/gradle/gradle/.
@@ -84,7 +86,8 @@ done
# shellcheck disable=SC2034
APP_BASE_NAME=${0##*/}
# Discard cd standard output in case $CDPATH is set (https://github.com/gradle/gradle/issues/25036)
-APP_HOME=$( cd "${APP_HOME:-./}" > /dev/null && pwd -P ) || exit
+APP_HOME=$( cd -P "${APP_HOME:-./}" > /dev/null && printf '%s
+' "$PWD" ) || exit
# Use the maximum available, or set MAX_FD != -1 to use that value.
MAX_FD=maximum
diff --git a/tutorials/java/MapWithMarker/gradlew.bat b/tutorials/java/MapWithMarker/gradlew.bat
index 6689b85be..9b42019c7 100644
--- a/tutorials/java/MapWithMarker/gradlew.bat
+++ b/tutorials/java/MapWithMarker/gradlew.bat
@@ -13,6 +13,8 @@
@rem See the License for the specific language governing permissions and
@rem limitations under the License.
@rem
+@rem SPDX-License-Identifier: Apache-2.0
+@rem
@if "%DEBUG%"=="" @echo off
@rem ##########################################################################
@@ -43,11 +45,11 @@ set JAVA_EXE=java.exe
%JAVA_EXE% -version >NUL 2>&1
if %ERRORLEVEL% equ 0 goto execute
-echo.
-echo ERROR: JAVA_HOME is not set and no 'java' command could be found in your PATH.
-echo.
-echo Please set the JAVA_HOME variable in your environment to match the
-echo location of your Java installation.
+echo. 1>&2
+echo ERROR: JAVA_HOME is not set and no 'java' command could be found in your PATH. 1>&2
+echo. 1>&2
+echo Please set the JAVA_HOME variable in your environment to match the 1>&2
+echo location of your Java installation. 1>&2
goto fail
@@ -57,11 +59,11 @@ set JAVA_EXE=%JAVA_HOME%/bin/java.exe
if exist "%JAVA_EXE%" goto execute
-echo.
-echo ERROR: JAVA_HOME is set to an invalid directory: %JAVA_HOME%
-echo.
-echo Please set the JAVA_HOME variable in your environment to match the
-echo location of your Java installation.
+echo. 1>&2
+echo ERROR: JAVA_HOME is set to an invalid directory: %JAVA_HOME% 1>&2
+echo. 1>&2
+echo Please set the JAVA_HOME variable in your environment to match the 1>&2
+echo location of your Java installation. 1>&2
goto fail
diff --git a/tutorials/java/Polygons/build.gradle.kts b/tutorials/java/Polygons/build.gradle.kts
index c2cbb6d43..5abc3ecf1 100644
--- a/tutorials/java/Polygons/build.gradle.kts
+++ b/tutorials/java/Polygons/build.gradle.kts
@@ -22,7 +22,7 @@ buildscript {
google()
}
dependencies {
- classpath("com.android.tools.build:gradle:8.5.2")
+ classpath(libs.android.gradle.plugin)
classpath("com.google.android.libraries.mapsplatform.secrets-gradle-plugin:secrets-gradle-plugin:2.0.1")
}
}
diff --git a/tutorials/java/Polygons/gradle/libs.versions.toml b/tutorials/java/Polygons/gradle/libs.versions.toml
index 9a2212484..36c6ff979 100644
--- a/tutorials/java/Polygons/gradle/libs.versions.toml
+++ b/tutorials/java/Polygons/gradle/libs.versions.toml
@@ -1,15 +1,16 @@
[versions]
-compileSdk = "34"
+compileSdk = "36"
minSdk = "21"
-targetSdk = "34"
+targetSdk = "36"
versionCode = "1"
versionName = "1.0"
-appcompat = "1.7.0"
-playServicesMaps = "19.0.0"
-kotlinBom = "2.0.0"
+appcompat = "1.7.1"
+playServicesMaps = "19.2.0"
+kotlinBom = "2.2.0"
junit = "4.13.2"
androidxTestExtJunit = "1.2.1"
espressoCore = "3.6.1"
+agp = "8.10.1"
[libraries]
appcompat = { group = "androidx.appcompat", name = "appcompat", version.ref = "appcompat" }
@@ -18,3 +19,4 @@ kotlinBom = { group = "org.jetbrains.kotlin", name = "kotlin-bom", version.ref =
junit = { group = "junit", name = "junit", version.ref = "junit" }
androidxTestExtJunit = { group = "androidx.test.ext", name = "junit", version.ref = "androidxTestExtJunit" }
espressoCore = { group = "androidx.test.espresso", name = "espresso-core", version.ref = "espressoCore" }
+android-gradle-plugin = { module = "com.android.tools.build:gradle", version.ref = "agp" }
\ No newline at end of file
diff --git a/tutorials/java/Polygons/gradle/wrapper/gradle-wrapper.jar b/tutorials/java/Polygons/gradle/wrapper/gradle-wrapper.jar
index 7f93135c4..a4b76b953 100644
Binary files a/tutorials/java/Polygons/gradle/wrapper/gradle-wrapper.jar and b/tutorials/java/Polygons/gradle/wrapper/gradle-wrapper.jar differ
diff --git a/tutorials/java/Polygons/gradle/wrapper/gradle-wrapper.properties b/tutorials/java/Polygons/gradle/wrapper/gradle-wrapper.properties
index a52580c21..e2847c820 100644
--- a/tutorials/java/Polygons/gradle/wrapper/gradle-wrapper.properties
+++ b/tutorials/java/Polygons/gradle/wrapper/gradle-wrapper.properties
@@ -1,7 +1,6 @@
-#Wed Jul 10 22:17:21 CEST 2024
distributionBase=GRADLE_USER_HOME
distributionPath=wrapper/dists
-distributionUrl=https\://services.gradle.org/distributions/gradle-8.7-bin.zip
+distributionUrl=https\://services.gradle.org/distributions/gradle-8.11.1-bin.zip
networkTimeout=10000
validateDistributionUrl=true
zipStoreBase=GRADLE_USER_HOME
diff --git a/tutorials/java/Polygons/gradlew b/tutorials/java/Polygons/gradlew
index 1aa94a426..f5feea6d6 100755
--- a/tutorials/java/Polygons/gradlew
+++ b/tutorials/java/Polygons/gradlew
@@ -15,6 +15,8 @@
# See the License for the specific language governing permissions and
# limitations under the License.
#
+# SPDX-License-Identifier: Apache-2.0
+#
##############################################################################
#
@@ -55,7 +57,7 @@
# Darwin, MinGW, and NonStop.
#
# (3) This script is generated from the Groovy template
-# https://github.com/gradle/gradle/blob/HEAD/subprojects/plugins/src/main/resources/org/gradle/api/internal/plugins/unixStartScript.txt
+# https://github.com/gradle/gradle/blob/HEAD/platforms/jvm/plugins-application/src/main/resources/org/gradle/api/internal/plugins/unixStartScript.txt
# within the Gradle project.
#
# You can find Gradle at https://github.com/gradle/gradle/.
@@ -84,7 +86,8 @@ done
# shellcheck disable=SC2034
APP_BASE_NAME=${0##*/}
# Discard cd standard output in case $CDPATH is set (https://github.com/gradle/gradle/issues/25036)
-APP_HOME=$( cd "${APP_HOME:-./}" > /dev/null && pwd -P ) || exit
+APP_HOME=$( cd -P "${APP_HOME:-./}" > /dev/null && printf '%s
+' "$PWD" ) || exit
# Use the maximum available, or set MAX_FD != -1 to use that value.
MAX_FD=maximum
diff --git a/tutorials/java/Polygons/gradlew.bat b/tutorials/java/Polygons/gradlew.bat
index 6689b85be..9b42019c7 100644
--- a/tutorials/java/Polygons/gradlew.bat
+++ b/tutorials/java/Polygons/gradlew.bat
@@ -13,6 +13,8 @@
@rem See the License for the specific language governing permissions and
@rem limitations under the License.
@rem
+@rem SPDX-License-Identifier: Apache-2.0
+@rem
@if "%DEBUG%"=="" @echo off
@rem ##########################################################################
@@ -43,11 +45,11 @@ set JAVA_EXE=java.exe
%JAVA_EXE% -version >NUL 2>&1
if %ERRORLEVEL% equ 0 goto execute
-echo.
-echo ERROR: JAVA_HOME is not set and no 'java' command could be found in your PATH.
-echo.
-echo Please set the JAVA_HOME variable in your environment to match the
-echo location of your Java installation.
+echo. 1>&2
+echo ERROR: JAVA_HOME is not set and no 'java' command could be found in your PATH. 1>&2
+echo. 1>&2
+echo Please set the JAVA_HOME variable in your environment to match the 1>&2
+echo location of your Java installation. 1>&2
goto fail
@@ -57,11 +59,11 @@ set JAVA_EXE=%JAVA_HOME%/bin/java.exe
if exist "%JAVA_EXE%" goto execute
-echo.
-echo ERROR: JAVA_HOME is set to an invalid directory: %JAVA_HOME%
-echo.
-echo Please set the JAVA_HOME variable in your environment to match the
-echo location of your Java installation.
+echo. 1>&2
+echo ERROR: JAVA_HOME is set to an invalid directory: %JAVA_HOME% 1>&2
+echo. 1>&2
+echo Please set the JAVA_HOME variable in your environment to match the 1>&2
+echo location of your Java installation. 1>&2
goto fail
diff --git a/tutorials/java/StyledMap/gradle/libs.versions.toml b/tutorials/java/StyledMap/gradle/libs.versions.toml
index 14b2665f4..40874e761 100644
--- a/tutorials/java/StyledMap/gradle/libs.versions.toml
+++ b/tutorials/java/StyledMap/gradle/libs.versions.toml
@@ -1,14 +1,14 @@
[versions]
-compileSdk = "34"
-gradle = "8.5.2"
+compileSdk = "36"
+gradle = "8.10.1"
minSdk = "21"
secretsGradlePlugin = "2.0.1"
-targetSdk = "34"
+targetSdk = "36"
versionCode = "1"
versionName = "1.0"
-appcompat = "1.7.0"
-playServicesMaps = "19.0.0"
-kotlinBom = "2.0.0"
+appcompat = "1.7.1"
+playServicesMaps = "19.2.0"
+kotlinBom = "2.2.0"
junit = "4.13.2"
androidxTestExtJunit = "1.2.1"
espressoCore = "3.6.1"
diff --git a/tutorials/java/StyledMap/gradle/wrapper/gradle-wrapper.jar b/tutorials/java/StyledMap/gradle/wrapper/gradle-wrapper.jar
index 13372aef5..a4b76b953 100644
Binary files a/tutorials/java/StyledMap/gradle/wrapper/gradle-wrapper.jar and b/tutorials/java/StyledMap/gradle/wrapper/gradle-wrapper.jar differ
diff --git a/tutorials/java/StyledMap/gradle/wrapper/gradle-wrapper.properties b/tutorials/java/StyledMap/gradle/wrapper/gradle-wrapper.properties
index 5f9157f5f..e2847c820 100644
--- a/tutorials/java/StyledMap/gradle/wrapper/gradle-wrapper.properties
+++ b/tutorials/java/StyledMap/gradle/wrapper/gradle-wrapper.properties
@@ -1,6 +1,7 @@
-#Wed Jul 10 22:17:43 CEST 2024
distributionBase=GRADLE_USER_HOME
distributionPath=wrapper/dists
-distributionUrl=https\://services.gradle.org/distributions/gradle-8.7-bin.zip
+distributionUrl=https\://services.gradle.org/distributions/gradle-8.11.1-bin.zip
+networkTimeout=10000
+validateDistributionUrl=true
zipStoreBase=GRADLE_USER_HOME
zipStorePath=wrapper/dists
diff --git a/tutorials/java/StyledMap/gradlew b/tutorials/java/StyledMap/gradlew
index 9d82f7891..f5feea6d6 100755
--- a/tutorials/java/StyledMap/gradlew
+++ b/tutorials/java/StyledMap/gradlew
@@ -1,74 +1,130 @@
-#!/usr/bin/env bash
+#!/bin/sh
+
+#
+# Copyright © 2015-2021 the original authors.
+#
+# Licensed under the Apache License, Version 2.0 (the "License");
+# you may not use this file except in compliance with the License.
+# You may obtain a copy of the License at
+#
+# https://www.apache.org/licenses/LICENSE-2.0
+#
+# Unless required by applicable law or agreed to in writing, software
+# distributed under the License is distributed on an "AS IS" BASIS,
+# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+# See the License for the specific language governing permissions and
+# limitations under the License.
+#
+# SPDX-License-Identifier: Apache-2.0
+#
##############################################################################
-##
-## Gradle start up script for UN*X
-##
+#
+# Gradle start up script for POSIX generated by Gradle.
+#
+# Important for running:
+#
+# (1) You need a POSIX-compliant shell to run this script. If your /bin/sh is
+# noncompliant, but you have some other compliant shell such as ksh or
+# bash, then to run this script, type that shell name before the whole
+# command line, like:
+#
+# ksh Gradle
+#
+# Busybox and similar reduced shells will NOT work, because this script
+# requires all of these POSIX shell features:
+# * functions;
+# * expansions «$var», «${var}», «${var:-default}», «${var+SET}»,
+# «${var#prefix}», «${var%suffix}», and «$( cmd )»;
+# * compound commands having a testable exit status, especially «case»;
+# * various built-in commands including «command», «set», and «ulimit».
+#
+# Important for patching:
+#
+# (2) This script targets any POSIX shell, so it avoids extensions provided
+# by Bash, Ksh, etc; in particular arrays are avoided.
+#
+# The "traditional" practice of packing multiple parameters into a
+# space-separated string is a well documented source of bugs and security
+# problems, so this is (mostly) avoided, by progressively accumulating
+# options in "$@", and eventually passing that to Java.
+#
+# Where the inherited environment variables (DEFAULT_JVM_OPTS, JAVA_OPTS,
+# and GRADLE_OPTS) rely on word-splitting, this is performed explicitly;
+# see the in-line comments for details.
+#
+# There are tweaks for specific operating systems such as AIX, CygWin,
+# Darwin, MinGW, and NonStop.
+#
+# (3) This script is generated from the Groovy template
+# https://github.com/gradle/gradle/blob/HEAD/platforms/jvm/plugins-application/src/main/resources/org/gradle/api/internal/plugins/unixStartScript.txt
+# within the Gradle project.
+#
+# You can find Gradle at https://github.com/gradle/gradle/.
+#
##############################################################################
-# Add default JVM options here. You can also use JAVA_OPTS and GRADLE_OPTS to pass JVM options to this script.
-DEFAULT_JVM_OPTS=""
+# Attempt to set APP_HOME
+
+# Resolve links: $0 may be a link
+app_path=$0
+
+# Need this for daisy-chained symlinks.
+while
+ APP_HOME=${app_path%"${app_path##*/}"} # leaves a trailing /; empty if no leading path
+ [ -h "$app_path" ]
+do
+ ls=$( ls -ld "$app_path" )
+ link=${ls#*' -> '}
+ case $link in #(
+ /*) app_path=$link ;; #(
+ *) app_path=$APP_HOME$link ;;
+ esac
+done
-APP_NAME="Gradle"
-APP_BASE_NAME=`basename "$0"`
+# This is normally unused
+# shellcheck disable=SC2034
+APP_BASE_NAME=${0##*/}
+# Discard cd standard output in case $CDPATH is set (https://github.com/gradle/gradle/issues/25036)
+APP_HOME=$( cd -P "${APP_HOME:-./}" > /dev/null && printf '%s
+' "$PWD" ) || exit
# Use the maximum available, or set MAX_FD != -1 to use that value.
-MAX_FD="maximum"
+MAX_FD=maximum
-warn ( ) {
+warn () {
echo "$*"
-}
+} >&2
-die ( ) {
+die () {
echo
echo "$*"
echo
exit 1
-}
+} >&2
# OS specific support (must be 'true' or 'false').
cygwin=false
msys=false
darwin=false
-case "`uname`" in
- CYGWIN* )
- cygwin=true
- ;;
- Darwin* )
- darwin=true
- ;;
- MINGW* )
- msys=true
- ;;
+nonstop=false
+case "$( uname )" in #(
+ CYGWIN* ) cygwin=true ;; #(
+ Darwin* ) darwin=true ;; #(
+ MSYS* | MINGW* ) msys=true ;; #(
+ NONSTOP* ) nonstop=true ;;
esac
-# Attempt to set APP_HOME
-# Resolve links: $0 may be a link
-PRG="$0"
-# Need this for relative symlinks.
-while [ -h "$PRG" ] ; do
- ls=`ls -ld "$PRG"`
- link=`expr "$ls" : '.*-> \(.*\)$'`
- if expr "$link" : '/.*' > /dev/null; then
- PRG="$link"
- else
- PRG=`dirname "$PRG"`"/$link"
- fi
-done
-SAVED="`pwd`"
-cd "`dirname \"$PRG\"`/" >/dev/null
-APP_HOME="`pwd -P`"
-cd "$SAVED" >/dev/null
-
CLASSPATH=$APP_HOME/gradle/wrapper/gradle-wrapper.jar
+
# Determine the Java command to use to start the JVM.
if [ -n "$JAVA_HOME" ] ; then
if [ -x "$JAVA_HOME/jre/sh/java" ] ; then
# IBM's JDK on AIX uses strange locations for the executables
- JAVACMD="$JAVA_HOME/jre/sh/java"
+ JAVACMD=$JAVA_HOME/jre/sh/java
else
- JAVACMD="$JAVA_HOME/bin/java"
+ JAVACMD=$JAVA_HOME/bin/java
fi
if [ ! -x "$JAVACMD" ] ; then
die "ERROR: JAVA_HOME is set to an invalid directory: $JAVA_HOME
@@ -77,84 +133,120 @@ Please set the JAVA_HOME variable in your environment to match the
location of your Java installation."
fi
else
- JAVACMD="java"
- which java >/dev/null 2>&1 || die "ERROR: JAVA_HOME is not set and no 'java' command could be found in your PATH.
+ JAVACMD=java
+ if ! command -v java >/dev/null 2>&1
+ then
+ die "ERROR: JAVA_HOME is not set and no 'java' command could be found in your PATH.
Please set the JAVA_HOME variable in your environment to match the
location of your Java installation."
+ fi
fi
# Increase the maximum file descriptors if we can.
-if [ "$cygwin" = "false" -a "$darwin" = "false" ] ; then
- MAX_FD_LIMIT=`ulimit -H -n`
- if [ $? -eq 0 ] ; then
- if [ "$MAX_FD" = "maximum" -o "$MAX_FD" = "max" ] ; then
- MAX_FD="$MAX_FD_LIMIT"
- fi
- ulimit -n $MAX_FD
- if [ $? -ne 0 ] ; then
- warn "Could not set maximum file descriptor limit: $MAX_FD"
- fi
- else
- warn "Could not query maximum file descriptor limit: $MAX_FD_LIMIT"
- fi
+if ! "$cygwin" && ! "$darwin" && ! "$nonstop" ; then
+ case $MAX_FD in #(
+ max*)
+ # In POSIX sh, ulimit -H is undefined. That's why the result is checked to see if it worked.
+ # shellcheck disable=SC2039,SC3045
+ MAX_FD=$( ulimit -H -n ) ||
+ warn "Could not query maximum file descriptor limit"
+ esac
+ case $MAX_FD in #(
+ '' | soft) :;; #(
+ *)
+ # In POSIX sh, ulimit -n is undefined. That's why the result is checked to see if it worked.
+ # shellcheck disable=SC2039,SC3045
+ ulimit -n "$MAX_FD" ||
+ warn "Could not set maximum file descriptor limit to $MAX_FD"
+ esac
fi
-# For Darwin, add options to specify how the application appears in the dock
-if $darwin; then
- GRADLE_OPTS="$GRADLE_OPTS \"-Xdock:name=$APP_NAME\" \"-Xdock:icon=$APP_HOME/media/gradle.icns\""
-fi
+# Collect all arguments for the java command, stacking in reverse order:
+# * args from the command line
+# * the main class name
+# * -classpath
+# * -D...appname settings
+# * --module-path (only if needed)
+# * DEFAULT_JVM_OPTS, JAVA_OPTS, and GRADLE_OPTS environment variables.
+
+# For Cygwin or MSYS, switch paths to Windows format before running java
+if "$cygwin" || "$msys" ; then
+ APP_HOME=$( cygpath --path --mixed "$APP_HOME" )
+ CLASSPATH=$( cygpath --path --mixed "$CLASSPATH" )
+
+ JAVACMD=$( cygpath --unix "$JAVACMD" )
-# For Cygwin, switch paths to Windows format before running java
-if $cygwin ; then
- APP_HOME=`cygpath --path --mixed "$APP_HOME"`
- CLASSPATH=`cygpath --path --mixed "$CLASSPATH"`
- JAVACMD=`cygpath --unix "$JAVACMD"`
-
- # We build the pattern for arguments to be converted via cygpath
- ROOTDIRSRAW=`find -L / -maxdepth 1 -mindepth 1 -type d 2>/dev/null`
- SEP=""
- for dir in $ROOTDIRSRAW ; do
- ROOTDIRS="$ROOTDIRS$SEP$dir"
- SEP="|"
- done
- OURCYGPATTERN="(^($ROOTDIRS))"
- # Add a user-defined pattern to the cygpath arguments
- if [ "$GRADLE_CYGPATTERN" != "" ] ; then
- OURCYGPATTERN="$OURCYGPATTERN|($GRADLE_CYGPATTERN)"
- fi
# Now convert the arguments - kludge to limit ourselves to /bin/sh
- i=0
- for arg in "$@" ; do
- CHECK=`echo "$arg"|egrep -c "$OURCYGPATTERN" -`
- CHECK2=`echo "$arg"|egrep -c "^-"` ### Determine if an option
-
- if [ $CHECK -ne 0 ] && [ $CHECK2 -eq 0 ] ; then ### Added a condition
- eval `echo args$i`=`cygpath --path --ignore --mixed "$arg"`
- else
- eval `echo args$i`="\"$arg\""
+ for arg do
+ if
+ case $arg in #(
+ -*) false ;; # don't mess with options #(
+ /?*) t=${arg#/} t=/${t%%/*} # looks like a POSIX filepath
+ [ -e "$t" ] ;; #(
+ *) false ;;
+ esac
+ then
+ arg=$( cygpath --path --ignore --mixed "$arg" )
fi
- i=$((i+1))
+ # Roll the args list around exactly as many times as the number of
+ # args, so each arg winds up back in the position where it started, but
+ # possibly modified.
+ #
+ # NB: a `for` loop captures its iteration list before it begins, so
+ # changing the positional parameters here affects neither the number of
+ # iterations, nor the values presented in `arg`.
+ shift # remove old arg
+ set -- "$@" "$arg" # push replacement arg
done
- case $i in
- (0) set -- ;;
- (1) set -- "$args0" ;;
- (2) set -- "$args0" "$args1" ;;
- (3) set -- "$args0" "$args1" "$args2" ;;
- (4) set -- "$args0" "$args1" "$args2" "$args3" ;;
- (5) set -- "$args0" "$args1" "$args2" "$args3" "$args4" ;;
- (6) set -- "$args0" "$args1" "$args2" "$args3" "$args4" "$args5" ;;
- (7) set -- "$args0" "$args1" "$args2" "$args3" "$args4" "$args5" "$args6" ;;
- (8) set -- "$args0" "$args1" "$args2" "$args3" "$args4" "$args5" "$args6" "$args7" ;;
- (9) set -- "$args0" "$args1" "$args2" "$args3" "$args4" "$args5" "$args6" "$args7" "$args8" ;;
- esac
fi
-# Split up the JVM_OPTS And GRADLE_OPTS values into an array, following the shell quoting and substitution rules
-function splitJvmOpts() {
- JVM_OPTS=("$@")
-}
-eval splitJvmOpts $DEFAULT_JVM_OPTS $JAVA_OPTS $GRADLE_OPTS
-JVM_OPTS[${#JVM_OPTS[*]}]="-Dorg.gradle.appname=$APP_BASE_NAME"
-exec "$JAVACMD" "${JVM_OPTS[@]}" -classpath "$CLASSPATH" org.gradle.wrapper.GradleWrapperMain "$@"
+# Add default JVM options here. You can also use JAVA_OPTS and GRADLE_OPTS to pass JVM options to this script.
+DEFAULT_JVM_OPTS='"-Xmx64m" "-Xms64m"'
+
+# Collect all arguments for the java command:
+# * DEFAULT_JVM_OPTS, JAVA_OPTS, JAVA_OPTS, and optsEnvironmentVar are not allowed to contain shell fragments,
+# and any embedded shellness will be escaped.
+# * For example: A user cannot expect ${Hostname} to be expanded, as it is an environment variable and will be
+# treated as '${Hostname}' itself on the command line.
+
+set -- \
+ "-Dorg.gradle.appname=$APP_BASE_NAME" \
+ -classpath "$CLASSPATH" \
+ org.gradle.wrapper.GradleWrapperMain \
+ "$@"
+
+# Stop when "xargs" is not available.
+if ! command -v xargs >/dev/null 2>&1
+then
+ die "xargs is not available"
+fi
+
+# Use "xargs" to parse quoted args.
+#
+# With -n1 it outputs one arg per line, with the quotes and backslashes removed.
+#
+# In Bash we could simply go:
+#
+# readarray ARGS < <( xargs -n1 <<<"$var" ) &&
+# set -- "${ARGS[@]}" "$@"
+#
+# but POSIX shell has neither arrays nor command substitution, so instead we
+# post-process each arg (as a line of input to sed) to backslash-escape any
+# character that might be a shell metacharacter, then use eval to reverse
+# that process (while maintaining the separation between arguments), and wrap
+# the whole thing up as a single "set" statement.
+#
+# This will of course break if any of these variables contains a newline or
+# an unmatched quote.
+#
+
+eval "set -- $(
+ printf '%s\n' "$DEFAULT_JVM_OPTS $JAVA_OPTS $GRADLE_OPTS" |
+ xargs -n1 |
+ sed ' s~[^-[:alnum:]+,./:=@_]~\\&~g; ' |
+ tr '\n' ' '
+ )" '"$@"'
+
+exec "$JAVACMD" "$@"
diff --git a/tutorials/java/StyledMap/gradlew.bat b/tutorials/java/StyledMap/gradlew.bat
index aec99730b..9b42019c7 100644
--- a/tutorials/java/StyledMap/gradlew.bat
+++ b/tutorials/java/StyledMap/gradlew.bat
@@ -1,4 +1,22 @@
-@if "%DEBUG%" == "" @echo off
+@rem
+@rem Copyright 2015 the original author or authors.
+@rem
+@rem Licensed under the Apache License, Version 2.0 (the "License");
+@rem you may not use this file except in compliance with the License.
+@rem You may obtain a copy of the License at
+@rem
+@rem https://www.apache.org/licenses/LICENSE-2.0
+@rem
+@rem Unless required by applicable law or agreed to in writing, software
+@rem distributed under the License is distributed on an "AS IS" BASIS,
+@rem WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+@rem See the License for the specific language governing permissions and
+@rem limitations under the License.
+@rem
+@rem SPDX-License-Identifier: Apache-2.0
+@rem
+
+@if "%DEBUG%"=="" @echo off
@rem ##########################################################################
@rem
@rem Gradle startup script for Windows
@@ -8,26 +26,30 @@
@rem Set local scope for the variables with windows NT shell
if "%OS%"=="Windows_NT" setlocal
-@rem Add default JVM options here. You can also use JAVA_OPTS and GRADLE_OPTS to pass JVM options to this script.
-set DEFAULT_JVM_OPTS=
-
set DIRNAME=%~dp0
-if "%DIRNAME%" == "" set DIRNAME=.
+if "%DIRNAME%"=="" set DIRNAME=.
+@rem This is normally unused
set APP_BASE_NAME=%~n0
set APP_HOME=%DIRNAME%
+@rem Resolve any "." and ".." in APP_HOME to make it shorter.
+for %%i in ("%APP_HOME%") do set APP_HOME=%%~fi
+
+@rem Add default JVM options here. You can also use JAVA_OPTS and GRADLE_OPTS to pass JVM options to this script.
+set DEFAULT_JVM_OPTS="-Xmx64m" "-Xms64m"
+
@rem Find java.exe
if defined JAVA_HOME goto findJavaFromJavaHome
set JAVA_EXE=java.exe
%JAVA_EXE% -version >NUL 2>&1
-if "%ERRORLEVEL%" == "0" goto init
+if %ERRORLEVEL% equ 0 goto execute
-echo.
-echo ERROR: JAVA_HOME is not set and no 'java' command could be found in your PATH.
-echo.
-echo Please set the JAVA_HOME variable in your environment to match the
-echo location of your Java installation.
+echo. 1>&2
+echo ERROR: JAVA_HOME is not set and no 'java' command could be found in your PATH. 1>&2
+echo. 1>&2
+echo Please set the JAVA_HOME variable in your environment to match the 1>&2
+echo location of your Java installation. 1>&2
goto fail
@@ -35,54 +57,36 @@ goto fail
set JAVA_HOME=%JAVA_HOME:"=%
set JAVA_EXE=%JAVA_HOME%/bin/java.exe
-if exist "%JAVA_EXE%" goto init
+if exist "%JAVA_EXE%" goto execute
-echo.
-echo ERROR: JAVA_HOME is set to an invalid directory: %JAVA_HOME%
-echo.
-echo Please set the JAVA_HOME variable in your environment to match the
-echo location of your Java installation.
+echo. 1>&2
+echo ERROR: JAVA_HOME is set to an invalid directory: %JAVA_HOME% 1>&2
+echo. 1>&2
+echo Please set the JAVA_HOME variable in your environment to match the 1>&2
+echo location of your Java installation. 1>&2
goto fail
-:init
-@rem Get command-line arguments, handling Windowz variants
-
-if not "%OS%" == "Windows_NT" goto win9xME_args
-if "%@eval[2+2]" == "4" goto 4NT_args
-
-:win9xME_args
-@rem Slurp the command line arguments.
-set CMD_LINE_ARGS=
-set _SKIP=2
-
-:win9xME_args_slurp
-if "x%~1" == "x" goto execute
-
-set CMD_LINE_ARGS=%*
-goto execute
-
-:4NT_args
-@rem Get arguments from the 4NT Shell from JP Software
-set CMD_LINE_ARGS=%$
-
:execute
@rem Setup the command line
set CLASSPATH=%APP_HOME%\gradle\wrapper\gradle-wrapper.jar
+
@rem Execute Gradle
-"%JAVA_EXE%" %DEFAULT_JVM_OPTS% %JAVA_OPTS% %GRADLE_OPTS% "-Dorg.gradle.appname=%APP_BASE_NAME%" -classpath "%CLASSPATH%" org.gradle.wrapper.GradleWrapperMain %CMD_LINE_ARGS%
+"%JAVA_EXE%" %DEFAULT_JVM_OPTS% %JAVA_OPTS% %GRADLE_OPTS% "-Dorg.gradle.appname=%APP_BASE_NAME%" -classpath "%CLASSPATH%" org.gradle.wrapper.GradleWrapperMain %*
:end
@rem End local scope for the variables with windows NT shell
-if "%ERRORLEVEL%"=="0" goto mainEnd
+if %ERRORLEVEL% equ 0 goto mainEnd
:fail
rem Set variable GRADLE_EXIT_CONSOLE if you need the _script_ return code instead of
rem the _cmd.exe /c_ return code!
-if not "" == "%GRADLE_EXIT_CONSOLE%" exit 1
-exit /b 1
+set EXIT_CODE=%ERRORLEVEL%
+if %EXIT_CODE% equ 0 set EXIT_CODE=1
+if not ""=="%GRADLE_EXIT_CONSOLE%" exit %EXIT_CODE%
+exit /b %EXIT_CODE%
:mainEnd
if "%OS%"=="Windows_NT" endlocal
diff --git a/tutorials/kotlin/CurrentPlaceDetailsOnMap/app/build.gradle.kts b/tutorials/kotlin/CurrentPlaceDetailsOnMap/app/build.gradle.kts
index b7722def3..0ccca7975 100644
--- a/tutorials/kotlin/CurrentPlaceDetailsOnMap/app/build.gradle.kts
+++ b/tutorials/kotlin/CurrentPlaceDetailsOnMap/app/build.gradle.kts
@@ -66,6 +66,7 @@ dependencies {
implementation(libs.coreKtx)
implementation(libs.lifecycleViewModelKtx)
implementation("org.jetbrains.kotlin:kotlin-stdlib-jdk7:${libs.versions.kotlin.get()}")
+ implementation(libs.material)
}
secrets {
diff --git a/tutorials/kotlin/CurrentPlaceDetailsOnMap/gradle/libs.versions.toml b/tutorials/kotlin/CurrentPlaceDetailsOnMap/gradle/libs.versions.toml
index f4d2bd68e..23cd9a49b 100644
--- a/tutorials/kotlin/CurrentPlaceDetailsOnMap/gradle/libs.versions.toml
+++ b/tutorials/kotlin/CurrentPlaceDetailsOnMap/gradle/libs.versions.toml
@@ -1,20 +1,21 @@
[versions]
-compileSdk = "34"
-gradle = "8.5.2"
+compileSdk = "36"
+gradle = "8.10.1"
kotlinGradlePlugin = "2.0.0"
-minSdk = "21"
+material = "1.12.0"
+minSdk = "23"
secretsGradlePlugin = "2.0.1"
-targetSdk = "34"
+targetSdk = "36"
versionCode = "1"
versionName = "1.0"
kotlin = "2.0.0"
-appcompat = "1.7.0"
-playServicesMaps = "19.0.0"
-places = "3.5.0"
+appcompat = "1.7.1"
+playServicesMaps = "19.2.0"
+places = "4.3.1"
volley = "1.2.1"
junit = "4.13.2"
-coreKtx = "1.13.1"
-lifecycleViewModelKtx = "2.8.4"
+coreKtx = "1.16.0"
+lifecycleViewModelKtx = "2.9.1"
espressoCore = "3.0.2"
javaVersion = "21"
@@ -22,6 +23,7 @@ javaVersion = "21"
appcompat = { group = "androidx.appcompat", name = "appcompat", version.ref = "appcompat" }
gradle = { module = "com.android.tools.build:gradle", version.ref = "gradle" }
kotlinGradlePlugin = { module = "org.jetbrains.kotlin:kotlin-gradle-plugin", version.ref = "kotlinGradlePlugin" }
+material = { module = "com.google.android.material:material", version.ref = "material" }
playServicesMaps = { group = "com.google.android.gms", name = "play-services-maps", version.ref = "playServicesMaps" }
places = { group = "com.google.android.libraries.places", name = "places", version.ref = "places" }
secretsGradlePlugin = { module = "com.google.android.libraries.mapsplatform.secrets-gradle-plugin:secrets-gradle-plugin", version.ref = "secretsGradlePlugin" }
diff --git a/tutorials/kotlin/CurrentPlaceDetailsOnMap/gradle/wrapper/gradle-wrapper.jar b/tutorials/kotlin/CurrentPlaceDetailsOnMap/gradle/wrapper/gradle-wrapper.jar
index 7f93135c4..a4b76b953 100644
Binary files a/tutorials/kotlin/CurrentPlaceDetailsOnMap/gradle/wrapper/gradle-wrapper.jar and b/tutorials/kotlin/CurrentPlaceDetailsOnMap/gradle/wrapper/gradle-wrapper.jar differ
diff --git a/tutorials/kotlin/CurrentPlaceDetailsOnMap/gradle/wrapper/gradle-wrapper.properties b/tutorials/kotlin/CurrentPlaceDetailsOnMap/gradle/wrapper/gradle-wrapper.properties
index 477c643c3..e2847c820 100644
--- a/tutorials/kotlin/CurrentPlaceDetailsOnMap/gradle/wrapper/gradle-wrapper.properties
+++ b/tutorials/kotlin/CurrentPlaceDetailsOnMap/gradle/wrapper/gradle-wrapper.properties
@@ -1,7 +1,6 @@
-#Wed Jul 10 22:18:21 CEST 2024
distributionBase=GRADLE_USER_HOME
distributionPath=wrapper/dists
-distributionUrl=https\://services.gradle.org/distributions/gradle-8.7-bin.zip
+distributionUrl=https\://services.gradle.org/distributions/gradle-8.11.1-bin.zip
networkTimeout=10000
validateDistributionUrl=true
zipStoreBase=GRADLE_USER_HOME
diff --git a/tutorials/kotlin/CurrentPlaceDetailsOnMap/gradlew b/tutorials/kotlin/CurrentPlaceDetailsOnMap/gradlew
index 1aa94a426..f5feea6d6 100755
--- a/tutorials/kotlin/CurrentPlaceDetailsOnMap/gradlew
+++ b/tutorials/kotlin/CurrentPlaceDetailsOnMap/gradlew
@@ -15,6 +15,8 @@
# See the License for the specific language governing permissions and
# limitations under the License.
#
+# SPDX-License-Identifier: Apache-2.0
+#
##############################################################################
#
@@ -55,7 +57,7 @@
# Darwin, MinGW, and NonStop.
#
# (3) This script is generated from the Groovy template
-# https://github.com/gradle/gradle/blob/HEAD/subprojects/plugins/src/main/resources/org/gradle/api/internal/plugins/unixStartScript.txt
+# https://github.com/gradle/gradle/blob/HEAD/platforms/jvm/plugins-application/src/main/resources/org/gradle/api/internal/plugins/unixStartScript.txt
# within the Gradle project.
#
# You can find Gradle at https://github.com/gradle/gradle/.
@@ -84,7 +86,8 @@ done
# shellcheck disable=SC2034
APP_BASE_NAME=${0##*/}
# Discard cd standard output in case $CDPATH is set (https://github.com/gradle/gradle/issues/25036)
-APP_HOME=$( cd "${APP_HOME:-./}" > /dev/null && pwd -P ) || exit
+APP_HOME=$( cd -P "${APP_HOME:-./}" > /dev/null && printf '%s
+' "$PWD" ) || exit
# Use the maximum available, or set MAX_FD != -1 to use that value.
MAX_FD=maximum
diff --git a/tutorials/kotlin/CurrentPlaceDetailsOnMap/gradlew.bat b/tutorials/kotlin/CurrentPlaceDetailsOnMap/gradlew.bat
index 6689b85be..9b42019c7 100644
--- a/tutorials/kotlin/CurrentPlaceDetailsOnMap/gradlew.bat
+++ b/tutorials/kotlin/CurrentPlaceDetailsOnMap/gradlew.bat
@@ -13,6 +13,8 @@
@rem See the License for the specific language governing permissions and
@rem limitations under the License.
@rem
+@rem SPDX-License-Identifier: Apache-2.0
+@rem
@if "%DEBUG%"=="" @echo off
@rem ##########################################################################
@@ -43,11 +45,11 @@ set JAVA_EXE=java.exe
%JAVA_EXE% -version >NUL 2>&1
if %ERRORLEVEL% equ 0 goto execute
-echo.
-echo ERROR: JAVA_HOME is not set and no 'java' command could be found in your PATH.
-echo.
-echo Please set the JAVA_HOME variable in your environment to match the
-echo location of your Java installation.
+echo. 1>&2
+echo ERROR: JAVA_HOME is not set and no 'java' command could be found in your PATH. 1>&2
+echo. 1>&2
+echo Please set the JAVA_HOME variable in your environment to match the 1>&2
+echo location of your Java installation. 1>&2
goto fail
@@ -57,11 +59,11 @@ set JAVA_EXE=%JAVA_HOME%/bin/java.exe
if exist "%JAVA_EXE%" goto execute
-echo.
-echo ERROR: JAVA_HOME is set to an invalid directory: %JAVA_HOME%
-echo.
-echo Please set the JAVA_HOME variable in your environment to match the
-echo location of your Java installation.
+echo. 1>&2
+echo ERROR: JAVA_HOME is set to an invalid directory: %JAVA_HOME% 1>&2
+echo. 1>&2
+echo Please set the JAVA_HOME variable in your environment to match the 1>&2
+echo location of your Java installation. 1>&2
goto fail
diff --git a/tutorials/kotlin/MapWithMarker/gradle/libs.versions.toml b/tutorials/kotlin/MapWithMarker/gradle/libs.versions.toml
index 3a5e75fd9..62a3e6e5d 100644
--- a/tutorials/kotlin/MapWithMarker/gradle/libs.versions.toml
+++ b/tutorials/kotlin/MapWithMarker/gradle/libs.versions.toml
@@ -1,16 +1,16 @@
[versions]
-compileSdk = "34"
-gradle = "8.5.2"
-kotlinGradlePlugin = "2.0.0"
+compileSdk = "36"
+gradle = "8.10.1"
+kotlinGradlePlugin = "2.2.0"
minSdk = "21"
secretsGradlePlugin = "2.0.1"
-targetSdk = "34"
+targetSdk = "36"
versionCode = "1"
versionName = "1.0"
-kotlin = "2.0.0"
-coreKtx = "1.13.1"
-appcompat = "1.7.0"
-playServicesMaps = "19.0.0"
+kotlin = "2.2.0"
+coreKtx = "1.16.0"
+appcompat = "1.7.1"
+playServicesMaps = "19.2.0"
junit = "4.13.2"
androidxTestExtJunit = "1.2.1"
espressoCore = "3.6.1"
diff --git a/tutorials/kotlin/MapWithMarker/gradle/wrapper/gradle-wrapper.properties b/tutorials/kotlin/MapWithMarker/gradle/wrapper/gradle-wrapper.properties
index 7180069d9..05348adac 100644
--- a/tutorials/kotlin/MapWithMarker/gradle/wrapper/gradle-wrapper.properties
+++ b/tutorials/kotlin/MapWithMarker/gradle/wrapper/gradle-wrapper.properties
@@ -1,7 +1,7 @@
-#Wed Jul 10 22:19:11 CEST 2024
+#Tue Jun 24 14:55:12 CEST 2025
distributionBase=GRADLE_USER_HOME
distributionPath=wrapper/dists
-distributionUrl=https\://services.gradle.org/distributions/gradle-8.7-bin.zip
+distributionUrl=https\://services.gradle.org/distributions/gradle-8.11.1-bin.zip
networkTimeout=10000
validateDistributionUrl=true
zipStoreBase=GRADLE_USER_HOME
diff --git a/tutorials/kotlin/Polygons/build.gradle.kts b/tutorials/kotlin/Polygons/build.gradle.kts
index 89e123657..404eb7c4f 100644
--- a/tutorials/kotlin/Polygons/build.gradle.kts
+++ b/tutorials/kotlin/Polygons/build.gradle.kts
@@ -17,15 +17,14 @@
// Top-level build file where you can add configuration options common to all sub-projects/modules.
buildscript {
- val kotlinVersion = "2.0.0"
repositories {
mavenCentral()
google()
}
dependencies {
- classpath("com.android.tools.build:gradle:8.5.0")
- classpath("org.jetbrains.kotlin:kotlin-gradle-plugin:$kotlinVersion")
- classpath("com.google.android.libraries.mapsplatform.secrets-gradle-plugin:secrets-gradle-plugin:2.0.1")
+ classpath(libs.gradle)
+ classpath(libs.secretsGradlePlugin)
+ classpath(libs.kotlinGradlePlugin)
// NOTE: Do not place your application dependencies here; they belong
// in the individual module build.gradle files
diff --git a/tutorials/kotlin/Polygons/gradle/libs.versions.toml b/tutorials/kotlin/Polygons/gradle/libs.versions.toml
index 5d6d71381..e91dba1b8 100644
--- a/tutorials/kotlin/Polygons/gradle/libs.versions.toml
+++ b/tutorials/kotlin/Polygons/gradle/libs.versions.toml
@@ -1,17 +1,20 @@
[versions]
-compileSdk = "34"
+compileSdk = "36"
minSdk = "21"
-targetSdk = "34"
+targetSdk = "36"
versionCode = "1"
versionName = "1.0"
-kotlin = "2.0.0"
-appcompat = "1.7.0"
-playServicesMaps = "19.0.0"
+kotlin = "2.2.0"
+appcompat = "1.7.1"
+playServicesMaps = "19.2.0"
junit = "4.13.2"
androidxTestExtJunit = "1.2.1"
espressoCore = "3.6.1"
-coreKtx = "1.13.1"
+coreKtx = "1.16.0"
javaVersion = "21"
+gradle = "8.10.1"
+kotlinGradlePlugin = "2.2.0"
+secretsGradlePlugin = "2.0.1"
[libraries]
appcompat = { group = "androidx.appcompat", name = "appcompat", version.ref = "appcompat" }
@@ -21,3 +24,6 @@ junit = { group = "junit", name = "junit", version.ref = "junit" }
androidxTestExtJunit = { group = "androidx.test.ext", name = "junit", version.ref = "androidxTestExtJunit" }
espressoCore = { group = "androidx.test.espresso", name = "espresso-core", version.ref = "espressoCore" }
kotlinStdlib = { group = "org.jetbrains.kotlin", name = "kotlin-stdlib-jdk7", version.ref = "kotlin" }
+gradle = { module = "com.android.tools.build:gradle", version.ref = "gradle" }
+secretsGradlePlugin = { module = "com.google.android.libraries.mapsplatform.secrets-gradle-plugin:secrets-gradle-plugin", version.ref = "secretsGradlePlugin" }
+kotlinGradlePlugin = { module = "org.jetbrains.kotlin:kotlin-gradle-plugin", version.ref = "kotlinGradlePlugin" }
\ No newline at end of file
diff --git a/tutorials/kotlin/Polygons/gradle/wrapper/gradle-wrapper.jar b/tutorials/kotlin/Polygons/gradle/wrapper/gradle-wrapper.jar
index 7f93135c4..a4b76b953 100644
Binary files a/tutorials/kotlin/Polygons/gradle/wrapper/gradle-wrapper.jar and b/tutorials/kotlin/Polygons/gradle/wrapper/gradle-wrapper.jar differ
diff --git a/tutorials/kotlin/Polygons/gradle/wrapper/gradle-wrapper.properties b/tutorials/kotlin/Polygons/gradle/wrapper/gradle-wrapper.properties
index b490b8cce..e2847c820 100644
--- a/tutorials/kotlin/Polygons/gradle/wrapper/gradle-wrapper.properties
+++ b/tutorials/kotlin/Polygons/gradle/wrapper/gradle-wrapper.properties
@@ -1,7 +1,6 @@
-#Wed Jul 10 22:20:02 CEST 2024
distributionBase=GRADLE_USER_HOME
distributionPath=wrapper/dists
-distributionUrl=https\://services.gradle.org/distributions/gradle-8.7-bin.zip
+distributionUrl=https\://services.gradle.org/distributions/gradle-8.11.1-bin.zip
networkTimeout=10000
validateDistributionUrl=true
zipStoreBase=GRADLE_USER_HOME
diff --git a/tutorials/kotlin/Polygons/gradlew b/tutorials/kotlin/Polygons/gradlew
index 1aa94a426..f5feea6d6 100755
--- a/tutorials/kotlin/Polygons/gradlew
+++ b/tutorials/kotlin/Polygons/gradlew
@@ -15,6 +15,8 @@
# See the License for the specific language governing permissions and
# limitations under the License.
#
+# SPDX-License-Identifier: Apache-2.0
+#
##############################################################################
#
@@ -55,7 +57,7 @@
# Darwin, MinGW, and NonStop.
#
# (3) This script is generated from the Groovy template
-# https://github.com/gradle/gradle/blob/HEAD/subprojects/plugins/src/main/resources/org/gradle/api/internal/plugins/unixStartScript.txt
+# https://github.com/gradle/gradle/blob/HEAD/platforms/jvm/plugins-application/src/main/resources/org/gradle/api/internal/plugins/unixStartScript.txt
# within the Gradle project.
#
# You can find Gradle at https://github.com/gradle/gradle/.
@@ -84,7 +86,8 @@ done
# shellcheck disable=SC2034
APP_BASE_NAME=${0##*/}
# Discard cd standard output in case $CDPATH is set (https://github.com/gradle/gradle/issues/25036)
-APP_HOME=$( cd "${APP_HOME:-./}" > /dev/null && pwd -P ) || exit
+APP_HOME=$( cd -P "${APP_HOME:-./}" > /dev/null && printf '%s
+' "$PWD" ) || exit
# Use the maximum available, or set MAX_FD != -1 to use that value.
MAX_FD=maximum
diff --git a/tutorials/kotlin/Polygons/gradlew.bat b/tutorials/kotlin/Polygons/gradlew.bat
index 6689b85be..9b42019c7 100644
--- a/tutorials/kotlin/Polygons/gradlew.bat
+++ b/tutorials/kotlin/Polygons/gradlew.bat
@@ -13,6 +13,8 @@
@rem See the License for the specific language governing permissions and
@rem limitations under the License.
@rem
+@rem SPDX-License-Identifier: Apache-2.0
+@rem
@if "%DEBUG%"=="" @echo off
@rem ##########################################################################
@@ -43,11 +45,11 @@ set JAVA_EXE=java.exe
%JAVA_EXE% -version >NUL 2>&1
if %ERRORLEVEL% equ 0 goto execute
-echo.
-echo ERROR: JAVA_HOME is not set and no 'java' command could be found in your PATH.
-echo.
-echo Please set the JAVA_HOME variable in your environment to match the
-echo location of your Java installation.
+echo. 1>&2
+echo ERROR: JAVA_HOME is not set and no 'java' command could be found in your PATH. 1>&2
+echo. 1>&2
+echo Please set the JAVA_HOME variable in your environment to match the 1>&2
+echo location of your Java installation. 1>&2
goto fail
@@ -57,11 +59,11 @@ set JAVA_EXE=%JAVA_HOME%/bin/java.exe
if exist "%JAVA_EXE%" goto execute
-echo.
-echo ERROR: JAVA_HOME is set to an invalid directory: %JAVA_HOME%
-echo.
-echo Please set the JAVA_HOME variable in your environment to match the
-echo location of your Java installation.
+echo. 1>&2
+echo ERROR: JAVA_HOME is set to an invalid directory: %JAVA_HOME% 1>&2
+echo. 1>&2
+echo Please set the JAVA_HOME variable in your environment to match the 1>&2
+echo location of your Java installation. 1>&2
goto fail