2016-05-13 5 views
2

Wenn ein Bot Einrichtung dort ein Register „Umgebung“ ist, die wie folgt aussieht:Wie benutzt man Xcode Bot Environment Variablen?

env

Ich würde erwarten, in der Lage sein für den Zugriff auf diese Umgebungsvariable in meinem Test wie folgt aus:

NSString *username = [[NSProcessInfo processInfo] environment][@"accountEmail"]; 

Aber das kommt als Null zurück. Und ich kann überprüfen, ob [NSProcessInfo processInfo] mit anderen Daten gefüllt ist, indem ich seinen Inhalt auf der Konsole protokolliere.

Ich denke, das ist eine ziemlich neue Bot-Funktion (weder die WWDC-Videos 2015 noch die Dokumentation von Apple erwähnen diesen Tab), aber hat jemand Erfolg beim Zugriff auf diese Bot-Umgebungsvariablen?

Antwort

0

Ich merke das Gleiche. Scheint wie ein Fehler in Xcode Server. Sie sollten wahrscheinlich ein Radar protokollieren.

In der Zwischenzeit können Sie Schemata Umgebungsvariablen hinzufügen. Sie können verschiedene Schemata für verschiedene Konfigurationen erstellen und die, die Ihr Bot verwendet, wechseln. Es ist nicht ideal, aber es macht den Job erledigt.

Build Scheme Run Settings

0

Um eine Umgebungsvariable durch eine „Argumente“ Registerkarte Bot auf zuzugreifen, müssen Sie Konto zuerst in Ihrem Schema für diese Variable.

In Xcode 9.2, gehen Sie zu bearbeiten Schema ...>Run>Argumente>Umgebungsvariablen und Ihre Umgebungsvariable mit NamenaccountEmail und Wert$(accountEmail) hinzufügen. Dann sollte der Wert, den Sie für die Umgebungsvariable in der Konfiguration Ihres Bots eingestellt haben, in Code durch (in Swift 4) ProcessInfo.processInfo.environment["accountEmail"] zugänglich sein.