Có 2 số!
Số phát hành tiếp thị dành cho khách hàng, được gọi là số phiên bản . Nó bắt đầu với 1.0 và tăng các bản cập nhật lớn lên 2.0 , 3.0 , cho các bản cập nhật nhỏ lên 1.1 , 1.2 và sửa lỗi cho 1.0.1 , 1.0.2 . Con số này được định hướng về phát hành và các tính năng mới. Nó không phải dừng lại ở 9, 1.11,23 là một số phiên bản hợp lý.
Số bản dựng chủ yếu là số bản dựng của bản dựng đã được tạo cho đến lúc đó. Nhưng một số sử dụng các số khác như số nhánh của kho lưu trữ hoặc số cam kết của nó. Số này phải là duy nhất để phân biệt các bản dựng khác nhau, chỉ có các thay đổi gia tăng nhỏ.
Để có được số phiên bản :
Mục tiêu-C:
NSString * appVersionString = [[NSBundle mainBundle] objectForInfoDictionaryKey:@"CFBundleShortVersionString"];
Swift <3.0:
let appVersionString: String = NSBundle.mainBundle().objectForInfoDictionaryKey("CFBundleShortVersionString") as! String
Swift 3.0+ (đã thử nghiệm với 5.0):
let appVersionString: String = Bundle.main.object(forInfoDictionaryKey: "CFBundleShortVersionString") as! String
Để có được dựng :
Mục tiêu-C:
NSString * appBuildString = [[NSBundle mainBundle] objectForInfoDictionaryKey:@"CFBundleVersion"];
Swift <3.0:
let buildNumber: String = NSBundle.mainBundle().objectForInfoDictionaryKey("CFBundleVersion") as! String
Swift 3.0+ (đã thử nghiệm cho đến 5.0):
let buildNumber: String = Bundle.main.object(forInfoDictionaryKey: "CFBundleVersion") as! String
Nếu bạn muốn cả hai trong một:
Đầu tiên sử dụng các dòng trên và sau đó một dòng sau.
Mục tiêu-C:
NSString * versionBuildString = [NSString stringWithFormat:@"Version: %@ (%@)", appVersionString, appBuildString];
Swift (đã thử nghiệm cho đến 5.0):
let versionAndBuildNumber: String = "\(appVersionString) (\(buildNumber))"
Ghi chú:
Các giá trị trong gói chính không phải lúc nào cũng có mặt, ví dụ trong ứng dụng dòng lệnh không có CFBundleShortVersionString
hoặc CFBundleVersion
, vì vậy các phương thức sẽ trả vềnil
và nó sẽ bị sập vì trong mã nó tạo ra một luồng không chính xác. Nhưng trong các ứng dụng Cacao và iOS bình thường, các giá trị này được xác định và sẽ không bị xóa.
Điều này được thử nghiệm với Xcode Phiên bản 7.3 (7D175) . Số bản dựng thường được viết bằng dấu ngoặc đơn / dấu ngoặc nhọn. Số bản dựng ở dạng thập lục phân hoặc thập phân.
Trong Xcode bạn có thể tự động tăng các số xây dựng như một số thập phân bằng cách đặt những điều sau đây trong Run script
giai đoạn xây dựng trong các thiết lập dự án
#!/bin/bash
buildNumber=$(/usr/libexec/PlistBuddy -c "Print CFBundleVersion" "$INFOPLIST_FILE")
buildNumber=$(($buildNumber + 1))
/usr/libexec/PlistBuddy -c "Set :CFBundleVersion $buildNumber" "$INFOPLIST_FILE"
Đối với số bản dựng thập lục phân, sử dụng tập lệnh này
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"
Dành cho Xcode
làm như sau:
Bước 1
Bước 2
Bước 3