Variabili Xcode


103

In Xcode, so che puoi ottenere variabili da PROJECT_DIRutilizzare in alcune situazioni, come una fase di creazione di script di esecuzione. Mi chiedo se sia possibile ottenere il tipo di build (cioè Release o Debug ). Qualche idea?



Risposte:


147

La fonte migliore è probabilmente la documentazione ufficiale di Apple . La variabile specifica che stai cercando è CONFIGURAZIONE.


8
Adoro il modo in cui Xcode si rifiuta di mostrare quella pagina se digiti "build settings" in una casella di ricerca - ottieni l'ALTRO tipo di build setting, senza alcun riferimento a queste variabili. Idem se metti "costruire variabili". Qualcuno dovrebbe insegnare ad Apple come scrivere un algoritmo di ricerca :)
Adam

24
Se stai cercando di creare una "fase di creazione dello script di esecuzione", puoi avviare questo script digitando "env" (senza virgolette) come prima riga del tuo script di shell bash (o il comando equivalente per la shell che tu ' riutilizzando) e costruisci il tuo progetto. Questo produrrà tutte le variabili di ambiente disponibili. Puoi usarlo insieme alla documentazione per assicurarti di ottenere i dati che ti aspettavi.
Ryan H.

3
Penso di aver sprecato mezz'ora cercando di trovare i documenti che elencano / spiegano le variabili di ambiente disponibili per gli script. Ho inviato una richiesta di "miglioramento" chiedendo perché non possono semplicemente inserire uno di quei pulsanti rotondi a punto interrogativo con un collegamento alla pagina della guida appropriata. Ottimo suggerimento HZC, anche se vorrei che non fosse necessario.
Brian

3
È anche triste che la $ PROJECT_DIR di base non sia menzionata da nessuna parte in quel documento ufficiale. Immagino che sia solo un alias (meglio chiamato) per $ SRCROOT.
Ricardo Sanchez-Saez

4
Ad Apple piace riorganizzare periodicamente tutta la documentazione e interrompere tutti i collegamenti esistenti. Qualcuno dovrà dare la caccia al nuovo collegamento.
smorgan

20

Ecco un elenco delle variabili d'ambiente . Penso che potresti volerlo CURRENT_VARIANT. Vedi anche BUILD_VARIANTS.


Ok, quindi quando uso char * cv = getenv ("CURRENT_VARIANT"); Ottengo NULL. Cosa mi sto perdendo?
Brooks

1
L'altra risposta è giusta. Questo non lo è. LA CONFIGURAZIONE è quello che vogliono.
Baxissimo

E non è nemmeno l'elenco completo ... mezza verità
Evils
Utilizzando il nostro sito, riconosci di aver letto e compreso le nostre Informativa sui cookie e Informativa sulla privacy.
Licensed under cc by-sa 3.0 with attribution required.