Swift3 獲取版本號,比較版本大小

2021-09-08 19:22:39 字數 1412 閱讀 6026

swift獲取應用版本號:version

1、獲取本地版本號

///

獲取本地版本號

func getlocalversion() ->string

return

localversion

}

如果想獲取build號:替換key 為「cfbundleversion」即可。

2、比較兩個版本大小:

這裡有個誤區,可能有些人覺得直接比較就可以了,其實這樣是錯誤的,比如:

v1.1.10 和 v1.1.2  ,直接比較後者》前者,但實際上【1.1.2 < 1.1.10】。

所以下面的比較原理,其實是分割比較:

///

比較版本大小,返回是否需要更新

//////

- parameters:

///- v1: 版本1- 新版本

///- v2: 版本2- 當前版本

///- returns: true:v1>v2 false:v1

<=v2

func compareversions(v1:string,v2:string) -> bool

ifv2.isempty

let arry1 = v1.components(separatedby: "."

) let arry2 = v2.components(separatedby: "."

)

//取count少的

let mincount = arry1.count > arry2.count ?arry2.count : arry1.count

var value1:int = 0

var value2:int = 0

for i in

0..value1 = int(arry1[i])!value2 = int(arry2[i])!

//v1版本字段大於v2版本字段

if value1 >value2

else

if value1 //v1版本=v2版本字段 繼續迴圈

}

//欄位多的版本高於欄位少的版本

if arry1.count >arry2.count

else

if arry1.count <=arry2.count

return

false

}///

判斷是否是數字

//////

- parameter string:

<#string description#>

///- returns:

<#return value description#>

func ispurnint(string: string) ->bool

Swift 獲取版本號

swift版本 let infodictionary bundle.main.infodictionary if let infodictionary infodictionaryoc版本 nsdictionary infodictionary nsbundle mainbundle infodic...

比較版本號

題目 比較兩個版本號 version1 和 version2。如果 version1 version2 返回 1,如果 version1 version2 返回 1,除此之外返回 0。你可以假設版本字串非空,並且只包含數字和 字元。字元不代表小數點,而是用於分隔數字序列。例如,2.5 不是 兩個半 ...

比較版本號

比較兩個版本號 version1 和 version2。如果 version1 version2 返回 1,如果 version1 version2 返回 1,除此之外返回 0。你可以假設版本字串非空,並且只包含數字和 字元。字元不代表小數點,而是用於分隔數字序列。例如,2.5 不是 兩個半 也不是...