Ich arbeite an einem Produkt, das in vielen verschiedenen Organisationen eingesetzt werden soll (Ideales Szenario, Dutzende). Jeder Einsatz des Systems (bestehend aus nativen Apps für iOS und Android) wird beinhaltet die folgende:Wie wird mit der Bereitstellung von mobilen Apps mit weißer Beschriftung verfahren?
- Branding-spezifisch für die Organisation (dh eine neue Haut)
- Integration mit dem Authentifizierungssystem und Benutzerdatenbank des Unternehmens
- Einige benutzerdefinierten Funktionen auf die
Mit anderen Worten Bedürfnissen der Organisation abhängig, werden die Kernfunktionalität das gleiche für alle Einsätze bleiben, aber jede Instanz wird anders aussehen, in ein anderen Authentifizierungssysteme Haken und hav e bestimmte Funktionen aktiviert/deaktiviert.
Meine Frage: Was ist die beste Strategie wäre unser 2 Handy Codebases (iOS & Android), um für die Verwaltung von Doppelarbeit und vereinfachen den Bereitstellungsprozess zu minimieren?
Die drei Lösungen wir diskutieren sind:
eine Kern-Bibliothek erstellen, die auf allen Instanzen gemeinsam genutzt wird (als Teilprojekt/Bibliotheksprojekt oder ein git-Modul), und fügen Sie eine dünne Ebene oben mit dem Branding und allen Konfigurationsdetails.
Pflegen Sie einen Git-Zweig mit der Kernfunktionalität und erstellen Sie einen neuen Zweig für jede Implementierung, die den zusätzlichen Code enthält.
Tun Sie etwas völlig anderes, dass eine intelligentere Person auf Stackoverflow suggeriert.
Was klingt am besten für Sie? Vielen Dank im Voraus für jede Rückmeldung !!
Ich gehe für Option 1.GIT-Niederlassungen werden die Wartung viel schwieriger machen als Bibliotheken aus GIT-Submodulen - aber das liegt nur daran, dass ich Submodule für die Funktionalität liebe, die unberührt bleiben und nach Bedarf/Bedarf einfach aktualisiert werden können. – Till
Au, und wie wäre es mit einer Art von Konfigurations-Feed, der einige der dynamischeren Daten im laufenden Betrieb erstellt, sobald die App gestartet wird. Gibt Ihnen maximale Flexibilität zumindest für die Ressourcen - Schade Apple erlaubt keine dynamischen Bibliotheken (über Downloads). – Till
@bmat Welchen Ansatz haben Sie gewählt? Ich bin hier in der gleichen Situation. – Latrova