├── .gitattributes ├── .gitignore ├── .idea └── .gitignore ├── README.md ├── README_cn.md ├── app ├── .gitignore ├── build.gradle.kts ├── proguard-rules.pro └── src │ ├── androidTest │ └── java │ │ └── com │ │ └── andy │ │ └── modules │ │ └── ExampleInstrumentedTest.kt │ ├── main │ ├── AndroidManifest.xml │ ├── java │ │ └── com │ │ │ └── andy │ │ │ └── modules │ │ │ ├── MainActivity.kt │ │ │ ├── MainActivityDelegate.kt │ │ │ ├── MainComponentFactory.kt │ │ │ ├── component │ │ │ └── NoneUiComponent.kt │ │ │ └── ui │ │ │ ├── BottomBar.kt │ │ │ ├── ContentLayout.kt │ │ │ └── TitleBar.kt │ └── res │ │ ├── drawable-v24 │ │ └── ic_launcher_foreground.xml │ │ ├── drawable │ │ └── ic_launcher_background.xml │ │ ├── layout │ │ ├── activity_main.xml │ │ ├── layout_bottom_bar.xml │ │ ├── layout_content_main.xml │ │ └── layout_title_bar.xml │ │ ├── menu │ │ └── menu_main.xml │ │ ├── mipmap-anydpi-v26 │ │ ├── ic_launcher.xml │ │ └── ic_launcher_round.xml │ │ ├── mipmap-hdpi │ │ ├── ic_launcher.webp │ │ └── ic_launcher_round.webp │ │ ├── mipmap-mdpi │ │ ├── ic_launcher.webp │ │ └── ic_launcher_round.webp │ │ ├── mipmap-xhdpi │ │ ├── ic_launcher.webp │ │ └── ic_launcher_round.webp │ │ ├── mipmap-xxhdpi │ │ ├── ic_launcher.webp │ │ └── ic_launcher_round.webp │ │ ├── mipmap-xxxhdpi │ │ ├── ic_launcher.webp │ │ └── ic_launcher_round.webp │ │ ├── navigation │ │ └── nav_graph.xml │ │ ├── values-land │ │ └── dimens.xml │ │ ├── values-night │ │ └── themes.xml │ │ ├── values-v23 │ │ └── themes.xml │ │ ├── values-w1240dp │ │ └── dimens.xml │ │ ├── values-w600dp │ │ └── dimens.xml │ │ ├── values │ │ ├── colors.xml │ │ ├── dimens.xml │ │ ├── strings.xml │ │ └── themes.xml │ │ └── xml │ │ ├── backup_rules.xml │ │ └── data_extraction_rules.xml │ └── test │ └── java │ └── com │ └── andy │ └── modules │ └── ExampleUnitTest.kt ├── docs └── architecture.jpg ├── gradle.properties ├── gradle ├── libs.versions.toml └── wrapper │ ├── gradle-wrapper.jar │ └── gradle-wrapper.properties ├── gradlew ├── gradlew.bat ├── libs └── modularization │ ├── .gitignore │ ├── build.gradle.kts │ ├── consumer-rules.pro │ ├── proguard-rules.pro │ └── src │ ├── androidTest │ └── java │ │ └── com │ │ └── andy │ │ └── modularization │ │ └── ExampleInstrumentedTest.kt │ ├── main │ ├── AndroidManifest.xml │ └── java │ │ └── com │ │ └── andy │ │ └── modularization │ │ ├── ActivityContainer.kt │ │ ├── ActivityLifeCycle.kt │ │ ├── Component.kt │ │ ├── ComponentKt.kt │ │ ├── Container.kt │ │ ├── HolderIdProvider.kt │ │ ├── Service.kt │ │ ├── ServiceManager.kt │ │ └── StateHandle.kt │ └── test │ └── java │ └── com │ └── andy │ └── modularization │ └── ExampleUnitTest.kt └── settings.gradle.kts /.gitattributes: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/andyhaha/componentFramework/HEAD/.gitattributes -------------------------------------------------------------------------------- /.gitignore: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/andyhaha/componentFramework/HEAD/.gitignore -------------------------------------------------------------------------------- /.idea/.gitignore: -------------------------------------------------------------------------------- 1 | # Default ignored files 2 | /shelf/ 3 | /workspace.xml 4 | -------------------------------------------------------------------------------- /README.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/andyhaha/componentFramework/HEAD/README.md -------------------------------------------------------------------------------- /README_cn.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/andyhaha/componentFramework/HEAD/README_cn.md -------------------------------------------------------------------------------- /app/.gitignore: -------------------------------------------------------------------------------- 1 | /build -------------------------------------------------------------------------------- /app/build.gradle.kts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/andyhaha/componentFramework/HEAD/app/build.gradle.kts -------------------------------------------------------------------------------- /app/proguard-rules.pro: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/andyhaha/componentFramework/HEAD/app/proguard-rules.pro -------------------------------------------------------------------------------- /app/src/androidTest/java/com/andy/modules/ExampleInstrumentedTest.kt: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/andyhaha/componentFramework/HEAD/app/src/androidTest/java/com/andy/modules/ExampleInstrumentedTest.kt -------------------------------------------------------------------------------- /app/src/main/AndroidManifest.xml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/andyhaha/componentFramework/HEAD/app/src/main/AndroidManifest.xml -------------------------------------------------------------------------------- /app/src/main/java/com/andy/modules/MainActivity.kt: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/andyhaha/componentFramework/HEAD/app/src/main/java/com/andy/modules/MainActivity.kt -------------------------------------------------------------------------------- /app/src/main/java/com/andy/modules/MainActivityDelegate.kt: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/andyhaha/componentFramework/HEAD/app/src/main/java/com/andy/modules/MainActivityDelegate.kt -------------------------------------------------------------------------------- /app/src/main/java/com/andy/modules/MainComponentFactory.kt: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/andyhaha/componentFramework/HEAD/app/src/main/java/com/andy/modules/MainComponentFactory.kt -------------------------------------------------------------------------------- /app/src/main/java/com/andy/modules/component/NoneUiComponent.kt: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/andyhaha/componentFramework/HEAD/app/src/main/java/com/andy/modules/component/NoneUiComponent.kt -------------------------------------------------------------------------------- /app/src/main/java/com/andy/modules/ui/BottomBar.kt: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/andyhaha/componentFramework/HEAD/app/src/main/java/com/andy/modules/ui/BottomBar.kt -------------------------------------------------------------------------------- /app/src/main/java/com/andy/modules/ui/ContentLayout.kt: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/andyhaha/componentFramework/HEAD/app/src/main/java/com/andy/modules/ui/ContentLayout.kt -------------------------------------------------------------------------------- /app/src/main/java/com/andy/modules/ui/TitleBar.kt: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/andyhaha/componentFramework/HEAD/app/src/main/java/com/andy/modules/ui/TitleBar.kt -------------------------------------------------------------------------------- /app/src/main/res/drawable-v24/ic_launcher_foreground.xml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/andyhaha/componentFramework/HEAD/app/src/main/res/drawable-v24/ic_launcher_foreground.xml -------------------------------------------------------------------------------- /app/src/main/res/drawable/ic_launcher_background.xml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/andyhaha/componentFramework/HEAD/app/src/main/res/drawable/ic_launcher_background.xml -------------------------------------------------------------------------------- /app/src/main/res/layout/activity_main.xml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/andyhaha/componentFramework/HEAD/app/src/main/res/layout/activity_main.xml -------------------------------------------------------------------------------- /app/src/main/res/layout/layout_bottom_bar.xml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/andyhaha/componentFramework/HEAD/app/src/main/res/layout/layout_bottom_bar.xml -------------------------------------------------------------------------------- /app/src/main/res/layout/layout_content_main.xml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/andyhaha/componentFramework/HEAD/app/src/main/res/layout/layout_content_main.xml -------------------------------------------------------------------------------- /app/src/main/res/layout/layout_title_bar.xml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/andyhaha/componentFramework/HEAD/app/src/main/res/layout/layout_title_bar.xml -------------------------------------------------------------------------------- /app/src/main/res/menu/menu_main.xml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/andyhaha/componentFramework/HEAD/app/src/main/res/menu/menu_main.xml -------------------------------------------------------------------------------- /app/src/main/res/mipmap-anydpi-v26/ic_launcher.xml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/andyhaha/componentFramework/HEAD/app/src/main/res/mipmap-anydpi-v26/ic_launcher.xml -------------------------------------------------------------------------------- /app/src/main/res/mipmap-anydpi-v26/ic_launcher_round.xml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/andyhaha/componentFramework/HEAD/app/src/main/res/mipmap-anydpi-v26/ic_launcher_round.xml -------------------------------------------------------------------------------- /app/src/main/res/mipmap-hdpi/ic_launcher.webp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/andyhaha/componentFramework/HEAD/app/src/main/res/mipmap-hdpi/ic_launcher.webp -------------------------------------------------------------------------------- /app/src/main/res/mipmap-hdpi/ic_launcher_round.webp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/andyhaha/componentFramework/HEAD/app/src/main/res/mipmap-hdpi/ic_launcher_round.webp -------------------------------------------------------------------------------- /app/src/main/res/mipmap-mdpi/ic_launcher.webp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/andyhaha/componentFramework/HEAD/app/src/main/res/mipmap-mdpi/ic_launcher.webp -------------------------------------------------------------------------------- /app/src/main/res/mipmap-mdpi/ic_launcher_round.webp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/andyhaha/componentFramework/HEAD/app/src/main/res/mipmap-mdpi/ic_launcher_round.webp -------------------------------------------------------------------------------- /app/src/main/res/mipmap-xhdpi/ic_launcher.webp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/andyhaha/componentFramework/HEAD/app/src/main/res/mipmap-xhdpi/ic_launcher.webp -------------------------------------------------------------------------------- /app/src/main/res/mipmap-xhdpi/ic_launcher_round.webp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/andyhaha/componentFramework/HEAD/app/src/main/res/mipmap-xhdpi/ic_launcher_round.webp -------------------------------------------------------------------------------- /app/src/main/res/mipmap-xxhdpi/ic_launcher.webp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/andyhaha/componentFramework/HEAD/app/src/main/res/mipmap-xxhdpi/ic_launcher.webp -------------------------------------------------------------------------------- /app/src/main/res/mipmap-xxhdpi/ic_launcher_round.webp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/andyhaha/componentFramework/HEAD/app/src/main/res/mipmap-xxhdpi/ic_launcher_round.webp -------------------------------------------------------------------------------- /app/src/main/res/mipmap-xxxhdpi/ic_launcher.webp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/andyhaha/componentFramework/HEAD/app/src/main/res/mipmap-xxxhdpi/ic_launcher.webp -------------------------------------------------------------------------------- /app/src/main/res/mipmap-xxxhdpi/ic_launcher_round.webp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/andyhaha/componentFramework/HEAD/app/src/main/res/mipmap-xxxhdpi/ic_launcher_round.webp -------------------------------------------------------------------------------- /app/src/main/res/navigation/nav_graph.xml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/andyhaha/componentFramework/HEAD/app/src/main/res/navigation/nav_graph.xml -------------------------------------------------------------------------------- /app/src/main/res/values-land/dimens.xml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/andyhaha/componentFramework/HEAD/app/src/main/res/values-land/dimens.xml -------------------------------------------------------------------------------- /app/src/main/res/values-night/themes.xml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/andyhaha/componentFramework/HEAD/app/src/main/res/values-night/themes.xml -------------------------------------------------------------------------------- /app/src/main/res/values-v23/themes.xml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/andyhaha/componentFramework/HEAD/app/src/main/res/values-v23/themes.xml -------------------------------------------------------------------------------- /app/src/main/res/values-w1240dp/dimens.xml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/andyhaha/componentFramework/HEAD/app/src/main/res/values-w1240dp/dimens.xml -------------------------------------------------------------------------------- /app/src/main/res/values-w600dp/dimens.xml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/andyhaha/componentFramework/HEAD/app/src/main/res/values-w600dp/dimens.xml -------------------------------------------------------------------------------- /app/src/main/res/values/colors.xml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/andyhaha/componentFramework/HEAD/app/src/main/res/values/colors.xml -------------------------------------------------------------------------------- /app/src/main/res/values/dimens.xml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/andyhaha/componentFramework/HEAD/app/src/main/res/values/dimens.xml -------------------------------------------------------------------------------- /app/src/main/res/values/strings.xml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/andyhaha/componentFramework/HEAD/app/src/main/res/values/strings.xml -------------------------------------------------------------------------------- /app/src/main/res/values/themes.xml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/andyhaha/componentFramework/HEAD/app/src/main/res/values/themes.xml -------------------------------------------------------------------------------- /app/src/main/res/xml/backup_rules.xml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/andyhaha/componentFramework/HEAD/app/src/main/res/xml/backup_rules.xml -------------------------------------------------------------------------------- /app/src/main/res/xml/data_extraction_rules.xml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/andyhaha/componentFramework/HEAD/app/src/main/res/xml/data_extraction_rules.xml -------------------------------------------------------------------------------- /app/src/test/java/com/andy/modules/ExampleUnitTest.kt: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/andyhaha/componentFramework/HEAD/app/src/test/java/com/andy/modules/ExampleUnitTest.kt -------------------------------------------------------------------------------- /docs/architecture.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/andyhaha/componentFramework/HEAD/docs/architecture.jpg -------------------------------------------------------------------------------- /gradle.properties: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/andyhaha/componentFramework/HEAD/gradle.properties -------------------------------------------------------------------------------- /gradle/libs.versions.toml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/andyhaha/componentFramework/HEAD/gradle/libs.versions.toml -------------------------------------------------------------------------------- /gradle/wrapper/gradle-wrapper.jar: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/andyhaha/componentFramework/HEAD/gradle/wrapper/gradle-wrapper.jar -------------------------------------------------------------------------------- /gradle/wrapper/gradle-wrapper.properties: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/andyhaha/componentFramework/HEAD/gradle/wrapper/gradle-wrapper.properties -------------------------------------------------------------------------------- /gradlew: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/andyhaha/componentFramework/HEAD/gradlew -------------------------------------------------------------------------------- /gradlew.bat: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/andyhaha/componentFramework/HEAD/gradlew.bat -------------------------------------------------------------------------------- /libs/modularization/.gitignore: -------------------------------------------------------------------------------- 1 | /build -------------------------------------------------------------------------------- /libs/modularization/build.gradle.kts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/andyhaha/componentFramework/HEAD/libs/modularization/build.gradle.kts -------------------------------------------------------------------------------- /libs/modularization/consumer-rules.pro: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /libs/modularization/proguard-rules.pro: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/andyhaha/componentFramework/HEAD/libs/modularization/proguard-rules.pro -------------------------------------------------------------------------------- /libs/modularization/src/androidTest/java/com/andy/modularization/ExampleInstrumentedTest.kt: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/andyhaha/componentFramework/HEAD/libs/modularization/src/androidTest/java/com/andy/modularization/ExampleInstrumentedTest.kt -------------------------------------------------------------------------------- /libs/modularization/src/main/AndroidManifest.xml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/andyhaha/componentFramework/HEAD/libs/modularization/src/main/AndroidManifest.xml -------------------------------------------------------------------------------- /libs/modularization/src/main/java/com/andy/modularization/ActivityContainer.kt: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/andyhaha/componentFramework/HEAD/libs/modularization/src/main/java/com/andy/modularization/ActivityContainer.kt -------------------------------------------------------------------------------- /libs/modularization/src/main/java/com/andy/modularization/ActivityLifeCycle.kt: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/andyhaha/componentFramework/HEAD/libs/modularization/src/main/java/com/andy/modularization/ActivityLifeCycle.kt -------------------------------------------------------------------------------- /libs/modularization/src/main/java/com/andy/modularization/Component.kt: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/andyhaha/componentFramework/HEAD/libs/modularization/src/main/java/com/andy/modularization/Component.kt -------------------------------------------------------------------------------- /libs/modularization/src/main/java/com/andy/modularization/ComponentKt.kt: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/andyhaha/componentFramework/HEAD/libs/modularization/src/main/java/com/andy/modularization/ComponentKt.kt -------------------------------------------------------------------------------- /libs/modularization/src/main/java/com/andy/modularization/Container.kt: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/andyhaha/componentFramework/HEAD/libs/modularization/src/main/java/com/andy/modularization/Container.kt -------------------------------------------------------------------------------- /libs/modularization/src/main/java/com/andy/modularization/HolderIdProvider.kt: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/andyhaha/componentFramework/HEAD/libs/modularization/src/main/java/com/andy/modularization/HolderIdProvider.kt -------------------------------------------------------------------------------- /libs/modularization/src/main/java/com/andy/modularization/Service.kt: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/andyhaha/componentFramework/HEAD/libs/modularization/src/main/java/com/andy/modularization/Service.kt -------------------------------------------------------------------------------- /libs/modularization/src/main/java/com/andy/modularization/ServiceManager.kt: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/andyhaha/componentFramework/HEAD/libs/modularization/src/main/java/com/andy/modularization/ServiceManager.kt -------------------------------------------------------------------------------- /libs/modularization/src/main/java/com/andy/modularization/StateHandle.kt: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/andyhaha/componentFramework/HEAD/libs/modularization/src/main/java/com/andy/modularization/StateHandle.kt -------------------------------------------------------------------------------- /libs/modularization/src/test/java/com/andy/modularization/ExampleUnitTest.kt: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/andyhaha/componentFramework/HEAD/libs/modularization/src/test/java/com/andy/modularization/ExampleUnitTest.kt -------------------------------------------------------------------------------- /settings.gradle.kts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/andyhaha/componentFramework/HEAD/settings.gradle.kts --------------------------------------------------------------------------------