per la mia app Mi piacerebbe avere una vista di debug che voglio avere solo in debug-builds e non nelle build di release . Non voglio cambiare il mio codice però. Ecco perché mi chiedo se posso controllare alcuni flag del compilatore se si tratta di una versione di rilascio ed escludere alcuni codici che voglio solo per avere per le build di debug.iOS: frammenti di codice facoltativi per build di debug
risposta
Nei tuoi progetti costruire impostazioni, cercare il preprocessore definisce sezione, lì si può definire una variabile nel solo la tua build di debug, come ad esempio DEBUG=1
, e quindi utilizzare questo nel codice:
#if DEBUG
NSLog(@"This will only print in debug!");
#endif
Proprio assicurati che nella tua configurazione di rilascio, la stessa definizione sia impostata su 0 nella stessa posizione nelle impostazioni di costruzione
Verifica le impostazioni di costruzione dei progetti per il debug per garantire che venga impostato DEBUG - Apple ti dà questo gratuitamente - fai questo selezionando il progetto e facendo clic sulla scheda delle impostazioni di compilazione. Cerca 'DEBUG' e cerca di vedere se DEBUG è stato impostato.
poi condizionale codice per DEBUG nel file di origine
#ifdef DEBUG
// Something to log your data here or even add a whole subview to see it on the device
#else
//
#endif
ma cosa succede se si invia l'app a Apple e si dimentica di impostare DEBUG = 0 – meda
- 1. Build sviluppatori iOS e build di distribuzione
- 2. Frammenti di codice non indentati
- 3. Scorciatoie di frammenti di codice VB.NET
- 4. Analizzatore APK per Android Studio per build di debug
- 5. Uso di diverse DLL per build di debug e release
- 6. Build di debug di rilascio per l'applicazione Android
- 7. Resharper: frammenti di codice con scheda + scheda
- 8. Debug di codice Lisp
- 9. Sphinx, reStructuredText mostra/nascondi frammenti di codice
- 10. Come specificare la posizione del keystore di debug per le build di debug della form Android?
- 11. Codice diverso/config in Release & Debug build (Obj-C)
- 12. build Fastdebug/debug per JDK 7
- 13. Override android: attributo vmSafeMode per build di debug
- 14. Debug remoto Chrome per iOS
- 15. Strumento di gestione di build e progetti per build e dipendenze di iOs
- 16. Implicazioni di distribuzione di una build di debug di un'applicazione?
- 17. iOS 4 build SDK
- 18. Codice di python di debug in pycharm
- 19. Rientro di frammenti di codice di VS 2008
- 20. Sviluppo simulatore xcode iOS build
- 21. Migliori pratiche e strumenti per il debug delle differenze tra le build di debug e release?
- 22. resConfigs per tipo di build
- 23. Debug di codice offuscato java
- 24. Codice di debug nell'interprete Python
- 25. Release vs Debug Build Times
- 26. Generazione di codice per iOS e Android
- 27. iOS PhoneGap debug Flusso di lavoro
- 28. Caricamento di build to Testflight IOS
- 29. Come eseguire le build di debug di MSVC più veloci
- 30. Collegamento a cassa ottimizzata da una build di debug
errore di battitura lì: usare #ifdef #ifdef – Tomen
è un'altra opzione, ma io preferisco usare #if invece –
Come ho detto nel il mio commento prima, preferisco usare '# if 'piuttosto che' # ifdef'. Spetta interamente al programmatore usare e ognuno ha i suoi vantaggi e svantaggi. La mia preferenza è usare il metodo in cui ogni flag è sempre definito, ma come uno 0 o un 1 per indicare lo stato di quel flag, piuttosto che cercare di capire se quel flag è definito nel progetto –