Ada 2 Angka!
Nomor rilis pemasaran untuk pelanggan, disebut nomor versi . Dimulai dengan 1.0 dan naik untuk pembaruan besar ke 2.0 , 3.0 , untuk pembaruan kecil ke 1.1 , 1.2 dan untuk perbaikan bug ke 1.0.1 , 1.0.2 . Nomor ini berorientasi pada rilis dan fitur baru. Itu tidak harus berhenti di 9, 1.11.23 adalah nomor versi yang wajar.
Nomor build sebagian besar adalah jumlah internal build yang telah dibuat hingga saat itu. Tetapi beberapa menggunakan nomor lain seperti nomor cabang repositori atau nomor komitnya. Nomor ini seharusnya unik untuk membedakan build yang berbeda, yang hanya memiliki sedikit perubahan tambahan.
Untuk mendapatkan nomor versi :
Objective-C:
NSString * appVersionString = [[NSBundle mainBundle] objectForInfoDictionaryKey:@"CFBundleShortVersionString"];
Swift <3.0:
let appVersionString: String = NSBundle.mainBundle().objectForInfoDictionaryKey("CFBundleShortVersionString") as! String
Swift 3.0+ (diuji dengan 5.0):
let appVersionString: String = Bundle.main.object(forInfoDictionaryKey: "CFBundleShortVersionString") as! String
Untuk mendapatkan nomor build :
Objective-C:
NSString * appBuildString = [[NSBundle mainBundle] objectForInfoDictionaryKey:@"CFBundleVersion"];
Swift <3.0:
let buildNumber: String = NSBundle.mainBundle().objectForInfoDictionaryKey("CFBundleVersion") as! String
Swift 3.0+ (diuji hingga 5.0):
let buildNumber: String = Bundle.main.object(forInfoDictionaryKey: "CFBundleVersion") as! String
jika kamu mau keduanya dalam satu:
Pertama gunakan baris di atas dan kemudian yang berikutnya.
Objective-C:
NSString * versionBuildString = [NSString stringWithFormat:@"Version: %@ (%@)", appVersionString, appBuildString];
Swift (diuji hingga 5.0):
let versionAndBuildNumber: String = "\(appVersionString) (\(buildNumber))"
Catatan:
Nilai-nilai dalam bundel utama tidak selalu ada, misalnya dalam aplikasi baris perintah tidak ada CFBundleShortVersionString
atau CFBundleVersion
, sehingga metode akan mengembalikannil
dan akan macet karena dalam kode itu membuat downcast yang salah. Namun di aplikasi Cocoa iOS dan Mac normal, nilai-nilai ini ditentukan dan tidak akan dihapus.
Ini diuji dengan Xcode Versi 7.3 (7D175) . Nomor build sering kali ditulis dalam tanda kurung / kurung. Nomor build dalam heksadesimal atau desimal.
Di Xcode Anda dapat secara otomatis menambah nomor build sebagai angka desimal dengan menempatkan yang berikut ini dalam Run script
fase build di pengaturan proyek
#!/bin/bash
buildNumber=$(/usr/libexec/PlistBuddy -c "Print CFBundleVersion" "$INFOPLIST_FILE")
buildNumber=$(($buildNumber + 1))
/usr/libexec/PlistBuddy -c "Set :CFBundleVersion $buildNumber" "$INFOPLIST_FILE"
Untuk nomor build heksadesimal, gunakan skrip ini
buildNumber=$(/usr/libexec/PlistBuddy -c "Print CFBundleVersion" "$INFOPLIST_FILE")
buildNumber=$((0x$buildNumber))
buildNumber=$(($buildNumber + 1))
buildNumber=$(printf "%X" $buildNumber)
/usr/libexec/PlistBuddy -c "Set :CFBundleVersion $buildNumber" "$INFOPLIST_FILE"
Untuk Xcode
melakukan hal berikut:
Langkah 1
Langkah 2
LANGKAH 3