我有一个用 MonoTouch 编写的 iOS 应用程序 - 每个新版本都会添加新功能,并且我需要向数据库添加其他字段或执行数据维护任务(有时这些可能需要一分钟左右的时间才能运行)。在许多情况下,在我们允许用户进入应用程序之前,需要更新数据/模式 - Obj-C 或 Monotouch 中是否有标准化的方法或位置来在启动时执行这些维护任务?理想情况下,我希望向用户显示加载显示,让他们知道这是一次性的事情。
到目前为止我的想法:
将它们放置在 AppDelegate 内的 FinishedLaunching 中,但这似乎是错误的位置。
将主视图更改为仅升级数据库的 View ,然后将它们推送到下一个 View ,但这似乎有点矫枉过正。
最佳答案
Changing the home view to a view which only upgrades their database and then pushes them on to the next view, but this seems like overkill.
我在一些应用程序中就是这样做的 ( here is an example )。
我所做的是在 AppDelegate FinishedLoading
中检查此版本是否需要架构更新,如果需要,我将 window.RootViewController
设为 DialogViewController,它使用 Default.png
作为背景,然后从那里进行更新。
这会给人一种进度条显示在启动屏幕顶部的错觉。
对于加载屏幕,您可以使用 ATM Hud向最终用户显示进度条。
关于ios - 我应该在 MonoTouch 应用程序中的何处执行维护,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/13793076/