ios - 我应该在 MonoTouch 应用程序中的何处执行维护

标签 ios xamarin.ios

我有一个用 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向最终用户显示进度条。

enter image description here

关于ios - 我应该在 MonoTouch 应用程序中的何处执行维护,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/13793076/

相关文章:

ios - Monotouch + UIWebView = 随机崩溃

ios - 何时以及如何关闭 UIActivityViewController

ios - 什么时候释放 UITableView 单元格中的 UIButton?

ios - 将 uiviewcontroller 推送到另一个带有动画的 viewcontroller 从顶部 - 底部

mono - 仅在MonoTouch 4.0.1中启动事件时,应用程序崩溃

ios - (Xamarin iOS) : ExecutionEngineException - Attempting to JIT compile method while running in aot-only mode

xamarin - 如何进行多选 ListView 并获取所选项目?

ios - Xamarin iOS AVCaptureSession - 在 iPhone 8 上只有音频/没有视频

ios - 有没有办法使用 swift 始终在 iOS 中将 Google map 标记固定到其 map 的中心?

ios - 如何访问结构内部的 var 以计算 var 数组中列出的项目数?