Commit a6ed963
feat: export all generated API types and add E2E tests for 139 scenarios
Update YAML specs to use exported go_type names (e.g., wifiManager -> Manager),
making all 53 Android API packages expose clean, idiomatic Go APIs. Add missing
obtain/service_name entries for packages that lacked factory functions (nsd,
download, biometric, usb, player). Add missing methods to specs (pm.HasSystemFeature,
vibrator.HasVibrator, preferences.GetString/Contains).
Add handwritten factories and helpers:
- bluetooth.NewAdapter (via BluetoothManager.getAdapter)
- omapi.NewService, speech.NewTTS (no-arg constructors)
- app.NewIntent, app.ExtractBundle, alarm.ExtractalarmClockInfo
- build.GetBuildInfo/GetVersionInfo (static field readers)
- location.ExtractLocation (lat/lng/provider extraction)
- app.Context.PackageManager() and ContentResolver()
Update E2E test harness to include GoAbstractDispatch class. Fix E2E tests
for updated API signatures. Update tool tests (grpcgen, javagen, protogen)
for new type names.
Verified: 139/139 E2E tests pass on both Pixel 8a (Android 16, API 36,
arm64-v8a) and emulator (Android 15, API 35, x86_64). All host unit tests
and tool tests pass.1 parent 0ed3e2b commit a6ed963
217 files changed
Lines changed: 16002 additions & 14946 deletions
File tree
- accounts
- app
- admin
- alarm
- blob
- download
- job
- notification
- role
- usage
- bluetooth
- companion
- content
- clipboard
- pm
- preferences
- resolver
- graphics/pdf
- hardware
- biometric
- camera
- ir
- lights
- usb
- internal/testjvm/testdata/center/dx/jni/internal
- location
- media
- audiomanager
- player
- projection
- recorder
- session
- net
- nsd
- wifi
- p2p
- rtt
- nfc
- os
- battery
- build
- environment
- keyguard
- power
- storage
- vibrator
- print
- provider
- documents
- media
- se/omapi
- spec/java
- speech
- telecom
- telephony
- tests/e2e
- tools/pkg
- grpcgen
- javagen
- protogen
- view
- display
- inputmethod
- widget/toast
Some content is hidden
Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.
Some generated files are not rendered by default. Learn more about customizing how changed files appear on GitHub.
Some generated files are not rendered by default. Learn more about customizing how changed files appear on GitHub.
0 commit comments