2011-04-14 4 views
4

iTunes 응용 프로그램 업데이트를 통해 번들에있는 수정 된 plist 파일을 업데이트하는 방법이 있습니까?iOS 앱 업데이트, 번들에서 plist를 업데이트하는 방법은 무엇입니까?

plier 파일에 일부 데이터를 배열 & 사전 형태로 저장하는 앱이 있습니다. 일부 업데이 트에 plist 파일에 더 많은 배열 항목이 추가되었지만 사용자가 응용 프로그램을 삭제하고 다시 설치하지 않으면 응용 프로그램이 업데이트되면 새로운 plist 파일이 복사/업데이트되지 않는 것 같습니다.

어떻게하면 plist 파일의 로컬 복사본을 새 것으로 업데이트 할 수 있습니까?

답변

5

번들의 일부는 업데이트 할 수 없습니다. 업데이트가 가능하려면 plist를 documents 디렉토리에 저장하십시오.

NSArray *arrayPaths = NSSearchPathForDirectoriesInDomains(NSDocumentDirectory, 
     NSUserDomainMask, YES); 
NSString *documentsDirectory = [arrayPaths objectAtIndex:0]; 

저장소를 사용하는 앱을 업데이트 할 때 문서 디렉토리의 파일이 삭제되지 않습니다.

+0

그래서 업데이트 된 plist 파일을 코드를 통해 문서 디렉토리로 옮기면 거기에있는 기존 plist 파일을 덮어 쓰거나 업데이트합니까? – SMSidat

+0

같은 이름의 파일이 있고 적절한 NSFileManager 메소드를 사용하여 덮어 쓰려면 선택하십시오. –

1

버전이있는 .plist 파일? 예 : MyApp-YYYYMMdd.plist

0

비슷한 앱에서 문제가 발생했습니다. 내가 처리 한 것은 응용 프로그램이 응용 프로그램 위임에서 willEnterForeground 알림을 가져올 때 plist 파일의 이전 버전이나 새 버전을로드했는지 확인한 다음 번들에서 새 파일을로드하고 문서에 저장하는지 여부를 확인하는 것입니다. 예배 규칙서.

+0

버전 확인 방법에 대해 어떻게 생각하세요? – SMSidat

+0

내 경우에는 파일에 날짜 기반 데이터가 있었기 때문에 쉽습니다. – onnoweb

관련 문제