feat: align Android SDK with core update document API
Merged
SE
7d ago+6980+6980+0123456789012345678901234567890123456789-4825-4825-0123456789012345678901234567890123456789
Align the Android SDK and WebView bridge with core’s update-document API, refresh FFI to prerelease/f62e1f4, and initialize Android TLS verification.
Validated release build/lint, HTTPS integration, and 33 UI E2E tests. Prepares the SDK for the Maven 0.0.1 release.
Summary by cubic
Aligns the Android SDK's WebView bridge with core's update-document API: refreshes the FFI to prerelease/f62e1f4, reworks bridge commands and JSON shapes, and adds Android TLS verification through WvbAndroid.initialize().
- E2E drops the live playground remote in favor of a local fixture remote (passed via a new
wvbRemoteUrllaunch argument), updates the testbed from 0.2.0 to 0.4.x, and covers download, install, and rollback. - Adds an instrumented TLS integration test (via
rustls-platform-verifierfrom a new raw GitHub Maven repo) and validated release build/lint plus 33 UI E2E tests. - Errors now carry
core.*codes, and the source/remote/updater bridge commands follow the update-document flow (sourceListBuiltinBundles,sourceStageRemoteBundle,remoteGetUpdate,updaterDownload,updaterInstall,updaterRollback, etc.).
Breaking changes
- Public API renames:
makeBundleSource()→makeSource(),BundleSource→Source;WebViewBundleRemoteConfig.endpointbecomesbaseUrl(with optionaloptions); updater config now usesintegrity,signature, andupdateFilepath. - Bridge method names and payloads change for source/remote/updater clients; JSON keys like
typemove tosource/status, and result kinds nest underresult.type.
Summary by CodeRabbit
- New Features
- Added Android initialization for TLS support, including platform certificate verification.
- Expanded bridge support for managing bundles, retrieving remote updates, staging changes, and installing or rolling back updates.
- Added configurable remote URLs and update settings, including integrity and signature options.
- Bug Fixes
- Error responses now include available error codes, and invalid bridge parameters are reported explicitly.
- Tests
- Expanded Android end-to-end coverage for update, installation, rollback, and invalid-input scenarios.