UIImagePickerController Сбой после 5-7 фотографий - снова - PullRequest
3 голосов
/ 17 апреля 2009

Хорошо, я знаю, что этот был забит до смерти на этом форуме, но у меня все еще есть проблема с памятью, и я попробовал все методы в Интернете, чтобы обойти это.

У меня есть приложение, которое использует UIImagePickerController для захвата изображения с камеры. Я пытался как создать и уничтожить контроллер для каждой картинки, так и сохранить его на всю жизнь приложения. Оба терпят неудачу. Первый способ вылетает телефон почти сразу. В то время как второй, оставляя контроллер включенным, вылетает приложение примерно через 5-7 картинок.

Мое оригинальное приложение использовало недокументированный API, чтобы обойти эту проблему, но Apple отклонила его из-за этого. Мне действительно нужно доставить мое приложение в магазин. У кого-нибудь есть код, показывающий, как они обошли проблему?

Я знаю, что есть способ, потому что в магазине есть приложения, использующие камеру, но я просто не могу его получить. Любая помощь очень ценится!

Я также могу опубликовать свой код здесь, если это необходимо.

Ответы [ 2 ]

2 голосов
/ 18 июля 2011

Эта статья решила все мои проблемы с авариями - http://wiresareobsolete.com/wordpress/tag/uiimagepickercontroller/ Надеюсь, это поможет.

1 голос
/ 22 марта 2010

У меня была похожая проблема с приложением monotouch. Для меня причиной оказалась утечка памяти. Я использовал одну и ту же переменную UIImage для хранения каждого последующего изображения. В результате просочились предыдущие картинки. Monotouch (c #) несколько отличается от цели C тем, что иногда сборщик мусора позаботится о таких вещах для вас. Но в моем случае это не так. Для меня решение было явно вызывать .Dispose () для старого изображения перед сохранением нового.

Полагаю, ваша проблема может быть одинаковой. Убедитесь, что вы не осиротеваете никакие данные изображения и что вы явно удаляете любые данные, с которыми вы покончили. Также помните, что существуют ограничения на объем памяти, доступной вашему приложению. Также возможно, что вы просто пытаетесь удержать в памяти слишком много картинок одновременно.

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