Android Dynamic Feature Module Creator
Create new dynamic feature modules for Android projects using Play Feature Delivery.
When to Use
- Adding new feature modules to modularized Android apps
- Creating install-time, on-demand, or conditional delivery features
- Setting up feature-specific Koin DI modules
- Implementing feature navigation registration
Quick Reference
Module structure:
feature/{name}/
├── build.gradle.kts # Plugin: android.dynamic.feature
├── src/main/
│ ├── AndroidManifest.xml # dist:module delivery config
│ ├── kotlin/.../{name}/
│ │ ├── di/{Name}FeatureModule.kt
│ │ ├── navigation/{Name}NavigationProvider.kt
│ │ └── screen/{Name}Route.kt
│ └── res/values/strings.xml # title_{name} required
Creation Steps
- Read structure template:
references/dfm-structure.md - Create module files: Build script, manifest, DI, navigation
- Register in app: Update
app/build.gradle.ktsdynamicFeatures - Register in settings: Add
include(":feature:{name}") - Register DI: Add to
FeatureRegistry.KNOWN_FEATURE_INITIALIZERS - Register Nav: Add to
FeatureNavigationRegistry.KNOWN_NAVIGATION_PROVIDERS - Add route: Create
{Name}RouteDataincore/navigation/Routes.kt
Key Patterns
- DI:
{Name}FeatureInitializer : FeatureModuleInitializerinterface - Nav:
{Name}NavigationProvider : FeatureNavigationProviderinterface - Build:
implementation(project(":app"))required in feature modules - Manifest: Use
<dist:install-time />for install-time delivery
References
- DFM Structure - Complete file templates
- Delivery Options - Install-time, on-demand, conditional
微信扫一扫