2012-06-20 3 views
0

Я работаю над приложением, которое делает снимок и сохраняет его на устройстве. При нажатии «сохранить», кажется, слишком долго, и он бросает это сообщение в журнале:wait_fences: не удалось получить ответ: 10004003 при съемке

wait_fences: failed to receive reply: 10004003 

Вот метод, который вызывается при сохранении снимка:

- (void)imagePickerController:(UIImagePickerController *)picker didFinishPickingMediaWithInfo:(NSDictionary *)info { 

    [picker dismissModalViewControllerAnimated:YES]; 

    AppDelegate *appDelegate = (AppDelegate *)[[UIApplication sharedApplication] delegate]; 

    UIImage *image = [info objectForKey:UIImagePickerControllerOriginalImage]; 

    int img_count = [[appDelegate retrieveFromUserDefaults:@"image_saved"] intValue]; 
    img_count = img_count + 1; 

    NSString *imageName = [[NSString alloc] initWithFormat:@"dmg_image_%@_%d", [appDelegate retrieveFromUserDefaults:@"current_job_id"], img_count]; 

    [appDelegate saveImage:image withName:imageName]; 
    [appDelegate saveToUserDefaults:imageName key:@"inspection_image"]; 

    [damageImage setImage:image]; 
    [damageDesc becomeFirstResponder]; 
} 

я уверен, Я пропускаю что-то простое, и я думаю, что все, что бросает это сообщение, является причиной того, что он работает немного медленно.

Я прочитал других людей, имеющих эту проблему, но они используют предупреждающий звонок, а не возврат от фотографии. Должен ли я использовать небольшую задержку при вызове didFinishPicking?

Спасибо!

ответ

2

Проблема заключается, предположительно, в том, что вы используете этот метод в основном потоке. Функция wait_fences является внутренней функцией одной из графических библиотек iOS и связана с анимацией. Когда вы сохраняете изображение, вы блокируете основной поток и пользовательский интерфейс при записи большого количества данных в файл , Переместите функциональность сохранения в другой поток (рассмотрите возможность использования NSThread), и ваш пользовательский интерфейс должен снова реагировать.

+0

О, все в порядке. Спасибо! – TheTC

Смежные вопросы