iOS 版本公升級處理 版本號的對比

2021-07-30 06:36:16 字數 1482 閱讀 4906

ios中應用版本號在命名時是有一定標準規則的。

版本號的格式:v《主版本號》.《副版本號》.《發布號》
版本號修改的主要規則:

對產品的主體構件進行重大修改,主版本號加1

資料結構變更,副版本號加1

若發布的版本無資料結構變更,發布號加1

1、對比前分析

1)首先版本號固定格式都是以'.'作為分隔,版本號如果要實現對比需要做的就是對不同格式的版本號進行位數補全。

2)對版本號以'.'進行拆分,分別對比每一位版本號數值

3)如果主版本號較大,則版本號高;如果主版本號相同,副版本號大則版本號高;如果主版本號和副版本號都相同,發布號大則版本號高。

2、具體**實現

寫了乙個類目**如下:

#import "nsstring+zwvertioncompare.h"

@implementation

nsstring (zwvertioncompare)

/** * 版本號比較

* @prama version1 版本號資訊1

* @prama version2 版本號資訊2

* @reutrn 返回較大的版本號資訊

*/- (nsstring *)compareversionwithversion2:(nsstring *)version2

while (versionstep2.count

< versionstep1.count)

// 遍歷每乙個版本資訊中的位數

// 記錄比較結果值

bool compareresutl = no;

for(nsuinteger i = 0; i < versionstep1.count; i++)

else

if (versionnumber2 < versionnumber1)

else

}return compareresutl ? version2 : self;

}@end

3、對方法進行測試

// 1、黑盒測試

[self blacktest];

// 2、隨機測試

[self randomtest];

#pragma mark - 黑盒測試

- (void)blacktest

#pragma mark - 隨機測試

- (void)randomtest

}for (nsuinteger i = 0 ; i < step; i++)

}nslog(@"version1 = %@,version2 = %@",version1,version2);

nslog(@"result = %@",[version1 compareversionwithversion2:version2]);

}

java app版本號對比

比較版本號的大小 前者大則返回乙個正數 後者大返回乙個負數 相等則返回0 param version1 param version2 return private static int compareversion string version1 string version2 string ver...

Android版本號對比

在android開發中不可避免會遇到版本公升級的功能,在版本公升級時就需要對比版本號。public static string getversionname context context catch packagemanager.namenotfoundexception e return nul...

ios版本號的區別 和獲取版本號的方法

cfbundleshortversionstring 標識應用程式的 發布版本號 該版本的版本號是三個時期分隔的整數組成的字串。第乙個整數代表重大修改的版本,如實現新的功能或重大變化的修訂。第二個整數表示的修訂,實現較突出的特點。第三個整數代表維護版本。該鍵的值不同於 cfbundleversion...