Neptune
A flexible, powerful and lightweight plugin framework for Android
Install / Use
/learn @iqiyi/NeptuneREADME
Neptune
Neptune is a flexible, powerful and lightweight plugin framework for Android.
It now runs plugins dynamically on billions of devices every day and carries many separated business modules of IQIYI such as Reader, Movie Tickets and etc..
Especially, Neptune is greatly compatible with Android P . It can run on Android P devices seamlessly and stably. Only few APIs in light greylist are used.
Supported Features
| Feature | Detail | | :------ | :-----: | | Supported Components | Activity/Service/Receiver | | Component registration in Host Manifest.xml | No Need | | Share Host App Class | Supported | | Share Host App Resources | Supported | | Resources Isolation | Supported | | Run individual App | Supported | | Android Features | Almost all features | | Compatibility | Almost all roms | | Process Isolation | Supported | | Plugin Dependency | Supported | | Plugin Development | like normal app | | Supported Android versions | API Level 14+ |
Architecture

Getting Started
Host Project
compile Neptune in application module of build.gradle.
implementation 'org.qiyi.video:neptune:2.7.0'
Initialize sdk in your Application#onCreate().
public class XXXApplication extends Application {
@Override
public void onCreate() {
NeptuneConfig config = new NeptuneConfig.NeptuneConfigBuilder()
.configSdkMode(NeptuneConfig.INSTRUMENTATION_MODE)
.enableDebug(BuildConfig.DEBUG)
.build();
Neptune.init(this, config);
}
}
more details and developer guide see wiki
Plugin Project
If plugin app wants to share resources with host app, you need add dependency in the buildscript block of build.gradle in root of plugin project as following.
dependencies {
classpath 'com.iqiyi.tools.build:neptune-gradle:1.4.0'
}
Apply gradle plugin in application module of build.gradle and config it.
apply plugin: 'com.qiyi.neptune.plugin'
neptune {
pluginMode = true // In plugin apk build mode
packageId = 0x30 // The package id of Resources
hostDependencies = "{group1}:{artifact1};{group2}:{artifact2}" // host app resources dependencies
}
Developer Guide
Contribution
We sincerely appreciate your PR contribution of any kind , including codes, suggestions or documentation to improve our project.
License
Neptune is Apache v2.0 Licensed.
Related Skills
node-connect
340.5kDiagnose OpenClaw node connection and pairing failures for Android, iOS, and macOS companion apps
frontend-design
84.2kCreate distinctive, production-grade frontend interfaces with high design quality. Use this skill when the user asks to build web components, pages, or applications. Generates creative, polished code that avoids generic AI aesthetics.
openai-whisper-api
340.5kTranscribe audio via OpenAI Audio Transcriptions API (Whisper).
commit-push-pr
84.2kCommit, push, and open a PR
