2014-09-25 4 views
0

IOS8 및 Xcode 6.0.1로 업그레이드하면 이미지를 추가하고 파일에 쓰거나 표시하는 것이 앱에서 깨졌습니다 2 년 이상 일 해왔다. 그것은 사진을 찍고 그것을 저장하는 시간에 잘 작동 - 그것은 잘 표시됩니다. Core Data에 FilePath를 저장합니다. 그러나 앱을 닫고 시뮬레이터를 다시 실행하면 즉시 사라집니다.IOS는 앱을 열 때마다 새로운 애플리케이션 ID를 생성하거나 Xcode에서 실행합니다.

장치 또는 시뮬레이터에서 실행될 때마다 문서 디렉토리 문자열이 변경되어 응용 프로그램 ID가 변경되어 이미지가 경로에서 찾을 수없는 것처럼 보이지 않는 문제를 추적했습니다. 이전 APPLICATION ID의 경로에 액세스하십시오.

나는 이것을 (를) 찾았으며 답변을 찾을 수 없습니다. 다른 사람이 이것을 보았고 내가 어떻게 할 수 있는지에 대한 제안이 있습니다. 정말 고마워!

kat

편집 -이 코드 예제를 추가했습니다. 내 앱을 실행할 때마다 이것이 바뀌는 경로입니다.

NSArray *paths = NSSearchPathForDirectoriesInDomains(NSDocumentDirectory, NSUserDomainMask, YES); 
    NSString *documentsDirectory = [paths objectAtIndex:0]; 
    NSLog(@"documents directory %@", documentsDirectory); 
+0

코드를 게시 할 수 있습니까? – JustinJDavies

+0

답변을 추가해 주셔서 감사합니다. – Kat

답변

0

마지막으로 코어 데이터 개체에서 참조 된 파일을 코어 데이터에 추가했습니다.

1

상대 경로는 저장하고 절대 경로는 저장하지 않습니다. App 컨테이너는 안전을 기하기 시작할 때마다 변경됩니다.

NSURL *tmpDirURL = [NSURL fileURLWithPath:NSTemporaryDirectory() isDirectory:YES]; 
NSURL *fileURL = [[tmpDirURL URLByAppendingPathComponent:@"MyPic"] URLByAppendingPathExtension:@"jpg"]; 
NSLog(@"fileURL: %@", [fileURL path]); 
0

이것은 안전 향상을위한 iOS8의 새로운 변화이므로 절대 경로를 유지하지 않아도됩니다.

관련 문제