2012-06-01 34 views
1

有沒有什麼辦法可以讓你的應用程序從Xcode重新部署到iOS模擬器,當你運行時,無需從[編輯]中刪除[編輯]現有數據應用程序[/編輯]每次?在iOS模擬器上自動重新部署XCode

+1

爲什麼每次都要刪除它?如果您正在測試全新的安裝行爲(即:測試您的默認NSUserDefault設置是否工作......),那麼從模擬器中刪除您的應用程序纔有意義。否則,每次運行都不需要刪除應用程序。 –

+0

對,我的意思是說我希望它能夠模仿全新安裝,將清除數據和用戶設置。 – sringer

回答

1

您不應該每次都刪除它......您應該只需點擊運行即可覆蓋或更新裝載的版本。

我通常有一個調試按鈕來刪除所有數據並在必要時添加假數據並將它們包裝在DEBUG標誌中。這使我可以控制它,而無需重新啓動應用程序。

- (void)viewDidLoad 
{ 
    #if DEBUG 
     // Make Button and hook it to clearAllData 
    #endif 
} 

- (void)clearAllData 
{ 
    // Clear the Core Data databases 
    SDAppDelegate *myDelegate = [[UIApplication sharedApplication] delegate]; 
    [myDelegate clearAllData]; 

    // Clear the UserDefaults 
    [[NSUserDefaults standardUserDefaults] removePersistentDomainForName:[[NSBundle mainBundle] bundleIdentifier]]; 

    // Run the initial Setup again 
    [self setup]; 
} 
+1

我認爲@sringer意味着以一種抹去所有應用程序本地數據的方式進行部署? – Clafou

+0

正確^對不起,我感到困惑:) – sringer

+1

哦,對不起。在這種情況下,我用我的2美分更新了我的答案 –

2

如果你想讓它每次啓動空數據,你可以使用Xcode的組織者採取了新開工的應用程序的應用程序數據的快照,快照添加到您的項目,然後修改您的方案,去運行 - >選項並從應用程序數據彈出菜單中選擇快照。這樣,當應用程序啓動時,它總是以相同的,可能是空的數據開始。

但我不認爲它清除NSUserDefaults,但。

+0

謝謝!這看起來像我在找什麼。 – sringer

+0

有沒有辦法清除NSUserDefaults而不必刪除應用程序? – sringer