2016-04-07 22 views
4

Ich muss zur Laufzeit feststellen, ob meine Apps Kopie Produktion/Entwicklung Version ist. Gibt es irgendwelche Methoden, um das gleiche zu erreichen?Ermitteln, ob die App die Produktionsversion oder die Entwicklungsversion ist

Ich freue mich auf die Entwicklung einer Push-Benachrichtigungs-API, die APNS-Nachrichten entsprechend an den Server sendet (d. H. Sandbox oder ohne Sandbox).

Irgendwelche Hilfe? Danke im Voraus.

+1

Sie könnten Schemas verwenden, in meinen Anwendungen habe ich ein Entwicklungs- und ein Produktionsschema und eine PLIST-Datei für jeden einzelnen, so dass Sie lokal im Produktions- oder Entwicklungsmodus arbeiten können – Scriptable

+1

Sie können jeder Konfiguration einen Kompilationsparameter hinzufügen und prüfen dieser (Preprocessor Macros, als ein Beispiel). – lucianoenrico

+2

http://stackoverflow.com/questions/26081543/how-to-tell-at-runtime-whether-an-ios-app-is-running-through-a-testflight-beta-i – jithin

Antwort

3

In diesem Fall können Sie bedingte Kompilierung verwenden und überprüfen, ob Sie im Debug-Modus sind.

In den Projekteinstellungen Sie einen Präprozessormakro, um anzuzeigen, die Debug-Build haben sollte definiert:

preprocessor settings

Sie das, oder definieren Sie Ihre eigenen verwenden können.

in Ihrem Code können Sie setzen:

NSString* platform = @"ios"; 
#if DEBUG 
    platform = @"ios_sandbox"; 
#endif 

alles zwischen #if DEBUG und #endif wird nur dann kompiliert werden, wenn DEBUG=1 (in diesem Fall nur im Debug-Konfiguration) definiert ist, so dass am Ende Sie in platform Variable haben Der Wert von ios in Release-Builds und ios_sandbox in Debug-Builds.

Verwandte Themen