IOS app white label

I have a project that I would like to use on a white label. Basically, you only need to change the icons, startup images and info.plist. The problem is that the project is too large, and I really do not want to add additional goals and resources to it.

The solution I see is to create a separate project and add the first as a project dependency. This white labeling project will not have any code except for a bullet of targets with different images and information for them. In this case, every time I want to use a shortcut for the application, I would simply create another target with my own set of images. And whenever I want to do another release, I could easily collect all these goals and get a bunch of options for the same application. That sounds easy.

The problem is implementation. I linked the project as a dependency, just like I did with the target. But every time I create an application, it creates an executable with the original name, even if it is different from info.plist. This is probably because the original target has its own info.plist. Another thing is how to replace the resources of the original goal with others.

Appreciate any help

+8
ios build xcode target
source share
4 answers

I did it at my work and how I did it. I have a python script that I wrote that goes in and processes Info.plist with a list of replacement values ​​that I store in an alternative plist file. We also have a script build step that goes and introduces any resources we need for this particular build.

You can manipulate the package with everything you want, but you need to do it just before Xcode signs the application. In some cases, you may need to log in and edit Info.plist in the bundle, and this is normal, just do it before the signing stage.

+2
source share

I am currently running a whitelabeled iOS app. We add goals for each client with a white label in the main project and made most of our applications customizable using the Theme.plist file.

So, each goal includes all classes for the application, but has custom Info.plist , icons, launch screens, font files, and Theme.plist .

We avoided the approach mentioned above as @dtrotzjr, because there were several things outside the Info.plist file that we needed to change for each goal ... A good example, as well as preprocessor macros to handle a random #ifdef for hacking for everyone customer.

It also helped new developers understand the build process.

+17
source share

Apple will now reject all applications with a white label, see this: https://blog.summitsync.com/did-apple-just-crush-white-label-apps-4aee14d00b78

0
source share

We use Bash scripts. Copy and replace application icons, screensavers, frequently asked questions, analytics configuration files, etc. Then pass the brand color configurations and logical values ​​for the various functions to the JSON file. This gets a little trickier when you start using sed to add and remove tablet support. It takes a few seconds to run. It also helps to use PDF files as assets, if an asset is only one color, then you can use tintColor for brand color.

The advantage of using Bash is that it will be available on all CI systems.

ps Apple is still accepting white-label apps. As long as the client signs the xcarchive file that you send them as your own, everything will be fine with you.

0
source share

All Articles