2011-08-31 15 views
21

Desidero utilizzare un URL API diverso per la mia app per iPhone quando eseguo il debug o eseguo una distribuzione ad hoc. C'è un modo per rilevare dal codice (se adhoc) utilizzare questo URL piuttosto che quello predefinito?iOS, rileva ad hoc dal codice

risposta

55

Ci sono due modi che posso pensare:

1.) compilazione condizionale

Dal momento che si deve "Archivio" il prodotto per distribuire la build ad hoc, si potrebbe anche configurare una nuova configurazione per Archiviare e sfruttare il preprocessore.

2.) File di default .settings predefiniti basati su Release/Debug/AdHoc.

Stesso suggerimento come sopra, ma utilizzando un file .settings invece di una compilazione. Personalmente, lo raccomanderei alla compilation condizionale perché può essere modificato (e salvato) dopo la distribuzione se vuoi testare altri ambienti senza ridistribuire.

EDIT

Conditional Compilation refers to using "ifdef" blocks right? I tried this once but couldn't get it to check for AD-HOC, only DEBUG seemed to work

corretta.

Non esiste una macro "ADHOC" definita per impostazione predefinita. Ma puoi facilmente aggiungerne uno.

Ecco come si potrebbe andare su come impostare una configurazione aggiuntiva con una nuova macro di preprocessore per il vostro ADHOC costruisce:

Fase 1: Imposta una nuova configurazione (optional ... si potrebbe anche usare uscita .. . sta a te).

Setup a new config

Fase 2: aggiungere la macro preprocessore per quella configurazione. Nel mio screenshot mostra solo Debug e Release perché in realtà non ho aggiunto una nuova configurazione. Se è stata aggiunta una nuova configurazione (e chiamato qualcosa come "AdHoc", dovrebbe apparire anche qui:

enter image description here

Aggiungi ADHOC=1 proprio come il DEBUG=1 macro per la configurazione di debug

. fase 3: o modificare il sistema attuale, o duplicati di esso, in modo che il "Archivio" passo utilizza la nuova configurazione:

enter image description here

+0

Non ho letto/sentito parlare di nessuna di queste tecniche. Hai dei collegamenti? Compilazione condizionale si riferisce all'utilizzo di blocchi "ifdef" giusto? L'ho provato una volta ma non riuscivo a farlo controllare AD-HOC, solo DEBUG sembrava funzionare. –

+0

Post aggiornato per mostrare come procedere. – Steve

+0

Schermate eccellenti. Grazie. Tutti votano questa risposta. –

Problemi correlati