diff --git a/ApiDemos/project/common-ui/src/main/res/layout-land/snapshot_demo.xml b/ApiDemos/project/common-ui/src/main/res/layout-land/snapshot_demo.xml
index 09a39ca0..0e71ff3b 100755
--- a/ApiDemos/project/common-ui/src/main/res/layout-land/snapshot_demo.xml
+++ b/ApiDemos/project/common-ui/src/main/res/layout-land/snapshot_demo.xml
@@ -26,7 +26,7 @@
android:layout_weight="1"
android:orientation="horizontal">
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
- /dev/null && printf '%s
-' "$PWD" ) || exit
+APP_HOME=$( cd -P "${APP_HOME:-./}" > /dev/null && printf '%s\n' "$PWD" ) || exit
# Use the maximum available, or set MAX_FD != -1 to use that value.
MAX_FD=maximum
@@ -115,7 +114,7 @@ case "$( uname )" in #(
NONSTOP* ) nonstop=true ;;
esac
-CLASSPATH=$APP_HOME/gradle/wrapper/gradle-wrapper.jar
+CLASSPATH="\\\"\\\""
# Determine the Java command to use to start the JVM.
@@ -206,7 +205,7 @@ fi
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,
+# * DEFAULT_JVM_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.
@@ -214,7 +213,7 @@ DEFAULT_JVM_OPTS='"-Xmx64m" "-Xms64m"'
set -- \
"-Dorg.gradle.appname=$APP_BASE_NAME" \
-classpath "$CLASSPATH" \
- org.gradle.wrapper.GradleWrapperMain \
+ -jar "$APP_HOME/gradle/wrapper/gradle-wrapper.jar" \
"$@"
# Stop when "xargs" is not available.
diff --git a/ApiDemos/project/gradlew.bat b/ApiDemos/project/gradlew.bat
index 9b42019c..5eed7ee8 100644
--- a/ApiDemos/project/gradlew.bat
+++ b/ApiDemos/project/gradlew.bat
@@ -70,11 +70,11 @@ goto fail
:execute
@rem Setup the command line
-set CLASSPATH=%APP_HOME%\gradle\wrapper\gradle-wrapper.jar
+set CLASSPATH=
@rem Execute Gradle
-"%JAVA_EXE%" %DEFAULT_JVM_OPTS% %JAVA_OPTS% %GRADLE_OPTS% "-Dorg.gradle.appname=%APP_BASE_NAME%" -classpath "%CLASSPATH%" org.gradle.wrapper.GradleWrapperMain %*
+"%JAVA_EXE%" %DEFAULT_JVM_OPTS% %JAVA_OPTS% %GRADLE_OPTS% "-Dorg.gradle.appname=%APP_BASE_NAME%" -classpath "%CLASSPATH%" -jar "%APP_HOME%\gradle\wrapper\gradle-wrapper.jar" %*
:end
@rem End local scope for the variables with windows NT shell
diff --git a/ApiDemos/project/java-app/build.gradle.kts b/ApiDemos/project/java-app/build.gradle.kts
index c06573a9..7b4ad439 100644
--- a/ApiDemos/project/java-app/build.gradle.kts
+++ b/ApiDemos/project/java-app/build.gradle.kts
@@ -21,12 +21,12 @@ plugins {
}
android {
- compileSdk = 35
+ compileSdk = 36
defaultConfig {
applicationId = "com.example.mapdemo"
minSdk = 21
- targetSdk = 35
+ targetSdk = 36
versionCode = 1
versionName = "1.16.0"
multiDexEnabled = true
diff --git a/ApiDemos/project/java-app/src/main/java/com/example/mapdemo/BackgroundColorCustomizationProgrammaticDemoActivity.java b/ApiDemos/project/java-app/src/main/java/com/example/mapdemo/BackgroundColorCustomizationProgrammaticDemoActivity.java
index 6515b07f..6416c738 100644
--- a/ApiDemos/project/java-app/src/main/java/com/example/mapdemo/BackgroundColorCustomizationProgrammaticDemoActivity.java
+++ b/ApiDemos/project/java-app/src/main/java/com/example/mapdemo/BackgroundColorCustomizationProgrammaticDemoActivity.java
@@ -16,11 +16,7 @@ package com.example.mapdemo;
import android.graphics.Color;
import android.os.Bundle;
-import android.widget.CheckBox;
-
-import androidx.activity.EdgeToEdge;
import androidx.annotation.Nullable;
-import androidx.appcompat.app.AppCompatActivity;
import androidx.fragment.app.FragmentTransaction;
import com.google.android.gms.maps.GoogleMap;
import com.google.android.gms.maps.GoogleMapOptions;
@@ -28,6 +24,7 @@ import com.google.android.gms.maps.OnMapReadyCallback;
import com.google.android.gms.maps.SupportMapFragment;
import com.google.android.gms.maps.model.LatLng;
import com.google.android.gms.maps.model.MarkerOptions;
+import com.google.android.material.switchmaterial.SwitchMaterial;
/**
* This shows how to to instantiate a SupportMapFragment programmatically with a custom background
@@ -70,7 +67,7 @@ public class BackgroundColorCustomizationProgrammaticDemoActivity extends Sample
public void onMapReady(GoogleMap map) {
map.setMapType(GoogleMap.MAP_TYPE_NONE);
- CheckBox mapTypeToggleCheckbox = findViewById(com.example.common_ui.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/project/java-app/src/main/java/com/example/mapdemo/GroundOverlayDemoActivity.java b/ApiDemos/project/java-app/src/main/java/com/example/mapdemo/GroundOverlayDemoActivity.java
index d99ee0e3..fda88f07 100644
--- a/ApiDemos/project/java-app/src/main/java/com/example/mapdemo/GroundOverlayDemoActivity.java
+++ b/ApiDemos/project/java-app/src/main/java/com/example/mapdemo/GroundOverlayDemoActivity.java
@@ -50,7 +50,7 @@ public class GroundOverlayDemoActivity extends SamplesBaseActivity
private static final LatLng NEAR_NEWARK =
new LatLng(NEWARK.latitude - 0.001, NEWARK.longitude - 0.025);
- private final List images = new ArrayList();
+ private final List images = new ArrayList<>();
private GroundOverlay groundOverlay;
diff --git a/ApiDemos/project/java-app/src/main/java/com/example/mapdemo/MapInPagerDemoActivity.java b/ApiDemos/project/java-app/src/main/java/com/example/mapdemo/MapInPagerDemoActivity.java
index d772eda8..cbb18029 100755
--- a/ApiDemos/project/java-app/src/main/java/com/example/mapdemo/MapInPagerDemoActivity.java
+++ b/ApiDemos/project/java-app/src/main/java/com/example/mapdemo/MapInPagerDemoActivity.java
@@ -22,7 +22,7 @@ import android.view.LayoutInflater;
import android.view.View;
import android.view.ViewGroup;
-import androidx.appcompat.app.AppCompatActivity;
+import androidx.annotation.NonNull;
import androidx.fragment.app.Fragment;
import androidx.fragment.app.FragmentManager;
import androidx.fragment.app.FragmentPagerAdapter;
@@ -71,17 +71,14 @@ public class MapInPagerDemoActivity extends SamplesBaseActivity {
return 3;
}
+ @NonNull
@Override
public Fragment getItem(int position) {
- switch (position) {
- case 0:
- case 1:
- return new TextFragment();
- case 2:
- return SupportMapFragment.newInstance();
- default:
- return null;
- }
+ return switch (position) {
+ case 0, 1 -> new TextFragment();
+ case 2 -> SupportMapFragment.newInstance();
+ default -> throw new IllegalStateException("Unexpected value: " + position);
+ };
}
}
}
diff --git a/ApiDemos/project/java-app/src/main/java/com/example/mapdemo/MarkerDemoActivity.java b/ApiDemos/project/java-app/src/main/java/com/example/mapdemo/MarkerDemoActivity.java
index 03437e39..84fbaece 100644
--- a/ApiDemos/project/java-app/src/main/java/com/example/mapdemo/MarkerDemoActivity.java
+++ b/ApiDemos/project/java-app/src/main/java/com/example/mapdemo/MarkerDemoActivity.java
@@ -198,7 +198,7 @@ public class MarkerDemoActivity extends SamplesBaseActivity implements
*/
private Marker mLastSelectedMarker;
- private final List mMarkerRainbow = new ArrayList();
+ private final List mMarkerRainbow = new ArrayList<>();
private TextView mTopText;
diff --git a/ApiDemos/project/java-app/src/main/java/com/example/mapdemo/SaveStateDemoActivity.java b/ApiDemos/project/java-app/src/main/java/com/example/mapdemo/SaveStateDemoActivity.java
index af2c109f..e12f7c13 100755
--- a/ApiDemos/project/java-app/src/main/java/com/example/mapdemo/SaveStateDemoActivity.java
+++ b/ApiDemos/project/java-app/src/main/java/com/example/mapdemo/SaveStateDemoActivity.java
@@ -30,8 +30,6 @@ import android.os.Bundle;
import android.os.Parcel;
import android.os.Parcelable;
-import androidx.appcompat.app.AppCompatActivity;
-
import java.util.Random;
/**
@@ -70,7 +68,7 @@ public class SaveStateDemoActivity extends SamplesBaseActivity {
static class MarkerInfo implements Parcelable {
public static final Parcelable.Creator CREATOR =
- new Parcelable.Creator() {
+ new Parcelable.Creator<>() {
@Override
public MarkerInfo createFromParcel(Parcel in) {
return new MarkerInfo(in);
diff --git a/ApiDemos/project/java-app/src/main/java/com/example/mapdemo/StyledMapDemoActivity.java b/ApiDemos/project/java-app/src/main/java/com/example/mapdemo/StyledMapDemoActivity.java
index 0cc498ac..8810774d 100644
--- a/ApiDemos/project/java-app/src/main/java/com/example/mapdemo/StyledMapDemoActivity.java
+++ b/ApiDemos/project/java-app/src/main/java/com/example/mapdemo/StyledMapDemoActivity.java
@@ -22,15 +22,14 @@ import com.google.android.gms.maps.SupportMapFragment;
import com.google.android.gms.maps.model.LatLng;
import com.google.android.gms.maps.model.MapStyleOptions;
-import android.content.DialogInterface;
import android.os.Bundle;
import android.util.Log;
import android.view.Menu;
import android.view.MenuItem;
import android.widget.Toast;
+import androidx.annotation.NonNull;
import androidx.appcompat.app.AlertDialog;
-import androidx.appcompat.app.AppCompatActivity;
import java.util.ArrayList;
import java.util.List;
@@ -85,7 +84,7 @@ public class StyledMapDemoActivity extends SamplesBaseActivity implements OnMapR
}
@Override
- public void onMapReady(GoogleMap map) {
+ public void onMapReady(@NonNull GoogleMap map) {
mMap = map;
mMap.moveCamera(CameraUpdateFactory.newLatLngZoom(SYDNEY, 14));
setSelectedStyle();
@@ -122,15 +121,12 @@ public class StyledMapDemoActivity extends SamplesBaseActivity implements OnMapR
AlertDialog.Builder builder = new AlertDialog.Builder(this);
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(com.example.common_ui.R.string.style_set_to, getString(mSelectedStyleId));
- Toast.makeText(getBaseContext(), msg, Toast.LENGTH_SHORT).show();
- Log.d(TAG, msg);
- setSelectedStyle();
- }
+ (dialog, which) -> {
+ mSelectedStyleId = mStyleIds[which];
+ 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();
});
builder.show();
}
diff --git a/ApiDemos/project/kotlin-app/build.gradle.kts b/ApiDemos/project/kotlin-app/build.gradle.kts
index 6136e94c..ee01abb2 100644
--- a/ApiDemos/project/kotlin-app/build.gradle.kts
+++ b/ApiDemos/project/kotlin-app/build.gradle.kts
@@ -1,3 +1,5 @@
+import org.jetbrains.kotlin.gradle.dsl.JvmTarget
+
/*
* Copyright 2025 Google LLC
*
@@ -22,12 +24,12 @@ plugins {
}
android {
- compileSdk = 35
+ compileSdk = 36
defaultConfig {
applicationId = "com.example.kotlindemos"
minSdk = 21
- targetSdk = 35
+ targetSdk = 36
versionCode = 1
versionName = "1.16.0"
testInstrumentationRunner = "android.support.test.runner.AndroidJUnitRunner"
@@ -54,15 +56,13 @@ android {
abortOnError = false
}
- kotlinOptions {
- freeCompilerArgs = listOf("-Xopt-in=kotlin.RequiresOptIn")
- jvmTarget = JavaVersion.VERSION_21.toString()
- }
-
namespace = "com.example.kotlindemos"
}
kotlin {
+ compilerOptions {
+ jvmTarget.set(JvmTarget.JVM_21)
+ }
jvmToolchain(21) // Specify the JVM toolchain version
}
diff --git a/ApiDemos/project/kotlin-app/src/main/AndroidManifest.xml b/ApiDemos/project/kotlin-app/src/main/AndroidManifest.xml
index 51d0fa20..af57f3f7 100644
--- a/ApiDemos/project/kotlin-app/src/main/AndroidManifest.xml
+++ b/ApiDemos/project/kotlin-app/src/main/AndroidManifest.xml
@@ -180,7 +180,7 @@
android:name=".VisibleRegionDemoActivity"
android:exported="true" />
diff --git a/ApiDemos/project/kotlin-app/src/main/java/com/example/kotlindemos/BackgroundColorCustomizationProgrammaticDemoActivity.kt b/ApiDemos/project/kotlin-app/src/main/java/com/example/kotlindemos/BackgroundColorCustomizationProgrammaticDemoActivity.kt
index e9d39f1c..ed9070a9 100644
--- a/ApiDemos/project/kotlin-app/src/main/java/com/example/kotlindemos/BackgroundColorCustomizationProgrammaticDemoActivity.kt
+++ b/ApiDemos/project/kotlin-app/src/main/java/com/example/kotlindemos/BackgroundColorCustomizationProgrammaticDemoActivity.kt
@@ -25,8 +25,6 @@ import android.widget.CheckBox
import com.google.android.gms.maps.model.MarkerOptions
import com.google.android.gms.maps.model.LatLng
import com.example.common_ui.R
-import com.google.android.material.checkbox.MaterialCheckBox
-import com.google.android.material.switchmaterial.SwitchMaterial
/**
* This shows how to to instantiate a SupportMapFragment programmatically with a custom background
diff --git a/ApiDemos/project/kotlin-app/src/main/java/com/example/kotlindemos/CameraClampingDemoActivity.kt b/ApiDemos/project/kotlin-app/src/main/java/com/example/kotlindemos/CameraClampingDemoActivity.kt
index 76e24a9a..c0ac977f 100644
--- a/ApiDemos/project/kotlin-app/src/main/java/com/example/kotlindemos/CameraClampingDemoActivity.kt
+++ b/ApiDemos/project/kotlin-app/src/main/java/com/example/kotlindemos/CameraClampingDemoActivity.kt
@@ -14,7 +14,6 @@
package com.example.kotlindemos
import android.os.Bundle
-import android.util.Log
import android.view.View
import android.widget.Button
import android.widget.TextView
@@ -28,12 +27,9 @@ import com.google.android.gms.maps.SupportMapFragment
import com.google.android.gms.maps.model.CameraPosition
import com.google.android.gms.maps.model.LatLng
import com.google.android.gms.maps.model.LatLngBounds
-import com.google.maps.android.ktx.CameraIdleEvent
import com.google.maps.android.ktx.awaitMap
-import com.google.maps.android.ktx.cameraEvents
import com.google.maps.android.ktx.cameraIdleEvents
import kotlinx.coroutines.ExperimentalCoroutinesApi
-import kotlinx.coroutines.flow.collect
import kotlinx.coroutines.launch
/**
diff --git a/ApiDemos/project/kotlin-app/src/main/java/com/example/kotlindemos/DataDrivenDatasetStylingActivity.kt b/ApiDemos/project/kotlin-app/src/main/java/com/example/kotlindemos/DataDrivenDatasetStylingActivity.kt
index 34ad0bbc..56019000 100644
--- a/ApiDemos/project/kotlin-app/src/main/java/com/example/kotlindemos/DataDrivenDatasetStylingActivity.kt
+++ b/ApiDemos/project/kotlin-app/src/main/java/com/example/kotlindemos/DataDrivenDatasetStylingActivity.kt
@@ -277,9 +277,9 @@ class DataDrivenDatasetStylingActivity : SamplesBaseActivity(), OnMapReadyCallba
val styleFactory = FeatureLayer.StyleFactory { feature: Feature ->
// Set default colors to to yellow and point radius to 8.
- var fillColor = Color.GREEN
- var strokeColor = Color.YELLOW
- var pointRadius = 8F
+ var fillColor: Int
+ var strokeColor: Int
+ val pointRadius = 8F
var strokeWidth = 3F
// Check if the feature is an instance of DatasetFeature.
if (feature is DatasetFeature) {
diff --git a/ApiDemos/project/kotlin-app/src/main/java/com/example/kotlindemos/DemoDetailsList.kt b/ApiDemos/project/kotlin-app/src/main/java/com/example/kotlindemos/DemoDetailsList.kt
index 84c051f7..33504c87 100644
--- a/ApiDemos/project/kotlin-app/src/main/java/com/example/kotlindemos/DemoDetailsList.kt
+++ b/ApiDemos/project/kotlin-app/src/main/java/com/example/kotlindemos/DemoDetailsList.kt
@@ -16,8 +16,6 @@
package com.example.kotlindemos
-import com.example.kotlindemos.polyline.PolylineDemoActivity
-
/**
* A list of all the demos we have available.
*/
diff --git a/ApiDemos/project/kotlin-app/src/main/java/com/example/kotlindemos/PermissionUtils.kt b/ApiDemos/project/kotlin-app/src/main/java/com/example/kotlindemos/PermissionUtils.kt
index 935d1d08..0d4951f0 100644
--- a/ApiDemos/project/kotlin-app/src/main/java/com/example/kotlindemos/PermissionUtils.kt
+++ b/ApiDemos/project/kotlin-app/src/main/java/com/example/kotlindemos/PermissionUtils.kt
@@ -13,7 +13,6 @@
// limitations under the License.
package com.example.kotlindemos
-import android.Manifest
import android.Manifest.permission
import android.app.AlertDialog
import android.app.Dialog
diff --git a/ApiDemos/project/kotlin-app/src/main/java/com/example/kotlindemos/PolylineDemoActivity.kt b/ApiDemos/project/kotlin-app/src/main/java/com/example/kotlindemos/PolylineDemoActivity.kt
index caf76d8b..481dcb36 100644
--- a/ApiDemos/project/kotlin-app/src/main/java/com/example/kotlindemos/PolylineDemoActivity.kt
+++ b/ApiDemos/project/kotlin-app/src/main/java/com/example/kotlindemos/PolylineDemoActivity.kt
@@ -14,7 +14,7 @@
* limitations under the License.
*/
-package com.example.kotlindemos.polyline
+package com.example.kotlindemos
import com.google.android.gms.maps.CameraUpdateFactory
import com.google.android.gms.maps.GoogleMap
@@ -43,8 +43,6 @@ import android.widget.CheckBox
import android.widget.SeekBar
import android.widget.Spinner
-import com.example.kotlindemos.R
-import com.example.kotlindemos.SamplesBaseActivity
import java.util.Arrays
/**
diff --git a/ApiDemos/project/kotlin-app/src/main/java/com/example/kotlindemos/RetainMapDemoActivity.kt b/ApiDemos/project/kotlin-app/src/main/java/com/example/kotlindemos/RetainMapDemoActivity.kt
index 35f2c8ec..7c0f3195 100755
--- a/ApiDemos/project/kotlin-app/src/main/java/com/example/kotlindemos/RetainMapDemoActivity.kt
+++ b/ApiDemos/project/kotlin-app/src/main/java/com/example/kotlindemos/RetainMapDemoActivity.kt
@@ -17,8 +17,6 @@ import android.os.Bundle
import android.view.View
import androidx.lifecycle.lifecycleScope
import com.example.common_ui.R
-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.LatLng
import com.google.maps.android.ktx.addMarker
diff --git a/ApiDemos/project/kotlin-app/src/main/java/com/example/kotlindemos/SaveStateDemoActivity.kt b/ApiDemos/project/kotlin-app/src/main/java/com/example/kotlindemos/SaveStateDemoActivity.kt
index 9b869648..07cbd911 100755
--- a/ApiDemos/project/kotlin-app/src/main/java/com/example/kotlindemos/SaveStateDemoActivity.kt
+++ b/ApiDemos/project/kotlin-app/src/main/java/com/example/kotlindemos/SaveStateDemoActivity.kt
@@ -24,12 +24,9 @@ import com.google.android.gms.maps.SupportMapFragment
import com.google.android.gms.maps.model.BitmapDescriptorFactory
import com.google.android.gms.maps.model.LatLng
import com.google.android.gms.maps.model.Marker
-import com.google.maps.android.ktx.CameraEvent
import com.google.maps.android.ktx.addMarker
import com.google.maps.android.ktx.awaitMap
-import com.google.maps.android.ktx.cameraEvents
import kotlinx.android.parcel.Parcelize
-import kotlinx.coroutines.flow.collect
import java.util.Random
/**
diff --git a/ApiDemos/project/kotlin-app/src/main/java/com/example/kotlindemos/SnapshotDemoActivity.kt b/ApiDemos/project/kotlin-app/src/main/java/com/example/kotlindemos/SnapshotDemoActivity.kt
index 9d1b8bdb..0ccfa23e 100755
--- a/ApiDemos/project/kotlin-app/src/main/java/com/example/kotlindemos/SnapshotDemoActivity.kt
+++ b/ApiDemos/project/kotlin-app/src/main/java/com/example/kotlindemos/SnapshotDemoActivity.kt
@@ -15,7 +15,6 @@ package com.example.kotlindemos
import android.os.Bundle
import android.view.View
-import android.widget.Button
import android.widget.CheckBox
import android.widget.ImageView
diff --git a/ApiDemos/project/kotlin-app/src/main/java/com/example/kotlindemos/TileCoordinateDemoActivity.kt b/ApiDemos/project/kotlin-app/src/main/java/com/example/kotlindemos/TileCoordinateDemoActivity.kt
index 81023fdc..c6b95c5e 100644
--- a/ApiDemos/project/kotlin-app/src/main/java/com/example/kotlindemos/TileCoordinateDemoActivity.kt
+++ b/ApiDemos/project/kotlin-app/src/main/java/com/example/kotlindemos/TileCoordinateDemoActivity.kt
@@ -28,6 +28,7 @@ import com.google.android.gms.maps.model.Tile
import com.google.android.gms.maps.model.TileOverlayOptions
import com.google.android.gms.maps.model.TileProvider
import java.io.ByteArrayOutputStream
+import androidx.core.graphics.createBitmap
/**
* This demonstrates tile overlay coordinates.
@@ -47,19 +48,23 @@ class TileCoordinateDemoActivity : SamplesBaseActivity(), OnMapReadyCallback {
}
private class CoordTileProvider(context: Context) : TileProvider {
- private val scaleFactor: Float
+ /* Scale factor based on density, with a 0.6 multiplier to increase tile generation
+ * speed */
+ private val scaleFactor: Float = context.resources.displayMetrics.density * 0.6f
override fun getTile(x: Int, y: Int, zoom: Int): Tile {
val coordTile = createTile(x, y, zoom)
val stream = ByteArrayOutputStream()
- coordTile!!.compress(Bitmap.CompressFormat.PNG, 0, stream)
+ coordTile.compress(Bitmap.CompressFormat.PNG, 0, stream)
val bitmapData = stream.toByteArray()
return Tile((TILE_SIZE_DP * scaleFactor).toInt(),
(TILE_SIZE_DP * scaleFactor).toInt(), bitmapData)
}
private fun createTile(x: Int, y: Int, zoom: Int): Bitmap {
- val tile = Bitmap.createBitmap((TILE_SIZE_DP * scaleFactor).toInt(),
- (TILE_SIZE_DP * scaleFactor).toInt(), Bitmap.Config.ARGB_8888)
+ val tile = createBitmap(
+ (TILE_SIZE_DP * scaleFactor).toInt(),
+ (TILE_SIZE_DP * scaleFactor).toInt()
+ )
val canvas = Canvas(tile)
// Draw the tile borders.
@@ -85,11 +90,5 @@ class TileCoordinateDemoActivity : SamplesBaseActivity(), OnMapReadyCallback {
companion object {
private const val TILE_SIZE_DP = 256
}
-
- init {
- /* Scale factor based on density, with a 0.6 multiplier to increase tile generation
- * speed */
- scaleFactor = context.resources.displayMetrics.density * 0.6f
- }
}
}