У меня есть код, который сохраняет UIImage к пути в NSDocumentsDirectory. Затем я вызываю путь и отправляю изображение на электронную почту. Он прекрасно работает, но, когда я выхожу из приложения и перезапускаю его, приложение вылетает, если я пытаюсь отправить изображение повторно. Я пытаюсь получить доступ к предыдущему каталогу, который я предполагаю. То, что я пытаюсь сделать, это сохранить UIImage в путь, который можно получить позже.
ЭТО ЭКОНОМ. КОД.
-(IBAction)savefile (id)sender
{
Uppaths = NSSearchPathForDirectoriesInDomains(NSDocumentDirectory, NSUserDomainMask, YES);
documentsDirectory = [Uppaths objectAtIndex:0];
NSString * prefixString = self.record.eventname;
NSString * guid = [self randomStringWithLength:6];
NSString * uniqueFileName = [NSString stringWithFormat:@"%@_%@.jpg", prefixString, guid];
_imagePathLayout = [documentsDirectory stringByAppendingPathComponent:uniqueFileName];
NSData *data1 = UIImageJPEGRepresentation(newImage, _photoquality);
[data1 writeToFile:_imagePathLayout atomically:YES];
NSLog(@"filepath=%@", _imagePathLayout);
refURLLayout = [NSURL fileURLWithPath:_imagePathLayout];
[self.storeLayout addObject:_imagePathLayout];
}
ЭТО КОД ЗАГРУЗКИ. Работает нормально, пока я не выхожу из приложения.
-(void)sendUploadPathMulti:(NSString *)path imageArray:(NSMutableArray *)imageArray subjectstring:(NSString *)subject messagestring:(NSString *)message filename:(NSString *)filename linkurl:(NSURL *)linkurl linkstring:(NSString *)linkstring deleteItem:(NSString *)deleteitem
{
for (int i = 0; i < imageArray.count; i++) {
NSString *path = [imageArray objectAtIndex:i];
NSArray *paths = NSSearchPathForDirectoriesInDomains(NSDocumentDirectory, NSUserDomainMask, YES);
NSString *documentsDirectory = [paths objectAtIndex:0];
NSString *folderPath = [documentsDirectory stringByAppendingPathComponent:path];
NSData *data = [[NSFileManager defaultManager] contentsAtPath:folderPath];
NSString * prefixString = self.record.eventname;
NSString * uuidString = [self randomStringWithLength:4];
NSString *uuid = [NSString stringWithFormat:@"%@",uuidString];
NSString *final = [NSString stringWithFormat:@"%@_%@.jpg", prefixString, uuid];
NSLog (@"path: %@", path);
MCOAttachment *attachment = [MCOAttachment attachmentWithData:data filename:final];
[builder addAttachment:attachment];
NSLog (@"ATTACH1: %@", attachment);
}
}
Это ошибка. Не удается прочитать файл в файле: ///var/mobile/Containers/Data/Application/80A36161-2815-480D-A9BB-A4766E0DD39A/Documents/test_KgUpp0.jpg