2012-04-29 2 views
-1

Mac 응용 프로그램에 영구 데이터를 저장해야합니다. 이 데이터를 plist 또는 NSUserdefaults에 저장할 수 있습니다. 하지만이 영구 데이터를 내 응용 프로그램 폴더에 저장하여 Mac에서 응용 프로그램 (휴지통으로 이동)을 삭제하면이 영구 데이터도 삭제됩니다. 이런 식으로 일하기를 바랍니다. 이를 수행하는 가장 좋은 방법은 무엇이며 어떻게 앱을 삭제할 때 데이터가 삭제되도록 앱 폴더에 영구 데이터를 저장할 수 있습니까?OS X Lion : 응용 프로그램 폴더에 영구 데이터를 저장하는 방법

NSUserDefaults *ud = [NSUserDefaults standardUserDefaults];   
[ud setObject:@"1" forKey:@"APPLAUNCHED"]; // store user default 
[ud synchronize]; 
+0

맥 응용 프로그램 지침을 설명합니다 - 당신은 할 수 없습니다 보장/응용 프로그램에 대한 쓰기 권한이 있어야합니다. –

+0

그리고 이것을하지 않는 또 다른 이유 - 누군가를 다시 설치하거나 앱을 업그레이드하면 영구 데이터가 삭제됩니다. –

+0

예 일단 앱을 삭제하면 사용자의 영구 데이터를 저장해서는 안됩니다. 왜냐하면 앱을 새로 시작할 때마다 앱 시작시 EULA 양식을 보여 주어야하기 때문입니다. 그리고, 어떻게 데이터를 지속적으로 저장하는 것이 불가능하고 앱이 삭제 될 때 제거되는지 궁금합니다. Coredata는 나를 도와주지 않습니까? – Getsy

답변

2

응용 프로그램 폴더에 영구 데이터를 저장하는 것은 좋지 않습니다. 당신은 홈을 사용한다 또는 응용 프로그램 지원 디렉토리는 다음

을 저장하려는 내용의 유형에 따라이 작동하지 않습니다

http://developer.apple.com/library/mac/#documentation/General/Conceptual/MOSXAppProgrammingGuide/AppRuntime/AppRuntime.html

+0

안녕 모두, 내 요구 사항은 영구 데이터를 저장하지 않습니다. 어떤 방식 으로든 저장할 수 있지만 앱이 Mac 컴퓨터에서 삭제되면 제거되어야합니다. 그 이유는, 내가 애플 리케이션 폴더에 데이터를 저장할 수 있다고 말하려고했는데, 그래서 애플 리케이션이 제거되면 삭제됩니다. 게다가, 제게 제안 해주세요, 이것이 내가 원하는 것입니다. 어딘가에 하나의 플래그를 지속적으로 저장하고 싶습니다. 그러나 앱이 시스템에서 삭제되면이 영구 데이터를 삭제해야합니다. 제발 제안 해주세요. – Getsy

+0

앱을 설치할 때 이전 앱 데이터를 삭제하는 방법도 있습니다. 이를 위해 preinstall 스크립트 나 postinstall 스크립트를 작성할 수 있습니다. PackageManager는이 기능을 제공합니다 –

+0

안녕하세요, 감사합니다. 몇 가지 간단한 해결책을 찾아보십시오. 앱을 삭제할 때 일부 알림을 등록 할 수 없습니까? 이런 통보가 있습니까? 응용 프로그램 번들 리소스에이 영구 플래그를 저장할 수 없습니까? (또는) 다른 어떤 것도 간단하게 처리 할 수 ​​있습니까? – Getsy

관련 문제