解析,保存动作(在设备上)

时间:2015-06-18 14:23:07

标签: ios objective-c parse-platform save

我正在使用Parse构建iOS应用程序。保存任何类型的任何数据时,我希望能够执行操作。特别是在通用保存上,而不是在特定保存操作之后,因为它意味着通过我的应用程序在每次保存时执行此操作。

有可能吗?

  1. 解析触发的任何保存事件。

  2. 保存完成后执行操作。

  3. 感谢。

3 个答案:

答案 0 :(得分:0)

有些纯粹主义者认为这有点像黑客,但这是一个问题,可以通过Swizzling方法解决。实质上,您使用自己的方法替换类的方法。在这种情况下,您将替换Parse保存方法,以使它们能够发送事件以及执行其原始功能。

我在Github

上有一个Swizzling方法的工作示例

此示例代码扩充了UIViewController并将日志记录功能添加到viewWillAppear:viewDidAppear:viewWillDisappear:和viewDidDisappear方法。但是你可以使用它来注入功能。

答案 1 :(得分:0)

这里有两个选项,您可以使用Cloud Code并编写一个afterSave挂钩,每次保存都会触发。这将在Parse服务器上运行,您可以在逻辑更改方面快速移动,因为不需要客户端更新来更改其背后的逻辑。但是,这些功能仅限运行3秒钟,因此您需要非常快速,不应在此执行任何大规模操作。查看Cloud Code documentation了解详情。

另一方面,如果您真的想在设备上执行此操作,请在每次保存操作后触发NSNotification,创建一个侦听此通知的类,并执行保存后所需的任何操作。在这里,请查看NSNotification上的Apple文档。

答案 2 :(得分:-1)

尝试在PFObject上创建一个类别并创建一个自定义保存

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

您需要为要使用的每个PFObject保存命令执行此操作