Comment désactiver NSLog partout dans l'application?
Je veux désactiver NSLog()
dans tous les cas dans une application. J'ai trouvé un code qui fait que:
#ifndef DEBUG
#define NSLog //
#endif
Mais l'ajout de ce code pour chaque fichier n'est pas une bonne idée. Comment puis-je le rendre plus facile?
source d'informationauteur Timur Bernikowich
Vous devez vous connecter pour publier un commentaire.
Xcode a un fichier d'en-tête précompilé (
{project-name}-Prefix.pch
dans les Fichiers de prise en charge du groupe par défaut), qui est un endroit idéal pour mettre le code qui sera utilisé dans tous les fichiers du projet. Pour aller plus loin et améliorer le message du journal lui-même, voir Est-il vrai que l'on ne devrait pas utiliser NSLog() sur la production de code?.Ajoutez les lignes suivantes à votre fichier de constantes:
Les deux phrases suivantes donnent les mêmes résultats
et
parce que tous les textes qui commencent par //sont supprimés dans une précompilation de phase ("//" inclus)
Ce que j'ai à faire est de mettre ceci dans le fichier d'en-tête précompilé (YourAppName.pch):
Puis-je changer tous les NSLog de Monjournal est partout dans l'application. Il fonctionne comme si elle était NSLog. Mais lorsque vous souhaitez désactiver NSLog, revenir à la .pch fichier et modifier le
0
à1
et hop, tous les enregistrement s'arrête.Cela permettra également de prendre soin des avertissements qui surviennent lors de l'utilisation de
Le code:
Il suffit d'ajouter les lignes suivantes lorsque vous ne't besoin d'NSLOG pour votre fichier de constantes
et commentaire quand vous en avez besoin.