Я разрешаю пользователю выбрать изображение из галереи или сделать фото с помощью камеры.
Я бы хотел сохранить путь к изображению в обоих случаях, чтобы использовать его для отображения изображения во второй момент.
Когда пользователь выбирает изображение из галереи, я могу использовать
- (void)imagePickerController:(UIImagePickerController *)picker didFinishPickingMediaWithInfo:(NSDictionary *)info {
if([[info valueForKey:@"UIImagePickerControllerMediaType"] isEqualToString:@"public.image"]) {
NSURL *imageUrl = [info valueForKey:@"UIImagePickerControllerReferenceURL"];
}
}
Вместо этого, если пользователь делает фотографию на лету, я сохраняю ее в фотопленке с:
UIImage *image = [info objectForKey:@"UIImagePickerControllerOriginalImage"];
UIImageWriteToSavedPhotosAlbum(image, self, @selector(image:didFinishSavingWithError:contextInfo:), nil);
После сохранения я должен получить соответствующий NSURL, как его выбрал пользователь.
Как я мог это сделать?
EDIT
Моя проблема не в изображении, выбранном из галереи. Мне удалось получить URL-адрес, используя путь UIImagePickerControllerReferenceURL. Моя проблема, когда пользователь делает фотографию с помощью камеры. Я могу написать это в фотопленке, но я должен найти способ автоматически выбрать его так, чтобы
- (void)imagePickerController:(UIImagePickerController *)picker didFinishPickingMediaWithInfo:(NSDictionary *)info
вызывается снова, и я могу использовать ключ UIImagePickerControllerReferenceURL для получения соответствующего URL.