Skip to content

Add Cast framework dynamite module descriptor#3554

Open
Jorel97 wants to merge 1 commit into
microg:masterfrom
Jorel97:jorel97/cast-framework-dynamite-descriptor
Open

Add Cast framework dynamite module descriptor#3554
Jorel97 wants to merge 1 commit into
microg:masterfrom
Jorel97:jorel97/cast-framework-dynamite-descriptor

Conversation

@Jorel97

@Jorel97 Jorel97 commented Jun 11, 2026

Copy link
Copy Markdown

Summary

Adds a local Dynamite ModuleDescriptor for com.google.android.gms.cast.framework.dynamite in the Cast framework core module.

The Cast framework loader already has a local CastDynamiteModuleImpl, and DynamiteLoaderImpl has a temporary version fallback for this same module id. This descriptor makes the module discoverable through the standard local descriptor path used by DynamiteModule.getLocalVersion(...).

Scope

This is intentionally small and does not claim to complete Google Cast v2 support by itself. It is a supporting fix for the Cast framework dynamite loading path related to #580.

It also does not overlap with the existing route-controller work in #3505 or the broader session/controller changes in #3377.

Validation

From a short Windows path mounted with subst G: to avoid Android AIDL path-length failures:

GRADLE_MICROG_VERSION_WITHOUT_GIT=1 ./gradlew.bat :play-services-cast-framework-core:compileDebugJavaWithJavac --no-daemon --no-configuration-cache

Result: build successful.

Refs #580

@peterhel

Copy link
Copy Markdown

Builds cleanly for me — :play-services-core:assembleVtmDefaultDebug is BUILD SUCCESSFUL with this applied.

Looks correct and well-placed. DynamiteLoaderImpl.getModuleVersionV2() resolves versions by reflecting on com.google.android.gms.dynamite.descriptors.<moduleId>.ModuleDescriptor, and this lands at exactly that FQCN for com.google.android.gms.cast.framework.dynamite, so the lookup now succeeds instead of falling through to the temp-fix branch — which should clear the returning temp fix module version … Cast API wil not be functional! warning. MODULE_VERSION = 1 matches the return 1 that branch hardcoded, so the reported version is unchanged. Placing it in play-services-cast-framework/core (already pulled in by play-services-core) is consistent with how cronet/ads/maps ship their descriptors.

Optional follow-up nit: the now-dead cast.framework.dynamite branch in getModuleVersionV2() could be cleaned up later (typo "wil" and all), but that's out of scope here. LGTM 👍

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.

2 participants