feat: removed v3 in favour of gms

This commit is contained in:
Enrique López Mañas 2024-07-23 13:30:33 +02:00
parent 4297488454
commit 7b2c89f4a6
202 changed files with 263 additions and 9632 deletions

View File

@ -1,67 +0,0 @@
import org.apache.tools.ant.filters.ConcatFilter
plugins {
id 'com.android.application'
id 'project-report'
id 'com.google.android.libraries.mapsplatform.secrets-gradle-plugin'
}
android {
compileSdk 34
defaultConfig {
applicationId "com.example.mapdemo"
minSdk 21
targetSdk 34
versionCode 1
versionName "1.0"
multiDexEnabled true
}
buildFeatures {
compose true
buildConfig = true
}
buildTypes {
release {
minifyEnabled false
proguardFiles getDefaultProguardFile('proguard-android.txt'), 'proguard-rules.pro'
}
}
flavorDimensions "version"
productFlavors {
gms {
dimension "version"
applicationIdSuffix ".gms"
versionNameSuffix "-gms"
}
}
compileOptions {
sourceCompatibility JavaVersion.VERSION_17
targetCompatibility JavaVersion.VERSION_17
}
namespace "com.example.mapdemo"
}
dependencies {
implementation 'androidx.appcompat:appcompat:1.7.0'
implementation "androidx.recyclerview:recyclerview:1.3.2"
implementation 'com.android.volley:volley:1.2.1'
implementation(platform("org.jetbrains.kotlin:kotlin-bom:2.0.0"))
// GMS
gmsImplementation 'com.google.android.gms:play-services-maps:19.0.0'
// Tests
testImplementation 'junit:junit:4.13.2'
androidTestImplementation 'androidx.test.ext:junit:1.2.1'
androidTestImplementation 'androidx.test.espresso:espresso-core:3.6.1'
}
secrets {
// Optionally specify a different file name containing your secrets.
// The plugin defaults to "local.properties"
propertiesFileName = "secrets.properties"
// A properties file containing default secret values. This file can be
// checked in version control.
defaultPropertiesFileName = "local.defaults.properties"
}

View File

@ -0,0 +1,73 @@
import org.apache.tools.ant.filters.ConcatFilter
plugins {
id("com.android.application")
id("project-report")
id("com.google.android.libraries.mapsplatform.secrets-gradle-plugin")
}
android {
compileSdk = 34
defaultConfig {
applicationId = "com.example.mapdemo"
minSdk = 21
targetSdk = 34
versionCode = 1
versionName = "1.0"
multiDexEnabled = true
}
buildFeatures {
compose = true
buildConfig = true
}
buildTypes {
getByName("release") {
isMinifyEnabled = false
proguardFiles(getDefaultProguardFile("proguard-android.txt"), "proguard-rules.pro")
}
}
flavorDimensions.add("version")
productFlavors {
create("gms") {
dimension = "version"
applicationIdSuffix = ".gms"
versionNameSuffix = "-gms"
}
}
compileOptions {
sourceCompatibility = JavaVersion.VERSION_17
targetCompatibility = JavaVersion.VERSION_17
}
namespace = "com.example.mapdemo"
}
dependencies {
implementation("androidx.appcompat:appcompat:1.7.0")
implementation("androidx.recyclerview:recyclerview:1.3.2")
implementation("com.android.volley:volley:1.2.1")
implementation(platform("org.jetbrains.kotlin:kotlin-bom:2.0.0"))
// GMS
implementation("com.google.android.gms:play-services-maps:19.0.0")
// Tests
testImplementation("junit:junit:4.13.2")
androidTestImplementation("androidx.test.ext:junit:1.2.1")
androidTestImplementation("androidx.test.espresso:espresso-core:3.6.1")
}
secrets {
// Optionally specify a different file name containing your secrets.
// The plugin defaults to "local.properties"
propertiesFileName = "secrets.properties"
// A properties file containing default secret values. This file can be
// checked in version control.
defaultPropertiesFileName = "local.defaults.properties"
}

View File

@ -1,158 +0,0 @@
<?xml version="1.0" encoding="utf-8"?><!--
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.
-->
<manifest xmlns:android="http://schemas.android.com/apk/res/android">
<application
android:allowBackup="true"
android:icon="@mipmap/ic_launcher"
android:label="@string/demo_title"
android:supportsRtl="true"
android:theme="@style/AppTheme">
<activity android:name=".MainActivity"
android:exported="true">
<intent-filter>
<action android:name="android.intent.action.MAIN" />
<category android:name="android.intent.category.LAUNCHER" />
</intent-filter>
</activity>
<activity
android:name=".AdvancedMarkersDemoActivity"
android:label="@string/advanced_markers_demo_label" />
<activity
android:name=".BasicMapDemoActivity"
android:label="@string/basic_map_demo_label" />
<activity
android:name=".BackgroundColorCustomizationDemoActivity"
android:label="@string/background_color_customization_demo_label"/>
<activity
android:name=".BackgroundColorCustomizationProgrammaticDemoActivity"
android:label="@string/background_color_customization_programmatic_demo_label"/>
<activity
android:name=".CameraDemoActivity"
android:label="@string/camera_demo_label" />
<activity
android:name=".CameraClampingDemoActivity"
android:label="@string/camera_clamping_demo_label" />
<activity
android:name=".CloudBasedMapStylingDemoActivity"
android:label="@string/cloud_styling_label" />
<activity
android:name=".CircleDemoActivity"
android:label="@string/circle_demo_label" />
<activity
android:name=".EventsDemoActivity"
android:label="@string/events_demo_label" />
<activity
android:name=".GroundOverlayDemoActivity"
android:label="@string/ground_overlay_demo_label" />
<activity
android:name=".IndoorDemoActivity"
android:label="@string/indoor_demo_label" />
<activity
android:name=".LayersDemoActivity"
android:label="@string/layers_demo_label" />
<activity
android:name=".LiteDemoActivity"
android:label="@string/lite_demo_label" />
<activity
android:name=".LiteListDemoActivity"
android:label="@string/lite_list_demo_label" />
<activity
android:name=".LocationSourceDemoActivity"
android:label="@string/location_source_demo_label" />
<activity
android:name=".MapInPagerDemoActivity"
android:label="@string/map_in_pager_demo_label" />
<activity
android:name=".MapColorSchemeActivity"
android:label="@string/marker_demo_label" />
<activity
android:name=".MarkerDemoActivity"
android:label="@string/marker_demo_label" />
<activity
android:name=".MarkerCloseInfoWindowOnRetapDemoActivity"
android:label="@string/marker_close_info_window_on_retap_demo_label" />
<activity
android:name=".PolylineDemoActivity"
android:label="@string/polyline_demo_label" />
<activity
android:name=".MultiMapDemoActivity"
android:label="@string/multi_map_demo_label" />
<activity
android:name=".MyLocationDemoActivity"
android:label="@string/my_location_demo_label" />
<activity
android:name=".OptionsDemoActivity"
android:label="@string/options_demo_label" />
<activity
android:name=".PolygonDemoActivity"
android:label="@string/polygon_demo_label" />
<activity
android:name=".ProgrammaticDemoActivity"
android:label="@string/programmatic_demo_label" />
<activity
android:name=".RawMapViewDemoActivity"
android:label="@string/raw_map_view_demo_label" />
<activity
android:name=".RetainMapDemoActivity"
android:label="@string/retain_map_demo_label" />
<activity
android:name=".SaveStateDemoActivity"
android:label="@string/save_state_demo_label" />
<activity
android:name=".SnapshotDemoActivity"
android:label="@string/snapshot_demo_label" />
<activity
android:name=".SplitStreetViewPanoramaAndMapDemoActivity"
android:label="@string/split_street_view_panorama_and_map_demo_label" />
<activity
android:name=".StreetViewPanoramaBasicDemoActivity"
android:label="@string/street_view_panorama_basic_demo_label" />
<activity
android:name=".StreetViewPanoramaEventsDemoActivity"
android:label="@string/street_view_panorama_events_demo_label" />
<activity
android:name=".StreetViewPanoramaNavigationDemoActivity"
android:label="@string/street_view_panorama_navigation_demo_label" />
<activity
android:name=".StreetViewPanoramaOptionsDemoActivity"
android:label="@string/street_view_panorama_options_demo_label" />
<activity
android:name=".StreetViewPanoramaViewDemoActivity"
android:label="@string/street_view_panorama_view_demo_label" />
<activity
android:name=".StyledMapDemoActivity"
android:label="@string/styled_map_demo_label" />
<activity
android:name=".TagsDemoActivity"
android:label="@string/tags_demo_label" />
<activity
android:name=".TileCoordinateDemoActivity"
android:label="@string/tile_coordinate_demo_label" />
<activity
android:name=".TileOverlayDemoActivity"
android:label="@string/tile_overlay_demo_label" />
<activity
android:name=".UiSettingsDemoActivity"
android:label="@string/ui_settings_demo_label" />
<activity
android:name=".VisibleRegionDemoActivity"
android:label="@string/visible_region_demo_label" />
</application>
</manifest>

View File

@ -49,6 +49,143 @@
android:name="com.google.android.geo.API_KEY"
android:value="${MAPS_API_KEY}" />
<activity android:name=".MainActivity"
android:exported="true">
<intent-filter>
<action android:name="android.intent.action.MAIN" />
<category android:name="android.intent.category.LAUNCHER" />
</intent-filter>
</activity>
<activity
android:name=".AdvancedMarkersDemoActivity"
android:label="@string/advanced_markers_demo_label" />
<activity
android:name=".BasicMapDemoActivity"
android:label="@string/basic_map_demo_label" />
<activity
android:name=".BackgroundColorCustomizationDemoActivity"
android:label="@string/background_color_customization_demo_label"/>
<activity
android:name=".BackgroundColorCustomizationProgrammaticDemoActivity"
android:label="@string/background_color_customization_programmatic_demo_label"/>
<activity
android:name=".CameraDemoActivity"
android:label="@string/camera_demo_label" />
<activity
android:name=".CameraClampingDemoActivity"
android:label="@string/camera_clamping_demo_label" />
<activity
android:name=".CloudBasedMapStylingDemoActivity"
android:label="@string/cloud_styling_label" />
<activity
android:name=".CircleDemoActivity"
android:label="@string/circle_demo_label" />
<activity
android:name=".EventsDemoActivity"
android:label="@string/events_demo_label" />
<activity
android:name=".GroundOverlayDemoActivity"
android:label="@string/ground_overlay_demo_label" />
<activity
android:name=".IndoorDemoActivity"
android:label="@string/indoor_demo_label" />
<activity
android:name=".LayersDemoActivity"
android:label="@string/layers_demo_label" />
<activity
android:name=".LiteDemoActivity"
android:label="@string/lite_demo_label" />
<activity
android:name=".LiteListDemoActivity"
android:label="@string/lite_list_demo_label" />
<activity
android:name=".LocationSourceDemoActivity"
android:label="@string/location_source_demo_label" />
<activity
android:name=".MapInPagerDemoActivity"
android:label="@string/map_in_pager_demo_label" />
<activity
android:name=".MapColorSchemeActivity"
android:label="@string/marker_demo_label" />
<activity
android:name=".MarkerDemoActivity"
android:label="@string/marker_demo_label" />
<activity
android:name=".MarkerCloseInfoWindowOnRetapDemoActivity"
android:label="@string/marker_close_info_window_on_retap_demo_label" />
<activity
android:name=".MarkerCollisionDemoActivity"
android:label="@string/marker_collision_label" />
<activity
android:name=".PolylineDemoActivity"
android:label="@string/polyline_demo_label" />
<activity
android:name=".PolylineDemoActivity"
android:label="@string/polyline_demo_label" />
<activity
android:name=".MultiMapDemoActivity"
android:label="@string/multi_map_demo_label" />
<activity
android:name=".MyLocationDemoActivity"
android:label="@string/my_location_demo_label" />
<activity
android:name=".OptionsDemoActivity"
android:label="@string/options_demo_label" />
<activity
android:name=".PolygonDemoActivity"
android:label="@string/polygon_demo_label" />
<activity
android:name=".ProgrammaticDemoActivity"
android:label="@string/programmatic_demo_label" />
<activity
android:name=".RawMapViewDemoActivity"
android:label="@string/raw_map_view_demo_label" />
<activity
android:name=".RetainMapDemoActivity"
android:label="@string/retain_map_demo_label" />
<activity
android:name=".SaveStateDemoActivity"
android:label="@string/save_state_demo_label" />
<activity
android:name=".SnapshotDemoActivity"
android:label="@string/snapshot_demo_label" />
<activity
android:name=".SplitStreetViewPanoramaAndMapDemoActivity"
android:label="@string/split_street_view_panorama_and_map_demo_label" />
<activity
android:name=".StreetViewPanoramaBasicDemoActivity"
android:label="@string/street_view_panorama_basic_demo_label" />
<activity
android:name=".StreetViewPanoramaEventsDemoActivity"
android:label="@string/street_view_panorama_events_demo_label" />
<activity
android:name=".StreetViewPanoramaNavigationDemoActivity"
android:label="@string/street_view_panorama_navigation_demo_label" />
<activity
android:name=".StreetViewPanoramaOptionsDemoActivity"
android:label="@string/street_view_panorama_options_demo_label" />
<activity
android:name=".StreetViewPanoramaViewDemoActivity"
android:label="@string/street_view_panorama_view_demo_label" />
<activity
android:name=".StyledMapDemoActivity"
android:label="@string/styled_map_demo_label" />
<activity
android:name=".TagsDemoActivity"
android:label="@string/tags_demo_label" />
<activity
android:name=".TileCoordinateDemoActivity"
android:label="@string/tile_coordinate_demo_label" />
<activity
android:name=".TileOverlayDemoActivity"
android:label="@string/tile_overlay_demo_label" />
<activity
android:name=".UiSettingsDemoActivity"
android:label="@string/ui_settings_demo_label" />
<activity
android:name=".VisibleRegionDemoActivity"
android:label="@string/visible_region_demo_label" />
</application>
</manifest>

View File

@ -12,7 +12,6 @@
// See the License for the specific language governing permissions and
// limitations under the License.
package com.example.mapdemo;
import com.google.android.gms.maps.CameraUpdateFactory;

View File

@ -17,17 +17,22 @@
package com.example.mapdemo;
import android.os.Bundle;
import androidx.appcompat.app.AppCompatActivity;
import com.google.android.libraries.maps.CameraUpdateFactory;
import com.google.android.libraries.maps.GoogleMap;
import com.google.android.libraries.maps.OnMapReadyCallback;
import com.google.android.libraries.maps.SupportMapFragment;
import com.google.android.libraries.maps.model.BitmapDescriptorFactory;
import com.google.android.libraries.maps.model.LatLng;
import com.google.android.libraries.maps.model.Marker;
import com.google.android.libraries.maps.model.MarkerOptions;
/** This shows how to set collision behavior for the marker. */
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.AdvancedMarkerOptions;
import com.google.android.gms.maps.model.BitmapDescriptorFactory;
import com.google.android.gms.maps.model.LatLng;
import com.google.android.gms.maps.model.MarkerOptions;
/**
* This shows how to set collision behavior for the marker.
*/
public class MarkerCollisionDemoActivity extends AppCompatActivity implements OnMapReadyCallback {
private static final LatLng SYDNEY = new LatLng(-33.87365, 151.20689);
@ -40,7 +45,7 @@ public class MarkerCollisionDemoActivity extends AppCompatActivity implements On
setContentView(R.layout.marker_collision_demo);
SupportMapFragment mapFragment =
(SupportMapFragment) getSupportFragmentManager().findFragmentById(R.id.map);
(SupportMapFragment) getSupportFragmentManager().findFragmentById(R.id.map);
mapFragment.getMapAsync(this);
}
@ -52,30 +57,30 @@ public class MarkerCollisionDemoActivity extends AppCompatActivity implements On
}
private void addMarkersToMap() {
MarkerOptions defaultMarkerOptions = new MarkerOptions();
AdvancedMarkerOptions defaultMarkerOptions = new AdvancedMarkerOptions();
// Add 100 markers to the map.
for (int i = 0; i < 10; i++) {
for (int j = 0; j < 10; j++) {
defaultMarkerOptions
.position(new LatLng(SYDNEY.latitude + i, SYDNEY.longitude - j))
.zIndex(i * 10 + j)
.title("zIndex:" + (i * 10 + j))
.draggable(true);
.position(new LatLng(SYDNEY.latitude + i, SYDNEY.longitude - j))
.zIndex(i * 10 + j)
.title("zIndex:" + (i * 10 + j))
.draggable(true);
if ((i + j) % 3 == 0) {
defaultMarkerOptions.icon(
BitmapDescriptorFactory.defaultMarker(BitmapDescriptorFactory.HUE_GREEN));
BitmapDescriptorFactory.defaultMarker(BitmapDescriptorFactory.HUE_GREEN));
defaultMarkerOptions.collisionBehavior(
Marker.CollisionBehavior.OPTIONAL_AND_HIDES_LOWER_PRIORITY);
AdvancedMarkerOptions.CollisionBehavior.OPTIONAL_AND_HIDES_LOWER_PRIORITY);
} else if ((i + j) % 3 == 1) {
defaultMarkerOptions.icon(
BitmapDescriptorFactory.defaultMarker(BitmapDescriptorFactory.HUE_RED));
defaultMarkerOptions.collisionBehavior(Marker.CollisionBehavior.REQUIRED_AND_HIDES_OPTIONAL);
BitmapDescriptorFactory.defaultMarker(BitmapDescriptorFactory.HUE_RED));
defaultMarkerOptions.collisionBehavior(AdvancedMarkerOptions.CollisionBehavior.REQUIRED_AND_HIDES_OPTIONAL);
} else {
defaultMarkerOptions.icon(
BitmapDescriptorFactory.defaultMarker(BitmapDescriptorFactory.HUE_BLUE));
defaultMarkerOptions.collisionBehavior(Marker.CollisionBehavior.REQUIRED);
BitmapDescriptorFactory.defaultMarker(BitmapDescriptorFactory.HUE_BLUE));
defaultMarkerOptions.collisionBehavior(AdvancedMarkerOptions.CollisionBehavior.REQUIRED);
}
map.addMarker(defaultMarkerOptions);
}

View File

@ -16,7 +16,8 @@
package com.example.mapdemo.model;
import com.google.android.libraries.maps.model.LatLng;
import com.google.android.gms.maps.model.LatLng;
import java.util.ArrayList;
import java.util.List;

View File

@ -23,12 +23,13 @@ import android.view.ViewGroup;
import android.widget.RadioGroup;
import android.widget.RadioGroup.OnCheckedChangeListener;
import com.example.mapdemo.R;
import com.google.android.libraries.maps.model.BitmapDescriptorFactory;
import com.google.android.libraries.maps.model.ButtCap;
import com.google.android.libraries.maps.model.Cap;
import com.google.android.libraries.maps.model.CustomCap;
import com.google.android.libraries.maps.model.RoundCap;
import com.google.android.libraries.maps.model.SquareCap;
import com.google.android.gms.maps.model.BitmapDescriptorFactory;
import com.google.android.gms.maps.model.ButtCap;
import com.google.android.gms.maps.model.Cap;
import com.google.android.gms.maps.model.CustomCap;
import com.google.android.gms.maps.model.RoundCap;
import com.google.android.gms.maps.model.SquareCap;
import java.util.HashMap;
import java.util.Map;

View File

@ -17,7 +17,8 @@
package com.example.mapdemo.polyline;
import androidx.fragment.app.Fragment;
import com.google.android.libraries.maps.model.Polyline;
import com.google.android.gms.maps.model.Polyline;
public abstract class PolylineControlFragment extends Fragment {
protected Polyline polyline;

View File

@ -23,7 +23,8 @@ import android.view.ViewGroup;
import android.widget.RadioGroup;
import android.widget.RadioGroup.OnCheckedChangeListener;
import com.example.mapdemo.R;
import com.google.android.libraries.maps.model.JointType;
import com.google.android.gms.maps.model.JointType;
import java.util.HashMap;
import java.util.Map;

View File

@ -24,10 +24,11 @@ import android.view.ViewGroup;
import android.widget.Button;
import android.widget.TextView;
import com.example.mapdemo.R;
import com.google.android.libraries.maps.model.Dash;
import com.google.android.libraries.maps.model.Dot;
import com.google.android.libraries.maps.model.Gap;
import com.google.android.libraries.maps.model.PatternItem;
import com.google.android.gms.maps.model.Dash;
import com.google.android.gms.maps.model.Dot;
import com.google.android.gms.maps.model.Gap;
import com.google.android.gms.maps.model.PatternItem;
import java.util.ArrayList;
import java.util.Arrays;
import java.util.List;

View File

@ -28,7 +28,8 @@ import android.widget.TextView;
import com.example.mapdemo.R;
import com.example.mapdemo.anim.AnimationManager;
import com.example.mapdemo.model.MoveDirection;
import com.google.android.libraries.maps.model.LatLng;
import com.google.android.gms.maps.model.LatLng;
import java.util.List;
/** Fragment with "points" UI controls for Polylines, to be used in ViewPager. */

View File

@ -25,11 +25,12 @@ import android.widget.RadioGroup;
import android.widget.SeekBar;
import android.widget.TextView;
import com.example.mapdemo.R;
import com.google.android.libraries.maps.model.BitmapDescriptorFactory;
import com.google.android.libraries.maps.model.Polyline;
import com.google.android.libraries.maps.model.StrokeStyle;
import com.google.android.libraries.maps.model.StyleSpan;
import com.google.android.libraries.maps.model.TextureStyle;
import com.google.android.gms.maps.model.BitmapDescriptorFactory;
import com.google.android.gms.maps.model.Polyline;
import com.google.android.gms.maps.model.StrokeStyle;
import com.google.android.gms.maps.model.StyleSpan;
import com.google.android.gms.maps.model.TextureStyle;
import java.util.ArrayList;
import java.util.HashMap;
import java.util.List;

Some files were not shown because too many files have changed in this diff Show More