2012-12-18 2 views
2

"Allows External Storage"NSData 속성으로 CoreData에 MP4 파일을 저장하고 있습니다. 어떻게하면이 데이터에 경로 문자열이나 NSURL을 가져올 수 있습니까? 또한 1MB 미만의 mp4 파일이 내부적으로 저장되면 어떻게됩니까? 그런 다음 경로를 제공 할 수 없습니까? 데이터가 외부 또는 내부에 저장되었는지 여부를 쉽게 알 수 있습니까?외부 데이터 참조로 CoreData에 저장된 MP4 ... 경로를 얻는 방법?

답변

2

코어 데이터는 경로를 가져올 수있는 방법을 제공하지 않습니다. 비록 외부 파일을 사용하지 않았기 때문에 이라는 것을 보장하지 않습니다. 경로가 존재하는지 또는 그 경로가 무엇인지 알 필요가없는 곳으로 설계되었으며, API는 그러한 태도를 반영합니다.

비공식적으로 파일을 찾을 수 있습니다. 데이터 저장소가 Foo.sqlite이라면 외부 파일 (있을 경우)은 .Foo_SUPPORT/_EXTERNAL_DATA/이라는 동일한 폴더의 하위 디렉터리에 있습니다. 실제 파일 이름은 UUID 일 뿐이므로 어떤 관리 대상 개체가 자동으로 실행되지 않는지 파악하십시오. 당신이 할 수있는 최선의 방법은 아마도 관리 대상 객체의 수정 날짜를 추적 한 다음 동일한 mod 날짜를 가진 파일을 찾는 것과 같을 것입니다.

어떤 이유로 든 파일을 가져와야하는 경우 자체 외부 참조 코드를 롤업해야합니다. 이것은 매우 간단합니다.

관련 문제