При отладке сборки отладки я предпочитаю что-то, что вылетает в отладчике, поэтому я не только узнаю причину, но и могу при необходимости поискать подробности.Отправка случайного сообщения любому объекту, отличному от nil, является одним из способов сделать это в Objective C.
[ UIApplication foo: bar ];
Для отправки в магазин приложений -terminate определенно отклонит ваше приложение для использования (официально) недокументированного API.И, как сообщалось, exit (0) также делает это, хотя это документированный вызов ОС.
До OS 4.0 вы всегда могли отправить URL-адрес Safari, что заставило бы ОС корректно завершить работу вашего приложения.Не уверен, что делать в OS 4.0 и после того, как это законно в App Store.