Gibt es einen Überblick oder eine Anleitung, wie Sie eine App mit "Add-ons" entwickeln könnten?
Wie entwickelt man beispielsweise eine Art Framework für das Hinzufügen von "Themen" zu einer App?
Es gibt die grundlegende App mit 2 Themen. Der Benutzer sollte in der Lage sein, eine andere App für ein bestimmtes Thema herunterzuladen.
Wie kommunizieren die ursprüngliche App und die neu heruntergeladene App?
Wie würden Sie die originale App entwickeln, um die Themeninformationen und Grafikelemente aus der 2. theme only App zu erhalten?
Mir ist klar, dass Apps komplett voneinander getrennt sind, weshalb ich nicht weiß, wie ich das erreichen soll.
Wie kommunizieren die ursprüngliche App und die neu heruntergeladene App?
Für ein Thema, wer sagt, dass sie miteinander reden müssen?
Wie würden Sie die originale App entwickeln, um die Themeninformationen und Grafikelemente aus der 2. themenspezifischen App zu erhalten?
Schritt 1: Wählen Sie eine Namenskonvention für Ihre Pakete. Wenn Ihre Basis-App beispielsweise com.abc.app
ist, könnten Ihre Designs com.abc.app.theme.*
sein.
Schritt 2: Wenn es für den Benutzer Zeit ist, ein Thema auszuwählen, verwenden Sie PackageManager
und getInstalledApplications()
, um Ihre Designs zu finden, indem Sie deren Paketnamen überprüfen.
Schritt # 3: Wenn es Zeit ist, ein Thema zu verwenden, rufen Sie getResourcesForApplication()
auf PackageManager
auf, um das Resources
der Design-Anwendung zu erhalten, damit Sie Ihre Sachen sehen können.
Ich bin sicher, dass es Strategien gibt (zB ist das Thema meistens ein Fließband, das seine Sachen in einem Verzeichnis auf einem externen Speicher bereitstellt, von dem deine Haupt-App die Informationen liest), aber das ist der, mit dem ich anfangen würde , da es den geringsten Benutzereingriff erfordern sollte.
Ich glaube, dass das sauberste Design in diesem Fall darin besteht, eine einzige App im Market zu haben und die Themen auf Ihrem eigenen Server verfügbar zu haben. Dann könnte der Benutzer die App nur einmal von Market herunterladen und dann die auf Ihrem Server verfügbaren Designs anwenden.
Wenn Sie sie jedoch lieber als separate Markteinträge verwenden möchten, können Sie das Flag android: sharedUserId im Manifest festlegen, damit alle unter derselben Benutzer-ID ausgeführt werden. Dadurch können Sie Dateien freigeben (Bitmaps usw.) ) zwischen ihnen. Denken Sie daran, dass sie alle mit demselben Zertifikat signiert sein müssen.
Was für den Benutzer verwirrend sein kann, ist, dass er vor dem Herunterladen der Haupt-App ein Add-on herunterladen kann. In diesem Fall müssten Sie eine Fehlermeldung anzeigen, in der Sie aufgefordert werden, die Haupt-App herunterzuladen.
Tags und Links android