2010-02-23 8 views
5

Was ich erreichen möchte, ist, dass das Anwendungssymbol in Builds, die ich an meine Betatester aussende, an die der Anwendung unterschiedlich ist wird zur Genehmigung eingereicht. Dies ermöglicht es mir und meinen Beta-Testern, die App als Beta-Version zu identifizieren.Wie kann ich mein iPhone-Projekt so konfigurieren, dass ein separates Anwendungssymbol für Betaversionen verwendet wird?

Ich war mir nicht sicher, ob ich ein Build-Skript hinzufügen sollte, um die Datei info.plist zu ändern und das dort angegebene Anwendungssymbol zu ändern. Dazu müsste ich den Build-Typ (DEBUG/RELEASE/DISTRIBUTION usw.) konditional überprüfen und den entsprechenden Wert in die PLIST-Datei schreiben.

Alternativ dachte ich, ich könnte ein separates Ziel für Beta-Versionen erstellen und das neue BETA-Anwendungssymbol dort angeben.

Wenn jemand diese Art von Verfahren zuvor getan hat, würden alle Tipps und Ideen, wie Sie es am besten tun, sehr geschätzt werden.

Antwort

11

Veraltet: Ab September 2017 ist meine Antwort wahrscheinlich jetzt veraltet. Bitte verwenden Sie die neuesten Apple Entwicklerhandbücher in Bezug auf Asset Catalogs. Asset-Kataloge sind die neue Möglichkeit zum Angeben von Bild-/Symbolressourcen für Ihre App.

Ursprüngliche Antwort:

Beiden Möglichkeiten, wie Sie erwähnt haben, kann für diesen Zweck verwendet werden (Durch ein separates Ziel oder Einstellungen beim Aufbau). Meiner Meinung nach wäre der logischere Weg, eine andere Build-Konfiguration zu verwenden und die Plist-Datei so einzustellen, dass sie den Icon-Dateinamen dynamisch von der Build-Konfiguration erhält.

Hier ist, wie ich es tun würde:

  1. Im Projekt Buildeinstellungen, erstellen Sie einen neuen benutzerdefinierten Variablen icon_file (für „Alle Konfigurationen“) genannt
  2. den Wert der Variablen auf " Icon.png "(für" Alle Konfigurationen ")
  3. Erstellen Sie eine neue Build-Konfiguration namens" Beta ".
  4. Legen Sie den Wert der ICON_FILE Variable auf "Icon-beta.png" für "Beta" Konfiguration.

(das macht alle Konfigurationen den Wert „Icon.png“ außer Beta config)

Im Info.plist den Wert von „Symboldatei“ -Attribut auf ${ICON_FILE}. Dadurch wird info.plist dynamisch den Dateinamen von der zuvor definierten Variablen erhalten.

Fügen Sie in Ihre Anwendungsressourcen das Beta-Symbol mit dem Namen "Icon-beta.png" neben "Icon.png", das Sie bereits haben, ein.

Wenn Sie die App mit der Konfiguration "Beta" erstellen, wird das Beta-Symbol der App als App-Symbol angezeigt.

Hoffe, das hilft!

+0

kommen, daran zu denken, können Sie die gleiche Funktionalität mit „Targets“ mit viel weniger Arbeit erreichen. – ravinsp

+0

Danke, das ist eine große Hilfe. Ich habe mich mehr auf die seperate Zielvorstellung gelehnt, da ich angeben konnte, welche Ressourcen in jedem Ziel eingesetzt wurden. Ich wäre immer noch daran interessiert, andere Menschen Gedanken oder Erfahrungen zu diesem Thema zu hören. –

+1

Wussten Sie, wie man Icons aus dem xcassets-Katalog verwendet? Ich habe versucht, AppIcon und AppIcon-beta zu spezifizieren, und verwende diese Namen in ICON_FILE variabel, aber es gibt keinen Effekt. – skywinder

1

Die angenommene Antwort funktioniert nicht für xcassets. Also, wenn Sie bereits begonnen, Xcassets Katalog hier zu verwenden ist hier die Schritte:

Sie müssen 2 verschiedene Ziele Ihrer Anwendung erstellen. Um dies zu tun:

  1. Klicken Sie mit der rechten Maustaste auf Ihr Ziel. -> Klicken Sie Duplicate (oder Cmd + D)
  2. Set Name des neuen Ziel wie MyApp-beta

erstellen eigenes Symbol:

  1. Gehen Sie zu Ihrem xcasset Katalog.
  2. Rechtsklick auf Spalte mit der Liste der Bilder -> klicken New App Icon
  3. Namen it wie icon-beta, fügt Platz hier Ihren Beta-Icons
  4. Klicken Sie auf Ihrem Beta-Ziel
  5. Gehen Sie zur Registerkarte General ->App Icons -> Wählen Sie Ihr Asset icon-beta

Hier ist es. Jetzt können Sie Ihre Beta-Anwendung erstellen!

Ein weiterer Vorteil dieser Methode gegenüber der in der angenommenen Antwort beschrieben - ist, dass Sie beide Versionen zur gleichen Zeit Ihrer Anwendung installieren können. (Dafür müssen Sie verschiedene Bundle Identifier einstellen).

7

Asset-Kataloge können verwendet werden, ohne ein anderes Ziel zu erstellen.

Hier sind die Schritte, die ich verwenden:

1 - Erstellen Sie zwei (oder mehr) icon App in images.xcassets gesetzt

appIcon1 appIcon2

2 - Erstellen Sie eine andere Konfiguration von Projekteinstellungen

demo configuration

3 - Zum Ziel gehen -> Build-Einstellungen und Suche nach App-Symbol. Der Asset Catalog App-Symbolsatzname wird unter Asset Catalog Compiler - Optionen angezeigt. Ändern Sie den Namen des Asset-Katalogs, der in der neuen Konfiguration verwendet wird.

app icon set name for configurations

4 - Bauen für verschiedene Konfigurationen.

simulator screen shot

+0

Dies funktioniert, hat aber den Nachteil, dass beide Iconsets in die Binärdatei eingefügt werden. Mit iOS 11 ist die Verwendung des Asset-Katalogs jetzt obligatorisch. – kindaian

Verwandte Themen