Repository navigation
feat(android): make plugins optional modules and publish through JitPack - #38
Merged
heoblitz merged 6 commits intoNov 12, 2026
Merged
Conversation
The README, setup, architecture and verification docs covered iOS only. They now name the Android SDK, its ADB connection and its checks, and the Android verification notes record a device run with the plugins in their own modules.
Pairing simulators with iOS and emulators with Android read as if an Android device were not supported.
The Gradle modules now mirror the Swift package products, and a plugin can be told from the bridge by its name: necto-events-plugin, necto-network-plugin, necto-files-plugin, necto-performance-plugin, necto-process-metric-plugin, necto-ui-control-plugin, necto-datastore-preferences-plugin and necto-okhttp-capture-plugin. necto-core, necto-android and necto-plugin-support keep their names.
The setup guide sent Android readers to another page. It now has a section for each platform, with the connection notes shared at the end, and the landing page no longer describes Necto as iOS only.
The sentence is about connecting without a proxy or a certificate. The ways to connect are listed in the setup guide.
This was referenced Nov 12, 2026
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Summary
Follows up on #17. The Android SDK shipped every plugin inside
necto-coreandnecto-android, so an app that wanted only the bridge still carried every panel,DataStore and the UI Control runtime. This splits each plugin into its own Gradle
module, mirroring the Swift package products, and publishes the modules through
JitPack.
necto-androidis now the bridge only: the ADB listener and app identity.product it mirrors:
necto-events-plugin,necto-network-plugin,necto-okhttp-capture-plugin,necto-files-plugin,necto-performance-plugin,necto-process-metric-plugin,necto-ui-control-plugin,necto-datastore-preferences-plugin.jitpack.ymlpublishes every module undercom.github.toss.necto.script/test-android-consumerbuilds five independent minified apps from thepublished artifacts and checks that unselected plugins stay out. It runs in CI.
Changelog
Android: plugins are separate Gradle modules, available through JitPack.
Test Plan
63d531fe69and published all eleven modules under theirnew names, each with its POM and Gradle module metadata.
necto-core,necto-network-plugin,necto-okhttp-capture-pluginandnecto-performance-plugin, and all twelveGradle projects configure.
script/test-android-sampleandscript/test-android-securitypass over USB ona Samsung Galaxy S25 (
SM-S931N, Android 17, API 37). This run predates themodule rename.
Not run locally, covered by this PR's CI:
./gradlew build,script/test-android-artifactsandscript/test-android-consumer.Not verified:
script/test-android-consumer --jitpackagainst the JitPack artifacts.commits, not one rebuilt from them.