I'm building an iPhone app that will be branded for several different companies. Each company will get their own app. The code base is the same. Really, the only thing that will be different between them are the app name, app icon, default image, and a few images used inside the app. Is there a best practice to automate this? I am pursuing scripting everything and have some preliminary scripts somewhat working, but it occurred to me there may be a simpler way with Xcode 4.
Any suggestions?
Thanks.
You'll need to create a new workspace and add a new project for every own app. You won't need to create all classes for every project. Just create a "core" project with your code base and add his files by reference to the custom projects.
i have same scenario , in which we maintain a global-config File which contain all UI Elements like NavBar , Buttons everything , as we have same layout for all clients , so we maintain a same layout with different color Theme the client choose,.
so for distribution , we change the settings in global file , then add the Client Provision ,& will send for review.
Hope this Helps
Related
I have one project that I have to sell to another clients, so I wanna found a way to unify the code to, when I release some updates, I have to manipulate only one code (and, of course, keeping the specificities from each one)
I found an article HERE which the guy creates a new folder named 'config' and set some variables there to be used in the parent project. I tried this but find out that would be very tough to do because the first app was developed specifically by one client, and with it I would need so much time to make all the aspects dynamic... Another problem is firebase, in first app I used firebase but in the second i won't. How to make it possible?
And in this article they say about 'flavours' that can be used to do something similar.
Someone knows about this approaches or there is another to reach my goal? With flavours I will have less re-factor than with config?
I appreciate any help
A third way to do this with no client specific app configuration is to make an api call to get back your client specific theme, and then set the flutter theme based on this.
If you need web support see below:
First update your assets in index.html that aren't white labeled, leaving stubs in their place that we'll fill in later. i.e.
Next show a nice loading indicator while flutter loads. To do this, just put the html for it in the body element of the index.html file.
Finally update the webpage title and favicon using javascript inside Flutter. I used package
universal_html: 2.0.8
https://pub.dev/packages/universal_html
then you can update the favicon
import 'package:universal_html/html.dart';
var favicon = document.getElementById('favicon');
favicon?.setAttribute('href','insertLinkToYourImage');
Updating the title can be accomplished in various normal ways like just setting the title attribute of a MaterialApp widget.
I'm going to make 10-50 different apps with the same codebase. So I'll probably have to use flavors. But is there a simpler way?
The only thing that's going to be different in the apps is the title, logo, maybe background, MP3 files and some text in the apps. Everything else will be the same.
What's the most straightforward way to do this? Can someone send some ressources I can learn from?
In my experience, I wrote multiple main.dart files. instead of having one lib/main.dart, we can have more e.g lib/main-us.dart, lib/main-uk.dart, lib/main-ge.dart.
in those files, we can put some parameters within MyApp using either Dependency Injection or Inherited Widget, therefore all children widgets can display correspondingly to its flavor
YES!
you can have :
Multiple configs so you can have some of this in flutter code base. [ apiBaseUrl , OnseSignalId , etc..
Flavors in both platform so you can have multiple apps ( applciation id in android and bundle id in ios ) and multiple folder for resources like Google-Service.json...
I'm new to Ionic 2 and I've discovered templates and theme market, but I don't know how to use it.
Let's say I want to use this template: https://market.ionic.io/starters/event-app-and-maps ; one I've downloaded the zip file, how should I use it? Do I have to create a blank project and then add the downloaded folders in it? If so, is it possible for me to change some of the contents (let's say if I want to use just some of the content offered)?
Same question for themes: how can I integrate them in my project?
First try to understand the app structure and what are the different types of files,folders and what is the use of them etc.. Without that you can not do anything.
Now coming to market themes.. Download the theme and go thru it. Normally most of the developers will provide a how to use guide. Follow those steps or it will be much better if you implement on your own after understanding the code.
Let's say we have a mobile app (iPhone, Android) already deployed and being used by people.
Is it possible to change text on buttons, title bars, or even shape or colour of these things without a major update? What I mean is, do we have to deploy an update to the whole app (for example, new version) in order to change one single text on the button? Or maybe these things (settings) can be stored in some kind of database or XML?
Help me out on this one please. Thanks a million.
Is it possible to change text on buttons, title bars, or even shape or colour of these things without a major update?
No. You have to deploy a new version, even if you want to change a single thing like that.
It's possible to do changes to an existing app without deploying a new version, but in your case it's not possible. This is how it works:
You create a mechanism to check for new updates.
New updates can be new data, new settings, etc.
You make your app download and use that new data.
The problem here is that you have to have already deployed an app that do the steps above. Since your app currently does not have that implemented, there's no way to do any changes to it but updating it.
You have to update your app. I implemented the consumption of a JSON string recently to display a Message of the Day periodically. It also keeps a "low watermark" that I compare against the user's running version. If their version is too old I present them with 2 options: upgrade or quit.
You could as easily make your text work in the same way. Just be sure to keep a local cache in case they don't have network access. Will require some healthy refactoring.
you are able to store the text of buttons in values/Strings.xml and set them to the controls by text="#String/text_for_buttonxy" . This is grat for multiple languages, because you are able to put the Strings.xml in a country-code ending value folder like values-de values-en or values-fr in order to get the right String based on the phonesettungs.
Vor colors you are able to to the same thing with the colors.xml.
But you won't be able to change this xml file by synchronisation with a server, this will be a litte bit more complicated, please explain how to you want to change the settings.
what if i have ecommerce application?
like i have
1)sale page
2)list of product page(grid view and list view)
3)detail of product
4) zoom images for that product.
what kind of template should i use?
i refer this post but its not clear.
New iPhone App - How to Choose which Xcode Template to Use?
Thanks
If you have a hierarchy of views in which you go from general to specific information, then you want the navigation template.
However, most of the time, the templates are just starting points for learning. In most cases, you will have an app that is a combination so you start with the generic windows-based template and then flesh it out yourself.
If there is a similar application on the AppStore you may like to see how they have approached it, generally there is something similar that can help you clarify how you would like your application to function.
From the sounds of your application idea you would probably be best served by the Navigation template. But after all it is only a template, you can completely change the structure of the application later without needing to start another project.