bob*_*eno 5 version objective-c info.plist string-comparison ios
我想在App Store上更新我的应用程序.在更新后首次打开应用程序时,我希望它能够同步一些内容.因此,我需要一种方法来查看它是否是更新后的第一次启动.
我想到的解决方案是:将app版本存储在NSUserDefaults以下内容中:
NSString *oldVersion = [[NSUserDefaults standardUserDefaults] objectForKey:@"appVersion"];
NSString *currentVersion = [[[NSBundle mainBundle] infoDictionary] objectForKey:@"CFBundleShortVersionString"];
[[NSUserDefaults standardUserDefaults] setObject:currentVersion forKey:@"appVersion"];
[[NSUserDefaults standardUserDefaults] synchronize];
Run Code Online (Sandbox Code Playgroud)
现在我有oldVersion和currentVersion和所有我需要做的就是对它们进行比较.我想知道它oldVersion是否更小currentVersion.但它们是弦乐.我怎么检查oldVersion < currentVersion?
我知道我可以检查一下他们是否不平等.但我希望为将来的更新做好准备.因为我希望为这个2执行的同步对于版本3可能会有所不同,依此类推.
Cla*_*fou 10
您可以使用自然排序顺序(将在1.1之后考虑1.10,与字典排序顺序不同)比较数字版本号,如下所示:
BOOL isNewer = ([currentVersion compare:oldVersion options:NSNumericSearch] == NSOrderedDescending)
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
1689 次 |
| 最近记录: |