2011-07-29 4 views
18

iOS NSCachesDirectory의 파일이 어떤 상황에서 제거 되나요? 분명히 응용 프로그램을 삭제하고 다시 설치하십시오. 애플리케이션 업그레이드는 어떻습니까? 디스크 공간 부족 상태는 어떻습니까? 다른 건 없니?NSCachesDirectory의 파일은 언제 삭제됩니까?

+0

참고 : 나는 내가 가진 생각 버그가 위의 질문에 대한 대답은 AFAIK 있도록 "응용 프로그램의 외부는, 결코 삭제할"뭔가 다른했다. – esilver

답변

10

Google의 경험에 따르면이 폴더는 앱 업데이트시 삭제됩니다. 정확히이 폴더가 삭제 될 때를 알면 좋을 것입니다. 에서 iOS 5는 지금이 폴더를 사용하기 때문에 문서는 NSDocumentDirectory이 응용 프로그램의 업데이트를 삭제하지만,이 폴더를 사용하여 조심하지 않습니다

무시할 수있는 캐시 파일의

위치 (라이브러리/캐시)로이 폴더를 설명 iCloud에서 백업 할 때이 디렉토리를 사용하여 사용자가 생성 한 다른 콘텐츠를 저장하면 앱이 거부 될 수 있습니다.

+12

사용자가 생성하지 않은 콘텐츠를 저장하기 위해 NSDocumentDirectory를 사용하는 앱이 거부되는지 확인합니다. – Ciryon

+1

나는 또한 애플이 이것을 확인하는지 확인할 수있다. 다시 빌드하거나 다운로드 할 수있는 NSDocumentDirectory에 파일을 저장해야하는 경우 백업 중에 건너 뛸 수 있도록 플래그를 지정하십시오. 애플은 이것을 허용한다. – respectTheCode

+0

@Ciryon 카메라 롤에서 사용자가 찍은 이미지를 NSDocumentDirectory에 저장해도 괜찮습니까? – Bazinga

9

라이브러리 폴더에있는 항목은 앱 업데이트 중에 iOS에 의해 삭제되지 않습니다.

사용자가 응용 프로그램 업데이트를 다운로드, iTunes가 새로운 응용 프로그램 디렉토리에 업데이트를 설치합니다 언급 애플의 문서를 다음

확인하시기 바랍니다. 그런 다음 이전 설치를 삭제하기 전에 사용자의 데이터 파일을 이전 설치에서 새 app 디렉토리로 이동합니다. 다음 디렉토리에있는 파일은 업데이트 프로세스 동안 보존 할 을 보장 :

Application_Home>/문서

Application_Home>/라이브러리

다른 사용자 디렉토리에있는 파일은, 당신을 통해 이동 될 수 있지만 업데이 트가 끝나면 그 사람에게 의존해서는 안됩니다. 이 도움이 http://developer.apple.com/library/ios/#documentation/iPhone/Conceptual/iPhoneOSProgrammingGuide/PerformanceTuning/PerformanceTuning.html#//apple_ref/doc/uid/TP40007072-CH8-SW10

희망 : 여기

은이 문서에 대한 링크입니다.

0

NSCachesDirectory는 아이폰 OS 5.0에 메모리 부족

의 경우 삭제 될 수 있으며, 시스템의 디스크 공간이 매우 부족하면 나중에 시스템이 드문 경우에 캐시 디렉토리를 삭제할 수 있습니다. 앱 실행 중에는 이 발생하지 않습니다. 그러나 iTunes 복원은 반드시 캐시 디렉토리를 지울 수있는 유일한 조건은 아닙니다. more info

당신이 당신의 파일을 원하지 않는 경우

당신이 문서 디렉토리에 저장해야 삭제할 수 있지만,이 방법 :

사용은 대한 속성을 "백업하지 않습니다" 낮은 스토리지 상황에서도 장치에 남아 있어야하는 파일을 지정합니다. 이 속성을 다시 만들 수 있지만 앱이 제대로 작동하기 위해 저장 용량이 부족한 경우에도 유지해야하거나 고객이 오프라인에서 사용할 수있을 것으로 기대하기 때문에이 속성을 사용하십시오.이 속성은 문서 디렉토리를 포함하여 디렉토리가 무엇이든 상관없이 표시된 파일에서 작동합니다. 이러한 파일은 제거되지 않으며 사용자의 iCloud 또는 iTunes 백업에 포함되지 않습니다. 이러한 파일은 장치상의 저장 공간을 사용하기 때문에 주기적으로이 파일을 모니터링하고 제거해야합니다.

more info

+0

앱이 실행되는 동안 NSCachesDirectory를 삭제할 수 있습니까? 앱이 백그라운드에있는 동안? (백그라운드 오디오 앱을 가지고 있기 때문에 백그라운드에서 실행 중일 때 라이브러리/캐시에서 적극적으로 읽을 수 있습니다.) –

+0

모르겠다. 메모리가 부족한 경우에만 표시되므로 앱을 사용하는 경우 캐시에서 물건을 삭제할 수 있다는 경고 메시지가 나타납니다. iOS 5.0.1 이상에서만 삭제됩니다. 어쨌든 가장 좋은 방법은 NSDocumentsDirectory 또는 NSApplicationSupportDirectory에서 삭제하지 않으려는 파일을 저장하는 것입니다. – jcesarmobile

+0

메모리가 부족하거나 디스크 공간이 부족합니까? – Gomfucius