Rebranding is more than swapping a logo. A properly rebranded app has its own identity everywhere the stores, the operating system and the user can see it. That matters for trust, and it matters for Apple's review, which rejects apps that look like unmodified templates. Here's the checklist we use on every 6amMart, 6Valley, Demandium and DriveMond project, repeated for each app in the platform.
1. Decide the brand system first
Before touching code, settle:
- The app name for each role, for example "YourBrand", "YourBrand Store" and "YourBrand Rider". Keep them short so they don't get truncated on the home screen.
- An icon that works at small sizes, with a variant for each app so stores and drivers don't open the wrong one.
- A primary colour and its contrast with white text.
- Fonts, if you want to change the defaults. Check the licence.
2. Package name and bundle ID
This is the step most people get wrong. Every app needs a unique identifier you own, for example com.yourbrand.user, com.yourbrand.store and com.yourbrand.delivery.
- Android: change the
applicationIdin the app-level Gradle file, and update the namespace and the Kotlin or Java package path if your Flutter version requires it. - iOS: change the Bundle Identifier in Xcode for the Runner target, and for any extension targets such as notification services.
Do this before you set up Firebase, Maps key restrictions and store listings, because all of them are tied to the identifier. Once an app is published, its identifier can never change.
3. App display name
- Android: the
android:labelin the manifest. - iOS: the Display Name or
CFBundleDisplayNamein Xcode or Info.plist. - Check whether the Flutter code shows the app name anywhere, such as a constants file or language files, and update it there too.
4. Icons
Use the flutter_launcher_icons package, or generate the icon sets yourself, for Android (including adaptive icons with separate foreground and background) and iOS. Use a 1024×1024 PNG with no transparency for the iOS App Store icon. Check the result on a real device. Adaptive icons crop more than you expect.
5. Splash screen and in-app images
Replace the splash logo and background, plus every in-app image that carries the demo brand: logos in the header, onboarding illustrations, empty-state images and placeholders. Search the assets folder for anything with the original branding.
6. Colours and theme
6amTech apps define their theme in Dart, typically in a theme or styles file under lib. Change the primary colour there rather than editing screens one by one. Then check:
- Buttons and links still have good contrast.
- Dark mode, if enabled, still looks right.
- Status bar icons are readable on your primary colour.
7. Text and languages
Search the language files for the demo app name and replace it in every language you support. Write proper copy for onboarding screens. If you're launching in Arabic, test the RTL layout. Our UAE guide has notes on that.
8. Backend branding
Most branding lives in the admin panel, not the apps: business name, logo, favicon, footer text, email templates, push notification templates and the terms and privacy pages. Fill all of these in before the apps go to review, because reviewers see them.
9. Firebase, Maps and other keys
With the new identifiers in place:
- Register the apps in your Firebase project and add the new config files. See the Firebase guide.
- Restrict your Google Maps keys to the new package names and SHA-1 fingerprints (Android) and bundle IDs (iOS). See the Maps guide.
- Update any social login or deep link configuration that references the old identifiers.
10. Signing
- Android: create your own upload keystore, store it safely with its passwords, and enrol in Play App Signing. If you lose the upload key, you'll need Google support to reset it.
- iOS: use your own Apple Developer team, certificates and provisioning profiles.
11. Store assets
Prepare screenshots that show your brand and real content, a feature graphic for Google Play, and descriptions written for your market. Avoid demo screenshots entirely. They're the fastest route to a 4.3 rejection. More in our publishing guide.
Keep a branding record
Write every changed file and value into a short document. When you update the script, that record is how you reapply your branding to the new version quickly and correctly.
How we help
Rebranding every app in the platform is part of our Launch package. See the branded client apps we've published, such as OneMart, Bringo, RedGo and Drop Me, in the solutions sections of our site.
Questions
Can I change the package name after publishing?
No. A published app's package name or bundle ID is permanent. Changing it means publishing a new app, so set it correctly before the first release.
Why must each app have its own package name?
Google Play and the App Store require a unique identifier per app, and you can't reuse the demo identifiers that other buyers of the script also have.
Do I need to rebrand the admin panel too?
Yes. The business name, logo, email templates, notification templates and legal pages are set in the admin panel, and users and reviewers see them.
Will rebranding be lost when I update the script?
It can be if you overwrite files blindly. Keep a record of every change and reapply it to each new version, or use a maintenance workflow that carries changes forward.