2012-04-28 148 views
-1

我在應用程序啓動時顯示許可證表單,但應該僅在應用程序第一次啓動時顯示。不總是。所以,我試圖在plist或用戶默認情況下存儲標誌,但是在移除應用程序(移至垃圾箱)時,plist或userdefaults不會從系統中刪除,因此我無法完成我的任務。MacOS X:當應用程序被刪除時刪除plist文件

這是我一直在努力之下,

我存儲在plist文件的標記和保存應用程序啓動時的文件(文檔目錄),因此接下來的時間,我可以從那裏閱讀,並找出該應用是否正在第一次運行。我在這裏失敗了,因爲即使應用程序已從系統中移除(移至垃圾箱),我無法刪除此plist文件。

我也嘗試在NSUserDefaults中設置一個標誌,但是在刪除應用程序並重新構建並啓動應用程序後,它仍然保留了我存儲的以前的值。我想知道,當應用程序從系統中刪除時,NSUserDefaults不會被刪除?

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

有人請指教?

謝謝。

回答

1

當應用程序被刪除時,用戶默認也不會自動刪除應用程序沙箱。我認爲沒有辦法做到這一點。

+0

嗨,謝謝你的回覆。我看到在刪除(移動到垃圾箱)二進制文件後,用戶默認設置不會被刪除。因此,當我再次構建應用程序並嘗試啓動應用程序時,我無法顯示許可證表單。 – Getsy 2012-04-28 17:29:40

+0

沒錯。這是預期的行爲。刪除你的應用程序然後重新安裝它的用戶將完成他們的偏好和文檔。作爲副作用,他們不必再次填寫許可證表格。我認爲最終用戶有責任在他們着迷於磁盤空間使用情況時刪除未使用的文件和沙箱。 – Costique 2012-04-28 17:39:01

+0

但是,它應該是,我們必須在第一次應用程序啓動時顯示許可證。我怎樣才能解決這個問題?當應用程序移至垃圾箱時,如何刪除用戶默認或plist?請任何幫助或建議。 – Getsy 2012-04-28 17:54:41

相關問題