Reputation: 371
I am working on a project where we have a product that we are selling to clients and basically it is same app with just different client logos, name and app color and some minor changes.
Let's say we have an app that creates a blog post. All of our clients are using this app and the only difference is that all apps have their own customer logos and color schema. It is hard to maintain multiple different projects and versions of apps. I mean if we have a new feature to implement or a bug fix, it is painful to copy code and put it in all apps and compile and generate APK files for Android and share it with clients.
It is also hard to deploy/create project when we get new client. Basically I am copying all project files, renaming directory and changing package name. I work on Android project, but we also have people working on iOS and it is same issue.
Is there any easy way to manage projects like this with some Android Studio feature and XCode feature? So for example, new feature of this app is allowing users to create post with uploading images so I write code for one Android app and push it to all apps and I can get APK files easily without opening multiple Android Studio projects?
Upvotes: 0
Views: 460
Reputation: 1527
Android Studio has support for multiple build types: https://developer.android.com/studio/build/build-variants.html
Xcode can support multiple Targets: https://developer.apple.com/library/content/featuredarticles/XcodeConcepts/Concept-Targets.html
With both you can use a shared codebase and depending on the build target/flavor/type, you simply use different assets, etc.
This would even let you configure certain apps with features enabled/disabled (assuming it's architectured well)
Upvotes: 5