2015-06-18 37 views
0

我正在使用Parse構建iOS應用程序。當任何數據被保存時,我希望能夠執行一個操作。特別是在通用保存中,而不是在特定的保存操作之後,因爲這意味着通過我的應用程序在每次保存時執行此操作。解析,保存操作(在設備上)

可能嗎?

  1. 解析任何保存事件觸發。

  2. 保存完成後執行操作。

謝謝。

回答

0

一些純粹主義者認爲這有點黑客,但這是一個問題,可以用Swizzling方法解決。基本上,你用自己的方法替換一個類的方法。在這種情況下,您可以替換Parse保存方法以使它們能夠發送事件並執行其原始功能。

我有方法混寫的上Github

此示例代碼擴充的UIViewController並增加了記錄功能的viewWillAppear中的工作示例:viewDidAppear:viewWillDisappear:和viewDidDisappear方法。但是,無論您需要注入功能,您都可以使用它。

0

這裏有兩個選項,你可以使用Cloud Code並編寫一個afterSave掛鉤,它會在每次保存時觸發。這可以在Parse服務器上運行,並且可以根據邏輯更改快速移動,因爲不需要更新客戶端更新邏輯後面的邏輯。但是,這些功能僅限於運行3秒鐘,因此您需要非常快速,並且不應在此處執行任何大規模操作。有關詳細信息,請檢查Cloud Code documentation

另一種方式,如果您確實想要在設備上執行此操作,請在每次保存操作後觸發NSNotification,創建一個監聽此通知的類並執行保存後所需的任何操作。在這裏,請檢查NSNotification上的Apple文檔。

-1

嘗試創建於PFObject一個類別,創建自定義的保存

- (void) customSave { 
    [self save] 
    //custom function 
} 

您將需要爲每個做到這一點,每一個PFObject保存命令要使用

+0

不知道這實際上是如何解決這個問題。請您可以提供更多詳細信息 – Popeye

+0

而不是在項目中的任何地方調用'[object save]',您可以調用'[object customSave]'。不確定這是否是您要查找的內容。 –

+0

我不明白你所做的所有事情都是這樣做的,所以無需在每個地方調用'[object saveSave]'而不是調用'[object save]'而不是如何更好?請解釋你的答案。 – Popeye

相關問題