web-dev-qa-db-fra.com

Comment ajouter un point d'arrêt à objc_exception_throw?

ce fut la réponse du brad larson sur ce DONC question

Si vous ajoutez deux points d'arrêt, vous devriez pouvoir déboguer ces exceptions. Pour ce faire, accédez à Exécuter | Spectacle | Points d'arrêt et créer deux points d'arrêt globaux (je les fais globalement car ils sont tellement utiles dans toutes mes applications). Le premier doit être nommé "objc_exception_throw" et son emplacement doit être "libobjc.A.dylib". Le second doit être "- [NSException raise]" et son emplacement doit être "CoreFoundation".

Maintenant, si vous commencez à déboguer votre application avec des points d'arrêt activés, elle devrait s'arrêter à la levée de ces exceptions. Vous devriez alors pouvoir voir la chaîne d'événements qui a conduit à l'exception dans le débogueur.

maintenant dans cette réponse, je veux demander comment ajouter l'emplacement mentionné ???

80
Rahul Vyas

Je pense que la réponse de Brad est assez claire; j'espère que cela peut aider si vous ne trouvez pas cela clair.

Dans Xcode, dans le menu supérieur, cliquez sur Exécuter> Afficher> Points d'arrêt. Une nouvelle fenêtre apparaît.

Sélectionnez "points d'arrêt globaux" dans le menu de gauche. Il devrait y avoir une boîte à droite sous la colonne "Point d'arrêt" avec le texte "Double-cliquez pour le symbole". Cliquez une seule fois dans cette case et saisissez "objc_exception_throw".

Ensuite, cliquez une fois dans l'espace à côté de "objc_exception_throw" sous la colonne "emplacement". Une boîte apparaîtra pour vous permettre de taper l'emplacement (dans ce cas, "libobjc.A.dylib"). J'ai fait une capture d'écran qui, je l'espère, vous aidera:

alt text

81
h4xxr

Dans Xcode 4, ce grand point d'arrêt peut être ajouté via le bouton "+" dans la section Points d'arrêt (⌘ + 6)

enter image description here

45
Valerii Pavlov

dans Xcode 6 - depuis le menu supérieur

Déboguer> Points d'arrêt> Créer un point d'arrêt d'exception

6
user3812138

Je voudrais également recommander d'ajouter le +[NSException raise:format:arguments:] le point d'arrêt et son emplacement doivent être CoreFoundation.

4
Ameer Sheikh