Utilice la opción "Esperar a que MyApp.app lance".
En Xcode, mantenga presionada la tecla Opción y elija Producto-> Ejecutar ... (las elipsis se agregan cuando mantiene presionada la Opción). Aparecerá el editor de esquema, con el esquema Ejecutar seleccionado. Haga clic en la pestaña Información, y en el panel de información resultante verá un grupo de radio con la etiqueta "Iniciar" con dos opciones: "Automáticamente" y "Esperar a que se inicie MyApp.app". Si selecciona la segunda opción, Xcode iniciará el depurador y esperará a que inicie su aplicación manualmente. Puede establecer un punto de interrupción al comienzo del código que desea depurar, y el depurador se detendrá allí.
Restablezca la aplicación a su estado anterior.
Es posible que desee considerar agregar algún código que restablezca la aplicación al estado en que estaba antes de la actualización. Esto puede ser código de depuración que está excluido de la compilación de lanzamiento. Los problemas de depuración que requieren que reinstale la aplicación cada vez que desee ejecutar su depuración pueden tomar un lote de tiempo. Incluso el solo hecho de tener que reiniciar la aplicación en cada ciclo de depuración consume mucho tiempo. A menudo vale la pena dedicar un poco más de tiempo a agregar un botón a tu aplicación que deshaga cualquier cambio que estés haciendo para que puedas volver a hacerlo.
Prueba de la unidad.
Una forma excelente de depurar código que trata con estados de aplicación que son difíciles de recrear es escribir pruebas unitarias. En una prueba, puede crear cualquier estado que desee. Incluso puede crear estados de aplicación que pueden ser imposibles de recrear en su aplicación. Y puede depurar ese código una y otra vez. Al igual que la solución anterior, lleva un poco más de tiempo escribir el código por adelantado, pero ahorrará mucho tiempo en cada iteración de su ciclo de depuración que bien lo vale. Aún mejor, puede agregar la prueba a su proceso de compilación para asegurarse de que la funcionalidad no se rompa más tarde.
No puede usar instantáneas o control de versiones para administrar reversiones/reversiones, por lo que no hay preocupaciones con "sobrescribir la aplicación existente". – rwyland
Si no desea que sobrescriba su producto existente en Xcode, siempre puede hacer una copia de la carpeta de proyectos y resolverlo. – John