Skip to content

feat!: update Maps SDK to v20.0.0 and add internal usage attribution#830

Merged
dkhawk merged 14 commits intomainfrom
feat/update-maps-sdk-to-20.0.0
Jan 27, 2026
Merged

feat!: update Maps SDK to v20.0.0 and add internal usage attribution#830
dkhawk merged 14 commits intomainfrom
feat/update-maps-sdk-to-20.0.0

Conversation

@dkhawk
Copy link
Collaborator

@dkhawk dkhawk commented Jan 24, 2026

feat!: update Maps SDK to v20.0.0 and add internal usage attribution

Updates the Maps SDK dependencies and implements internal usage attribution using androidx.startup.

Changes:

  • Replaced manual initialization with AttributionIdInitializer using androidx.startup.
  • Removed GoogleMapsInitializer and MapsComposeApplication (Breaking Change).
  • Updated README.md with attribution opt-out instructions.
  • Added installAndLaunch Gradle task for easier demo app testing.
  • Fixed ScaleBarTests density calculation.
  • Updated minSdk overrides for test dependencies.

Breaking Changes:

  • GoogleMapsInitializer and MapsComposeApplication have been removed. Initialization is now handled automatically by androidx.startup.
  • minSdk is now 23.

Updates the Maps SDK dependencies and implements internal usage attribution using androidx.startup.

Changes:
- Replaced manual initialization with AttributionIdInitializer using androidx.startup.
- Removed GoogleMapsInitializer and MapsComposeApplication (Breaking Change).
- Updated README.md with attribution opt-out instructions.
- Added installAndLaunch Gradle task for easier demo app testing.
- Fixed ScaleBarTests density calculation.
- Updated minSdk overrides for test dependencies.

Breaking Changes:
- GoogleMapsInitializer and MapsComposeApplication have been removed. Initialization is now handled automatically by androidx.startup.
- minSdk is now 23.
@dkhawk dkhawk requested a review from kikoso January 24, 2026 00:05
@dkhawk dkhawk marked this pull request as ready for review January 24, 2026 00:09
@googlemaps-bot
Copy link
Contributor

Code Coverage

There is no coverage information present for the Files changed

Copy link
Collaborator

@kikoso kikoso left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

LGTM

Upgrades the Android Gradle Plugin to 9.0.0, the Gradle Wrapper to 9.2.1, and the Compose Screenshot plugin to 0.0.1-alpha13. This resolves configuration issues with the `GenerateTestConfig` task where `mergedManifest` was not properly configured.
Also adds necessary AGP 9.0 compatibility flags to gradle.properties.
distributionBase=GRADLE_USER_HOME
distributionPath=wrapper/dists
distributionUrl=https\://services.gradle.org/distributions/gradle-9.0.0-bin.zip
distributionUrl=https\://services.gradle.org/distributions/gradle-9.2.1-bin.zip

Check warning

Code scanning / Android Lint

Obsolete Android Gradle Plugin Version Warning

A newer version of Gradle than 9.2.1 is available: 9.3.1
Upgrades the Android Gradle Plugin to 9.0.0, the Gradle Wrapper to 9.2.1, and the Compose Screenshot plugin to 0.0.1-alpha13. This resolves configuration issues with the 'GenerateTestConfig' task where 'mergedManifest' was not properly configured.

Also:
- Adopts AGP 9.0 compatibility flags in gradle.properties.
- Removes obsolete 'testDebugScreenshotTest' and 'testReleaseScreenshotTest' exclusions from CI workflows.
@dkhawk dkhawk requested a review from a team as a code owner January 26, 2026 22:36
Removes com.mxalbert.gradle.jacoco-android plugin which is incompatible with AGP 9.0.
Removed related configuration from convention plugin and test workflow.
Upgrades AGP to 9.0.0 and Screenshot plugin to 0.0.1-alpha13 to resolve D8 Kotlin metadata errors with Kotlin 2.3.0.
Restores Jacoco coverage reporting using the native Gradle Jacoco plugin (compatible with AGP 9.0), replacing the incompatible `jacoco-android` plugin.
Switches coverage collection to the `debug` build type as `release` unit test tasks are not created by default for libraries.
Replaces deprecated -Xopt-in with -opt-in in build files to resolve Gradle warnings.
Required for instrumentation tests running on Android 9+ to avoid NoClassDefFoundError: org/apache/http/ProtocolVersion.
Required for runtime access on Android 9+ devices during instrumentation tests.
Missed by useLibrary in build.gradle which only handles compile classpath.
Fixes ClassNotFoundException: io.mockk.proxy.android.AndroidMockKAgentFactory
during ScaleBarUnitTest execution on Android devices.
@dkhawk dkhawk merged commit 2ba9689 into main Jan 27, 2026
9 checks passed
@dkhawk dkhawk deleted the feat/update-maps-sdk-to-20.0.0 branch January 27, 2026 02:13
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

3 participants