ฉันไม่รู้ว่าวิธีไหนดีที่สุด แต่ฉันจะโพสต์คำตอบของ Apple ในกรณีที่มีใครกำลังค้นหา ...
ตามโพสต์ Q&A ของ Appleนี้:
ทำเวอร์ชันอัตโนมัติและสร้างตัวเลขโดยใช้ agvtool
คีย์เวอร์ชันและหมายเลขบิลด์ตามลำดับระบุเวอร์ชันทางการตลาดและเวอร์ชันภายในของแอปพลิเคชันของคุณ agvtool เป็นเครื่องมือบรรทัดคำสั่งที่ช่วยให้คุณเพิ่มตัวเลขเหล่านี้โดยอัตโนมัติไปยังหมายเลขสูงสุดถัดไปหรือเป็นจำนวนเฉพาะ
หมายเลขรุ่นจะระบุเวอร์ชันของแอปพลิเคชันของคุณที่ยังไม่ได้เผยแพร่หรือเผยแพร่ มันถูกเก็บไว้ใน Info.plist ของแอปพลิเคชันของคุณเป็นCFBundleVersion
(เวอร์ชัน Bundle)
คุณต้องทำตามขั้นตอนต่อไปนี้ในโครงการ Xcode ของคุณ:
- เปิดใช้ agvtool
ไปที่บานหน้าต่าง Build Settings ของเป้าหมายของคุณจากนั้นอัปเดตสำหรับการกำหนดค่าบิวด์ทั้งหมดของคุณดังนี้:
- ตั้งค่าเวอร์ชันโครงการปัจจุบันเป็นค่าที่คุณเลือก
ไฟล์ข้อมูลโปรเจ็กต์ Xcode ของคุณ project.pbxproj มีการCURRENT_PROJECT_VERSION
ตั้งค่าบิลด์(เวอร์ชันปัจจุบันของโปรเจ็กต์) ซึ่งระบุเวอร์ชันปัจจุบันของโปรเจ็กต์ของคุณ agvtool ค้นหา project.pbxproj สำหรับCURRENT_PROJECT_VERSION
. มันยังคงทำงานต่อไปหากCURRENT_PROJECT_VERSION
มีอยู่และหยุดทำงานมิฉะนั้น ค่าของมันถูกใช้เพื่ออัปเดตหมายเลขบิลด์
- ตั้งค่าระบบการกำหนดเวอร์ชันเป็น Apple Generic
โดยค่าเริ่มต้น Xcode จะไม่ใช้ระบบการกำหนดเวอร์ชันใด ๆ การตั้งค่าระบบการกำหนดเวอร์ชันเป็น Apple Generic ช่วยให้มั่นใจได้ว่า Xcode จะรวมข้อมูลเวอร์ชันที่สร้างโดย agvtool ทั้งหมดไว้ในโครงการของคุณ
- ตั้งค่าเวอร์ชันของคุณและสร้างหมายเลข
agvtool ค้นหา Info.plist ของแอปพลิเคชันของคุณสำหรับเวอร์ชันและหมายเลขบิลด์ของคุณ จะอัปเดตหากมีอยู่และไม่ทำอะไรเลย ตรวจสอบให้แน่ใจว่ามีคีย์CFBundleVersion
(Bundle version) และCFBundleShortVersionString
(Bundle versions string, short) อยู่ใน Info.plist ดังที่เห็นในภาพด้านล่าง:
ออกจาก Xcode จากนั้นไปที่ไดเร็กทอรีที่มีไฟล์โปรเจ็กต์. xcodeproj ของคุณในแอปพลิเคชัน Terminal ก่อนที่จะรันคำสั่งใด ๆ ต่อไปนี้ ไฟล์โปรเจ็กต์. xcodeproj มี project.pbxproj ซึ่ง agvtool ใช้ (นี่คือส่วนที่คุณสามารถเรียกใช้ในสคริปต์แทนบรรทัดคำสั่ง)
การอัปเดตหมายเลขเวอร์ชัน
หากต้องการอัปเดตหมายเลขเวอร์ชันเป็นเวอร์ชันเฉพาะให้เรียกใช้
xcrun agvtool new-marketing-version <your_specific_version>
เช่น:อัปเดตหมายเลขเวอร์ชันเป็น 2.0
xcrun agvtool new-marketing-version 2.0
การอัปเดตหมายเลขรุ่น
หากต้องการเพิ่มหมายเลขบิลด์ของคุณโดยอัตโนมัติให้เรียกใช้
xcrun agvtool next-version -all
ในการกำหนดหมายเลขรุ่นของแอปพลิเคชันของคุณเป็นเวอร์ชันเฉพาะให้เรียกใช้
xcrun agvtool new-version -all <your_specific_version>
เช่น:ตั้งค่าหมายเลขบิลด์เป็น 2.6.9
xcrun agvtool new-version -all 2.6.9
โบนัส:
หากต้องการดูหมายเลขเวอร์ชันปัจจุบันให้เรียกใช้
xcrun agvtool what-marketing-version
หากต้องการดูหมายเลขรุ่นปัจจุบันให้เรียกใช้
xcrun agvtool what-version