2010-08-18 3 views
0

여기 내 상황이 있는데, 아마도 매우 일반적 일지 모르지만 아직 만족스러운 방법을 찾지 못했습니다.iPhone 프로젝트의 빌드 프로세스의 일부로 핵심 데이터베이스를 미리로드하려면 어떻게해야합니까?

응용 프로그램 번들에 미리로드 된 사전로드 된 핵심 데이터 데이터베이스가있는 iPhone 응용 프로그램을 개발 중입니다. 나는 그런 것을 배치하는 방법을 완전히 이해한다. 그건 내 문제가 아니야.

내 문제는 어떻게 빌드 프로세스의 일부로 핵심 데이터베이스를 미리로드합니까? 여러 가지 방법으로이 작업을 수행 할 수 있지만 Xcode와 가장 잘 통합되고 가장 적은 양의 해커가있는 솔루션을 찾고 있습니다.

지금까지, # 1 선택은 Core Data Model을 iPhone 프로젝트와 공유하는 명령 줄 도구 용 프로젝트를 만드는 것입니다. 그런 다음이 도구는 iPhone 프로젝트의 빌드 프로세스 중 쉘 스크립트 단계의 일부로 실행할 수 있습니다. 하나는 아이폰 프로젝트이고 다른 하나는 OS X 커맨드 라인 툴이기 때문에 동일한 프로젝트를 공유하지 못하거나 하나에서 다른 프로젝트로 참조 할 수 없기 때문입니다. 그들은 완전히 분리되어야합니다. 당신이 다른 곳에서 자동으로의 데이터를 당기는 것처럼 :(

어떤 제안?

답변

1

당신의 데이터를 얻고있는 위치에 따라 달라집니다가. 소리. 당신이 짐작 그 경우 나는 명령 줄 도구를 구축 할 것이지만, 다시 작성하지 말고 명령 줄 도구를 만든 다음 iPhone 응용 프로그램의 빌드 프로세스의 일부로 쉘 스크립트에서 실행하십시오.

해당 명령 줄 도구를 다시 빌드해야하는 이유가 없어야합니다. 모델이 업데이트되었습니다.

+0

나는 그다지 의심 스럽다. 이것은 내가 다른 응답을 제외하고 의도했던 것입니다. 불행하게도 나는 개발 초기 단계에서 내 모델이 공정한 금액으로 바뀔 것이라고 생각한다.이 과정은 다소 성가신 과정이 될 수있다. –

+0

개발 중에 데이터가 약간 변경되는 경우 자동 마이그레이션이 가능한 한 많이 처리하도록하십시오. 그런 다음 거의 완료되면 새 데이터 파일을 작성하십시오. –

1

ne는 iPhone 프로젝트이고 다른 하나는 OS X 명령 줄 도구입니다. 동일한 프로젝트를 공유하거나 다른 프로젝트를 참조 할 수 없습니다.

이는 새로운 Xcode의 제한 사항입니다. 이전에는 OSX에서 테스트를 실행하는 명령 줄 도구를 만드는 것이 가능했습니다 (실제로 Xcode 자체가 아닌 xcodebuilder에서도 여전히 작동합니다).

편집 : 아주 끔찍한 해킹 파이썬에서 일을 실행할 수 있도록 PyObjC를 사용하는 것입니다,하지만 당신은 컴파일 된 것을 사용해야 할 경우 그 아마 적합하지 않습니다.

해결 방법은 처음 시작할 때 데이터 변환을 수행하는 것입니다.

+0

그래, 처음에는 데이터 변환을 할 수 있도록 컴파일러 플래그를 사용하는 방법에 대해 생각했지만 별도의 앱을 사용하는 것이 가장 좋습니다. –

관련 문제