Skip to content

feat(samples): fill out missing View samples and establish visual testing suite - #45

Merged
dkhawk merged 1 commit into
mainfrom
feat/fillout-missing-samples
Aug 6, 2026
Merged

feat(samples): fill out missing View samples and establish visual testing suite#45
dkhawk merged 1 commit into
mainfrom
feat/fillout-missing-samples

Conversation

@dkhawk

@dkhawk dkhawk commented May 21, 2026

Copy link
Copy Markdown
Collaborator

Summary

Bring feature parity to the Android Maps 3D SDK samples by implementing missing Java and Kotlin View-based activities to match the Compose catalog, integrating the Google Maps Routes API, and establishing automated visual testing across all sample apps.

Key Changes

Sample Parity (Java & Kotlin Views)

  • RoutesActivity: Real-time 3D vehicle animation along a driving route, interactive camera tracking, Google Maps Routes API v2 integration, and automatic offline fallback to OahuRouteData.FALLBACK_ROUTE.
  • MapInteractionsActivity: Interactive map click and Place ID listeners.
  • Marker Styling & Collisions: Align Marker collision behaviors (REQUIRED and OPTIONAL_AND_HIDES_LOWER_PRIORITY), custom Pin styling, and camera controls across Compose, Kotlin, and Java samples.

Visual Testing & Catalog Automation

  • Establish a comprehensive automated visual testing suite (*VisualTest.java and *VisualTest.kt) across Java and Kotlin View sample apps.
  • Upgrade catalog documentation scripts (catalog_automation.py) to generate screenshots cleanly without inflating production APK bundle sizes.

Stability & Tooling Polish

  • Handle SDK map initialization timing gracefully in test environments across base sample activities (SampleBaseActivity / BaseSkeletonActivity).
  • Standardize Android adb path resolution in Gradle tasks across all sample and snippet modules.

TAG=agy
CONV=6441a701-e020-4126-bdb0-921694fbee91

@dkhawk
dkhawk requested a review from kikoso May 21, 2026 22:57
@dkhawk
dkhawk marked this pull request as draft May 26, 2026 20:15
@dkhawk
dkhawk force-pushed the feat/fillout-missing-samples branch from f38adbf to 4264277 Compare August 4, 2026 17:52
@dkhawk dkhawk changed the title feat: implement View-based Routes samples and Compose Markers styling/collisions feat(samples): fill out missing View samples and establish visual testing suite Aug 4, 2026
@dkhawk
dkhawk marked this pull request as ready for review August 4, 2026 18:07
@dkhawk
dkhawk force-pushed the feat/fillout-missing-samples branch 3 times, most recently from eaf67c7 to 8560c7c Compare August 4, 2026 18:41
@dkhawk
dkhawk requested a review from LoyalAbbas August 4, 2026 21:08
Comment thread gradle/gradle-daemon-jvm.properties Outdated
@@ -0,0 +1,12 @@
#This file is generated by updateDaemonJvm

Copy link
Copy Markdown
Collaborator

Choose a reason for hiding this comment

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

Do we need this file?

Comment thread gradle/libs.versions.toml
agp = "9.1.0"
appcompat = "1.7.1"
composeBom = "2026.03.01"
composeBom = "2026.06.01"

Copy link
Copy Markdown
Collaborator

Choose a reason for hiding this comment

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

I would double check this update, the Compose BoM updates are traditionally breaking things. It seems good at a first glance, though.

Comment thread gradle/libs.versions.toml Outdated
hilt = "2.60.1"
ksp = "2.3.6"
mapsUtilsKtx = "6.0.1"
mapsUtilsKtx = "6.0.0"

Copy link
Copy Markdown
Collaborator

Choose a reason for hiding this comment

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

Are we downgrading this library?

Copy link
Copy Markdown
Collaborator

Choose a reason for hiding this comment

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

+1

@dkhawk
dkhawk force-pushed the feat/fillout-missing-samples branch from 8560c7c to f072b4e Compare August 6, 2026 15:53
@dkhawk

dkhawk commented Aug 6, 2026

Copy link
Copy Markdown
Collaborator Author

Addressed review feedback:

  1. Removed gradle/gradle-daemon-jvm.properties: Removed the auto-generated JVM daemon properties file.
  2. Restored mapsUtilsKtx to 6.0.1: Set mapsUtilsKtx back to 6.0.1 (the latest release compatible with compileSdk = 36).
  3. Verified Compose BoM Update: Confirmed all Compose UI layouts and test suites (assembleDebug & testDebugUnitTest) pass 100% with composeBom = "2026.06.01".
  4. Refined API Key Validation: Ensured secrets enforcement only checks application targets while allowing library builds without keys, and set default manifest placeholders so local unit tests run smoothly.

@dkhawk
dkhawk force-pushed the feat/fillout-missing-samples branch from f072b4e to eea40b7 Compare August 6, 2026 15:58
@dkhawk

dkhawk commented Aug 6, 2026

Copy link
Copy Markdown
Collaborator Author

Updated project configuration:

  • Updated compileSdk to 37: Applied compileSdk = libs.versions.compileSdk.get().toInt() consistently across all module build scripts, and bumped compileSdk version to 37 across version catalogs.
  • Updated mapsUtilsKtx to 6.1.0: Upgraded mapsUtilsKtx to 6.1.0 (now fully compatible with compileSdk 37).
  • Verified Build & Test Suite: All modules build (assembleDebug) and pass unit tests (testDebugUnitTest) cleanly.

…ting suite

Bring feature parity to the Android Maps 3D SDK samples by implementing missing Java and Kotlin View-based activities to match the Compose catalog, integrating the Google Maps Routes API, and establishing automated visual testing across all sample apps.

* Sample Parity (Java & Kotlin Views)
  - Implement driving route visualization (`RoutesActivity`) with real-time 3D vehicle animation, camera tracking, Google Maps Routes API v2 integration, and automatic offline fallback.
  - Implement interactive map and Place ID click listeners (`MapInteractionsActivity`).
  - Align Marker collision behaviors, custom Pin styling, and camera controls across Compose, Kotlin, and Java samples.

* Visual Testing & Catalog Automation
  - Establish a comprehensive automated visual testing suite across Java and Kotlin View sample apps.
  - Upgrade catalog documentation scripts to generate screenshots cleanly without inflating production APK bundle sizes.

* Stability & Tooling Polish
  - Handle SDK map initialization timing gracefully in test environments across base sample activities.
  - Standardize Android `adb` path resolution in Gradle tasks across all sample and snippet modules.

TAG=agy
CONV=6441a701-e020-4126-bdb0-921694fbee91
@dkhawk
dkhawk force-pushed the feat/fillout-missing-samples branch from eea40b7 to a6166df Compare August 6, 2026 17:47
@dkhawk
dkhawk merged commit ae41867 into main Aug 6, 2026
2 checks passed
@dkhawk
dkhawk deleted the feat/fillout-missing-samples branch August 6, 2026 17:47
googlemaps-bot pushed a commit that referenced this pull request Aug 7, 2026
# [1.9.0](v1.8.0...v1.9.0) (2026-08-07)

### Features

* **samples:** fill out missing View samples and establish visual testing suite ([#45](#45)) ([ae41867](ae41867))
@googlemaps-bot

Copy link
Copy Markdown

🎉 This PR is included in version 1.9.0 🎉

The release is available on GitHub release

Your semantic-release bot 📦🚀

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

Projects

None yet

Development

Successfully merging this pull request may close these issues.

5 participants