2010-11-27 4 views
0

CoreData를 사용하여 새 분할보기 iPad 앱을 만들었습니다. 내가 한 모든 것은 문자열 인 엔티티에 새로운 속성을 추가했습니다. (기본값은 timeStamp, date 임).CoreData iPad App Crash

이로 인해 앱이 시작될 때 응용 프로그램이 추락합니다. 어째서?

나는 예를 들어 기본 날짜가 아닌 텍스트를 표시하기 위해 놀려고했습니다. 예 : 이 줄 변경 : [newManagedObject setValue : [NSDate date] forKey : @ "timeStamp"]; 날짜가 아닌 다른 값 사용.

희망 하시겠습니까?

답변

1

앱을 이미 기기에 설치했기 때문에 거의 확실합니다. 핵심 데이터 모델을 변경 했으므로 기존 데이터베이스의 구조가 잘못되었습니다. 충돌 후 XCode 콘솔 창을 보면이를 확인할 수 있습니다. 예외 스택 추적과 그 위에 메시지 "저장소를 여는 데 사용 된 모델이 해당 모델을 만드는 데 사용 된 모델과 호환되지 않습니다. 저장." XCode가 기기에 수정 된 버전의 앱을 설치하면 기존 데이터베이스를 자동으로 덮어 쓰지 않아 고통스럽고 정기적으로 나를 걸러냅니다 ;-)

앱을 설치 한 후에 기기에서 앱을 제거해야합니다. 핵심 데이터 모델에 대한 변경 사항으로, 데이터베이스의 클린 버전으로 시작됩니다. Shannon Appelcline의 iPhone 작동 사이트에 more info about this aspect of Core Data이 있습니다.