2011-03-27 3 views
0

iOS에서 AssetLibrary 사용에 관한 질문이 있습니다. 실제 이미지가 아닌 앱의 이미지 포인터를 저장할 수 있습니까? 재생 목록을 만들고 싶지만 실제 이미지를 저장하고 싶지는 않습니다.iOS AssetLibrary 포인터 저장

내가 물어 보는 이유는 이미지 선택기를 사용할 때 장치 문서 디렉토리에 이미지를 저장할 수 있지만 일단 25 이상이면 장치가 느려지 기 시작합니다 (iPad 1). 이미지가 매우 커지면 누출 도구를 여러 번 통과시켜 누수가 없습니다. 나는 다음 번에 어디로 가야할지를 놓치고있어 대안을 조사하고 싶다. 내가 어디에서 메모리를 확보 할 수 있는지 알지 못한다.

내가 지금 어디에 있는지, 내가 물리적 인 이미지를 저장하지 않을 것이므로 AssetLibrary가 옵션 일지 궁금하다. 나는 약간의 단점이 있다는 것을 안다. (사용자 위치가 필요하고, 이미지를 반복 할 때 약간 느려질 수있다.)

이것에 대한 어떤 생각이라도 대단히 감사하겠습니다.

답변

2

문서 디렉토리에 25 개의 이미지를 저장하면 25 개의 매우 큰 이미지를 모두 메모리에 동시에로드하려고하지 않는 한 장치가 느려져서는 안됩니다.

영구적으로 자산 라이브러리 자산에 대한 포인터를 저장할 수 없습니다,하지만 당신은 당신이 ALAssetRepresentation의 url 속성에서 검색 URL을 저장하고 나중에 해당 ALAsset을 다시 얻을 수 ALAssetsLibrary의 assetForURL:resultBlock:failureBlock:를 사용할 수 있습니다. 앱이 백그라운드에있을 때에도 사용자가 프로그램 외부에서 자산을 삭제할 수 있으므로 ALAsset에 매달려있는 경우 ALAssetsLibraryChangedNotification을 수신해야 자산을 다시로드해야하는지 알 수 있습니다.

+0

네, 확인하고 확인했는데, 추가 한 후에 주변을 지키려고하지 않습니다. 어쩌면 나는 더 나은 악기를 배울 필요가있다. 나는 사용자가 외부에서도 삭제할 수 있다고 생각했다. 지금 나는 나의 선택의 무게를 달고있다. 감사 – jabroni