繁体   English   中英

iOS应用程序,通过AppStore更新应用程序时,是否可以订阅事件?

[英]iOS app, is there a way to subscribe to an event when an app is updated through AppStore?

更新到新版本时,我需要清理存储在iOS应用程序的NSUserDefaults中的某些属性。

当此类应用更新即将发生或已经发生时,是否有一种通知方式?

我的假设是否正确,即在更新应用程序时,不会自动清除NSUserDefaults?

以我的经验,除非用户从头开始重新安装该应用程序,否则NSUserDefaults会保留在将来的版本中。

您可以通过跟踪一个版本号来实现自己的目标,一旦打开应用程序,就可以在该版本中更新该版本号。

基于此,您可以使用逻辑检查并调用函数以重置所需的属性。

没有在应用程序更新上修改UserDefaults。 您实质上要问的是如何对数据实施版本控制。 最基本的方法是在应用中使用版本值,并将其添加到UserDefaults中。

应用启动时的示例流程:

  1. 您已经在代码中定义了版本“ 1.0”和“版本”键
  2. 在应用启动时,将访问UserDefaults并检查您的“版本”键以查看是否存在其值。
  3. 如果存在一个值,并且该值等于上面定义的版本,则意味着该应用先前已经使用该版本启动,因此无需执行任何操作。
  4. 如果存在一个值,但是它不等于上述定义的版本(以后的版本会发生),或者根本不存在任何值,则可以执行清除操作,因为这是您首次启动此版本。
  5. 最后,将UserDefaults中的值更新为当前版本。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM