繁体   English   中英

从AppStore升级应用程序时,有没有一种方法可以删除所有数据/缓存

[英]Is there a way to remove all the data/caches when upgrading app from AppStore

从AppStore更新到我的应用程序的最新版本时,一小部分用户会收到与WKWebView相关的丑陋错误。 重新删除并重新安装该应用程序后,该错误消失。 有没有办法在升级过程中删除旧数据/缓存?

更新应用程序时,所有代码都将被删除。 如果您的应用更改了使用方式,例如未删除的数据(例如NSUserDefaults),则必须在代码中添加逻辑以处理存在的“旧”数据。

不知道这是否行得通,但这是两种可能的方法:

1。

当您的应用加载时,在AppDelegate中检查didLaunchWithOptions()保存的数据:

func application(application: UIApplication, didFinishLaunchingWithOptions launchOptions: [NSObject: AnyObject]?) -> Bool {
    if let data = userDefaults.valueForKey("<yourKey>") {
        userDefaults.removeObjectForKey("<yourKey>")
    }

    return true
}

当然,您必须插入应用程序中用于保存内容的键,而不是<yourKey>

2。

您还可以尝试以下代码,该代码将擦除NSUserDefaults的所有内容,这将使密钥变得不必要:

NSUserDefaults.standardUserDefaults().removePersistentDomainForName(NSBundle.ma‌​inBundle().bundleIdentifier!)

希望有帮助:)

暂无
暂无

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

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