приложение для iphone, запущенное в симуляторе 3.0, отладочное, но не в симуляторе 3.0 Release - PullRequest
1 голос
/ 03 марта 2010

когда я запускаю приложение iphone в симуляторе 3.0 Debug. Работает нормально.

но это же приложение не работает в симуляторе версии 3.0. И показывает ошибку

файл найден и читается логин

2010-03-03 18:55:49.176 FocusPay[4743:207] *** Terminating app due to uncaught
exception 'NSRangeException', reason: '*** -[NSCFArray objectAtIndex:]: index (0)
beyond bounds (0)'
2010-03-03 18:55:49.177 FocusPay[4743:207] Stack: (
    807902715,
    2472563977,

Если кто-нибудь знает решение, пожалуйста, напишите, заранее спасибо.

Ответы [ 3 ]

0 голосов
/ 03 марта 2010

Возможно, вы обращаетесь к массиву с помощью сообщения objectAtIndex, даже если массив пуст.

0 голосов
/ 04 марта 2010

Как вы создали массив? Одна распространенная ошибка с массивами Obj-C - забыть завершить их с нулем.

Когда вы запускаете в Debug, у вас установлены точки останова, где приложение останавливается? Если это так, то также возможно, что у вас есть состояние гонки, которое происходит только в Debug.

0 голосов
/ 03 марта 2010

Это может быть миллион вещей. Вы должны просто попытаться разделить свой путь вниз, отключая части вашей программы, пока она не потерпит крах. Затем добавляйте вещи обратно, пока не приблизитесь к злой части.

Ваша проблема не является необычной и возникает во всех средах разработки. Чтобы избежать этого, я рекомендую проводить тестирование в режиме выпуска так же часто, как и в режиме отладки. Когда дело доходит до iPhone или аналогичной разработки, я также рекомендую попробовать приложение как можно больше на реальном оборудовании, если оно у вас есть.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...