【问题标题】:iOS - Check Previous Bundle VersioniOS - 检查以前的捆绑包版本
【发布时间】:2013-04-19 18:28:49
【问题描述】:

是否可以以编程方式检查之前安装的应用程序版本的捆绑版本?我知道如何获取当前版本

[[[NSBundle mainBundle] infoDictionary] objectForKey:@"CFBundleVersion"];

我问的原因是因为在将我的应用程序从版本 A 更新到 C 而不是 B 到 C 时存在错误。我希望能够检查以前的版本是否是版本 A,如果是,请处理相应的错误。

【问题讨论】:

    标签: iphone ios nsbundle


    【解决方案1】:

    在 NSUserDefault 中保存版本

    每次应用关闭或版本检查后

    NSString *version = [[[NSBundle mainBundle] infoDictionary] objectForKey:@"CFBundleVersion"];
    
    [[NSUserDefaults standardUserDefaults] setObject:version  forKey:@"version"];
    

    在应用程序开始运行时检查它

    NSString *newVersion = [[[NSBundle mainBundle] infoDictionary] objectForKey:@"CFBundleVersion"];
    
    NSString *oldVersion =  [[NSUserDefaults standardUserDefaults] objectForKey:@"version"];
    

    比较新版本和旧版本

    【讨论】:

    • 我的问题是A版本已经在App Store发布了。我不能再改变那个二进制文件了。所以版本 A 永远不会被保存为默认值。你跟着我?
    • 据我所知,如果你不登录,你无法知道以前的版本:(
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2020-07-29
    • 2015-01-18
    • 1970-01-01
    • 1970-01-01
    • 2021-12-16
    • 2013-10-16
    • 1970-01-01
    相关资源
    最近更新 更多