Skip to content

Commit 0e2aec9

Browse files
xaionaro@dx.centerxaionaro@dx.center
authored andcommitted
feat: replace min_api_level conditionals with DEX signature-based marshaling
Replace the incorrect min_api_level approach (which assumed version- dependent params are always at the end) with runtime DEX method signature resolution that correctly handles mid-signature changes between Android API levels. New infrastructure: - VersionAwareTransport.ResolveMethodSignature() extracts param type descriptors from device framework JARs via $Stub$Proxy classes - dex.ExtractAllFromJAR() extracts both transaction codes AND method signatures in a single JAR pass (deduplicating the scan) - binder.MatchParamsToSignature() matches compiled params to device params by type, handling additions/removals/reordering - codegen emits per-method DEX descriptors and a two-path marshaling strategy: fast path when signatures match, adapted path otherwise Removes all min_api_level annotations from bluetooth specs.
1 parent fc08e19 commit 0e2aec9

1,416 files changed

Lines changed: 245489 additions & 37385 deletions

File tree

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

aaudio/iaaudioclient.go

Lines changed: 23 additions & 3 deletions
Some generated files are not rendered by default. Learn more about customizing how changed files appear on GitHub.

aaudio/iaaudioservice.go

Lines changed: 182 additions & 16 deletions
Some generated files are not rendered by default. Learn more about customizing how changed files appear on GitHub.

0 commit comments

Comments
 (0)