gpt4 book ai didi

ios - 如何检测 iOS 应用程序已重新安装(从 XCode)或升级(从 AppStore)

转载 作者:塔克拉玛干 更新时间:2023-11-01 19:10:02 26 4
gpt4 key购买 nike

我们正在开发的应用程序使用包含在应用程序包中的二进制文件。

由于此文件需要处理并且在某些情况下需要重写,因此应用程序会在首次启动时或在应用程序支持中丢失时将此文件复制到 Library/Application Support 目录中。然后,应用程序每次启动时都会从 Application Support 加载此文件,并使用其中包含的数据。

由于Application Support目录在每次应用安装/升级时都会保留,所以我们需要在安装或升级应用时删除该目录下的上述二进制文件,重新从应用包中复制,以确保二进制文件结构与最新版本的应用程序兼容。

在以下两种情况下,我们需要这样做:- 在开发过程中,每次我们从 XCode 重建和安装应用程序时- 一旦上线,每次用户从 AppStore 升级应用程序时

有什么方法可以检测到该应用程序已安装或重新安装在设备上吗?

最佳答案

确保更新的(可能)干净的方法是在 info.plist 文件中使用变量,正如 rmaddy 所说,但这并不能解决准确知道是否需要或过度杀伤的问题。

老实说,我不知道 Apple 是否会让它通过他们的验证,但您或许可以存储并检查可执行文件的最后修改日期。如果它早于某个日期,则更新。这么粗糙的版本控制机制似乎有点复杂。不能在二进制文件中包含版本号吗?

检查日期:

NSString *exePath = [[NSBundle mainBundle] executablePath];
NSDictionary *exeAttrs = [[NSFileManager defaultManager] attributesOfItemAtPath:exePath error:nil];
NSString *lastModDate = [exeAttrs objectForKey:@"NSFileModificationDate"];

关于ios - 如何检测 iOS 应用程序已重新安装(从 XCode)或升级(从 AppStore),我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/16527231/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com