Ho diverse istruzioni assert(condition, "message")
nel mio progetto.Gli assalti vengono colpiti in build di produzione causando arresti anomali
Sono utilizzati per verificare le condizioni invarianti durante lo sviluppo. Ho pensato che sarebbero stati ignorati nella produzione/versione di rilascio (come indicato in this answer). Non lo sono. Invece causano arresti anomali durante il test di TestFlight. Quando commento afferma che l'app non si blocca. Di solito qualcosa va storto, ma non si blocca.
Può essere qualcosa con le mie impostazioni di compilazione?
Tutti i miei schemi di archiviazione utilizzano configurazione di rilascio:
Il asserisce sono in progetto Cocoa Touch Framework, che viene utilizzato da estensione tastiera personalizzata.
Tutti gli obiettivi in tutti i progetti (Cocoa Touch Framework, e il progetto principale con l'obiettivo di estensione della tastiera) hanno queste le impostazioni di creazione:
Enable Foundation Assertions
Debug YES
Release NO
Disable Safety Checks NO
Cosa c'è di sbagliato?
EDIT:
Sulthan's answer mostra come disattivare afferma globalmente sia per debug e relase costruisce. Non è quello di cui ho bisogno. Voglio che funzioni come previsto: gli avvisi dovrebbero essere abilitati nel debug ma disabilitati nelle versioni di rilascio.
Per impostazione predefinita funziona in questo modo - e funziona anche in questo modo nel mio progetto principale. Ma non funziona per le affermazioni situate nel progetto Framework che è collegato da quel progetto principale (dettagli in this question). Perché? Come sistemarlo?
Hai provato la mia [risposta] (http://stackoverflow.com/a/24038197/669586)? – Sulthan
@Sulthan No non l'ho fatto. Ho pensato che non fosse necessario aggiungere alcun flag personalizzato per assicurarsi che ignori gli asserzioni durante il rilascio. Lo proverò ora. – drasto
Penso anche che non dovrebbe essere richiesto (era richiesto in una delle prime versioni beta). – Sulthan