이 페이지가 유용했습니까?
이 콘텐츠에 대한 여러분의 의견은 중요합니다. 의견을 알려주십시오.
추가 의견
1500자 남음
MSDN Library
정보
요청한 주제가 아래에 표시됩니다. 그러나 이 주제는 이 라이브러리에 포함되지 않습니다.

Windows Phone 8의 로컬 폴더 모범 사례

2014-06-18

적용 대상: Windows Phone 8 및 Windows Phone Silverlight 8.1 | Windows Phone OS 7.1

 

이 항목에서는 Windows Phone 의 로컬 폴더(이전에는 격리된 저장소라고 함) 사용에 대한 모범 사례와 일반적인 정보를 제공합니다.

이 항목에는 다음 단원이 포함되어 있습니다.

 

스토어 에서 앱을 업데이트하는 경우 로컬 폴더는 터치되거나 수정되지 않습니다. 새 버전의 앱에서 작동하도록 데이터를 적절하게 마이그레이션하거나 변환해야 합니다.

앱을 제거하면 로컬 폴더 내의 모든 내용과 데이터 루트가 삭제됩니다.

Windows Phone 앱은 특정 할당량으로 제한되지 않습니다. 앱 시나리오 요구 사항에 따라 신중하게 저장소를 사용해야 합니다.

휴대폰의 저장소 리소스는 제한되어 있습니다. 앱 및 미디어를 다운로드하고 데이터를 휴대폰에 동기화할 수 있으므로 저장소가 금방 고갈됩니다. Windows Phone의 남은 저장소가 10%뿐이면 사용자가 상태 알림을 받게 됩니다. 사용자는 필요한 저장소를 만들기 위해 사진, 음악 및 앱을 삭제할 수 있습니다. 하지만 이 옵션은 사용자 관점에서 원하는 옵션이 아닙니다.

각 앱의 시나리오에 대한 요구 사항이 서로 다르기 때문에 Windows Phone 앱에는 부과된 할당량 크기가 없습니다. 또한 앱별로 디스크 크기를 제한하면 사용자에게 불편한 시나리오가 발생할 수 있습니다. 따라서 앱이 후속 실행에 필요한 내용만 저장하도록 해야 합니다.

다음 모범 사례에서는 Windows Phone 의 저장소를 신중하게 사용하는 방법을 제공합니다.

  • 임시 데이터 및 파일: 앱이 로컬 폴더에 임시 데이터를 만드는 경우 데이터가 더 이상 사용되지 않을 때 지워지는지 확인합니다. 이 데이터는 수정된 최신 복사본이 있는 미디어 형태일 수 있습니다. 예를 들어 Microsoft Internet Explorer는 추가 저장소를 확보하기 위해 지울 수 있는 임시 파일 폴더를 사용하여 캐시를 관리합니다. 앱에서 이 모델을 사용하려면 주기적으로 지울 수 있는 임시 캐시 폴더를 만듭니다.

  • 사용자 생성 데이터: 카메라 앱의 사진이나 노트, 문서 등의 사용자가 만든 파일일 수 있습니다.

    • 앱에서 사용자가 데이터를 만들 수 있는 경우 만든 데이터를 삭제하는 옵션도 있어야 합니다. 예를 들어 사진 앱은 사용자가 기본 설정에 따라 나중에 삭제할 수 있는 사진 목록을 노출합니다.

    • 앱의 저장소 사용량을 줄이기 위해 데이터를 클라우드에 동기화하거나 보관하고 관련된 데이터만 유지할 수 있습니다. 예를 들어 Windows Phone의 Microsoft Outlook은 기본적으로 3일 동안의 메일만 유지하고 나머지 메일은 서버에 저장됩니다. 하지만 앱에서 사용자가 이 설정을 필요에 따라 수정할 수 있습니다.

  • 응용프로그램 데이터: 예를 들어 쇼핑 목록 응용프로그램에서 관리되는 상점 또는 가게 목록이나 사전 응용프로그램에 포함된 단어 목록이 있습니다. 응용프로그램이 클라우드 데이터를 소스로 사용하고 로컬에 캐시하는 경우 연관성을 기준으로 데이터를 재생해야 합니다.

서로 다른 스레드 간 로컬 폴더에 대한 액세스를 동기화하려면 Mutex 클래스를 사용하는 것이 좋습니다. 뮤텍스는 공유 리소스에 대한 단독 액세스 권한을 하나의 스레드에만 부여합니다. 스레드가 뮤텍스를 가져오면 첫 번째 스레드가 뮤텍스를 해제할 때까지 해당 뮤텍스를 가져오려는 두 번째 스레드는 일시 중단됩니다. 예를 들어 뮤텍스를 사용하여 포그라운드 및 백그라운드 에이전트에서 실행 중인 Windows Phone 앱 간 폴더에 대한 액세스를 동기화할 수 있습니다.

사용자가 응용프로그램을 종료하면 Windows Phone 이 자동으로 Save를 호출하여 IsolatedStorageSettings를 저장합니다. 데이터 바인딩된 개체를 IsolatedStorageSettings에 배치한 경우 이 개체는 사용자가 응용프로그램을 종료할 때 저장됩니다.

참고참고:

이 정보는 IsolatedStorageSettings 클래스에만 적용되고 IsolatedStorageFileIsolatedStorageFileStream 클래스에는 적용되지 않습니다.

표시:
© 2015 Microsoft