This Sample App implements the approach mentioned in my Medium article at: https://medium.com/@callmeryan/changing-the-android-app-icon-programmatically-c913550330d
We can create multiple launcher icons by declaring activity-alias
elements
in AndroidManifest.xml
. The effect of changing the app icon is achieved by disabling the current
one and enabling a new one. While some say this does not work with things like crashlytics, deep
link, etc., indeed this is how Reddit implements this feature in their Android App.
This project was configured to build using Android Studio Iguana | 2023.2.1. You will need to have Java 17 to build the project.
Alternatively, you can find the ready-to-install APKs and App Bundles under the release section.
Since greg never uses Android, I put him on an Android App. However, please subscribe to greg for $1
- AndroidX Core KTX - Apache 2.0 - Extensions to Java APIs for Android development
- JUnit - EPL 2.0 - A simple framework to write repeatable tests
- AndroidX Test Ext JUnit - Apache 2.0 - Extensions for Android testing
- AndroidX Espresso - Apache 2.0 - UI testing framework
- AndroidX Lifecycle - Apache 2.0 - Lifecycles-aware components
- AndroidX Activity Compose - Apache 2.0 - Jetpack Compose integration with Activity
- Jetpack Compose BOM - Apache 2.0 - Bill of Materials for Jetpack Compose
- AndroidX Compose UI - Apache 2.0 - UI components for Jetpack Compose
- AndroidX Material3 - Apache 2.0 - Material Design components for Jetpack Compose
- Android Application Plugin - Google - Plugin for building Android applications
- Jetbrains Kotlin Android Plugin - JetBrains - Plugin for Kotlin Android projects
- Ktlint Plugin - JLLeitschuh - Plugin for Kotlin linter
- Compose Compiler Plugin - JetBrains - Plugin for Jetpack Compose