1. 程式人生 > >【OC】當前版本和appStore版本比較

【OC】當前版本和appStore版本比較

/// 判斷是否最新版本號(大於或等於為最新)
- (BOOL)isLastestVersion:(NSString *)currentVersion compare:(NSString *)lastestVersion {
    if (currentVersion && lastestVersion) {
        // 拆分成陣列
        NSMutableArray *currentItems = [[currentVersion componentsSeparatedByString:@"."] mutableCopy];
        NSMutableArray
*lastestItems = [[lastestVersion componentsSeparatedByString:@"."] mutableCopy]; // 如果數量不一樣補0 NSInteger currentCount = currentItems.count; NSInteger lastestCount = lastestItems.count; if (currentCount != lastestCount) { NSInteger count = labs(currentCount - lastestCount); // 取絕對值
for (int i = 0; i < count; ++i) { if (currentCount > lastestCount) { [lastestItems addObject:@"0"]; } else { [currentItems addObject:@"0"]; } } } // 依次比較 BOOL isLastest = YES
; for (int i = 0; i < currentItems.count; ++i) { NSString *currentItem = currentItems[i]; NSString *lastestItem = lastestItems[i]; if (currentItem.integerValue != lastestItem.integerValue) { isLastest = currentItem.integerValue > lastestItem.integerValue; break; } } return isLastest; } return NO; }