impl android library
Merged
SE
4mo ago+8719+8719+0123456789012345678901234567890123456789-213-213-012345678901234567890123456789
Summary by cubic
Add the Android SDK to serve .wvb bundles in WebView, plus a minimal test app and CI-backed end-to-end tests. Pin the FFI version for reproducible installs.
-
New Features
- Android library
:lib:WebViewBundlewith request interception forhttps://<bundle>.wvb/*,WebViewBundleClient,WebViewBundleProtocol(passthrough rules), andBundleSourcewith Android defaults for builtin/remote bundles. WebViewSetup: recommendedWebViewsettings and optional service-worker interception viaandroidx.webkit; safe defaults with an escape hatch for custom tweaks.- Test app
:testapp: installs the library into a full-screenWebViewand loads the builtinhacker-newsbundle fromassets/bundlesathttps://hacker-news.wvb/. - E2E
e2e/: Appium + WebdriverIO + Vitest run shared@wvb-playground/webview-hacker-newstests; APK built in global setup; emulator + drivers managed programmatically; CI workflow builds:lib/:testappand runs the suite on Linux with KVM. - Build setup and deps: add
androidx.annotation,androidx.webkit, andkotlinx-coroutines-android; switch JNA to the Android AAR (net.java.dev.jna:jna:<version>@aar); increase Gradle daemon heap/metaspace; enableandroid.useAndroidX=true.
- Android library
-
Bug Fixes
- Add
lib/lint.xmlto ignore a false NewApi warning in generatedwvb_ffi.kt, fixing release lint in CI.
- Add