ตัวแปร Xcode


103

ใน Xcode ฉันรู้ว่าคุณสามารถรับตัวแปรเช่นPROJECT_DIRเพื่อใช้ในบางสถานการณ์เช่นเฟสการสร้างสคริปต์ที่รัน ฉันสงสัยว่าเป็นไปได้ไหมที่จะได้รับประเภทการสร้าง (เช่นรีลีสหรือดีบัก ) ความคิดใด ๆ ?



คำตอบ:


148

แหล่งที่ดีที่สุดน่าจะเป็นเอกสารที่เป็นทางการของ Apple ตัวแปรเฉพาะที่คุณกำลังมองหาคือ CONFIGURATION


8
ฉันชอบวิธีที่ Xcode ปฏิเสธที่จะแสดงหน้านั้นหากคุณพิมพ์ "การตั้งค่าการสร้าง" ในช่องค้นหาคุณจะได้รับการตั้งค่ารุ่นอื่น ๆ โดยไม่มีการอ้างอิงถึงตัวแปรเหล่านี้ เช่นถ้าคุณใส่ "ตัวแปรบิวด์" มีคนสอน Apple ว่าจะเขียนอัลกอริทึมการค้นหาอย่างไร :)
อดัม

24
หากคุณกำลังพยายามสร้าง "run script build phase" คุณสามารถเริ่มต้นสคริปต์นี้ได้โดยพิมพ์ "env" (ไม่มีเครื่องหมายอัญประกาศ) เป็นบรรทัดแรกของ bash shell script ของคุณ (หรือคำสั่งที่เทียบเท่าสำหรับเชลล์ที่คุณ " กำลังใช้) และสร้างโครงการของคุณ สิ่งนี้จะส่งออกตัวแปรสภาพแวดล้อมทั้งหมดที่มีให้คุณ คุณสามารถใช้สิ่งนี้ร่วมกับเอกสารประกอบเพื่อให้แน่ใจว่าคุณได้รับข้อมูลตามที่คุณคาดหวัง
Ryan H.

3
ฉันคิดว่าฉันเสียเวลาไปครึ่งชั่วโมงในการค้นหารายการเอกสาร / อธิบายตัวแปรสภาพแวดล้อมที่มีให้สำหรับสคริปต์ ฉันส่งคำขอ "การปรับปรุง" เพื่อถามว่าทำไมพวกเขาไม่สามารถใส่ปุ่มเครื่องหมายคำถามรอบ ๆ ปุ่มใดปุ่มหนึ่งพร้อมกับลิงก์ไปยังหน้าความช่วยเหลือที่เหมาะสมได้ คำแนะนำที่ดี HZC แม้ว่าฉันหวังว่ามันจะไม่จำเป็น
Brian

3
น่าเศร้าที่ $ PROJECT_DIR พื้นฐานไม่ได้กล่าวถึงที่ใดในเอกสารอย่างเป็นทางการนั้น ฉันเดาว่ามันเป็นแค่นามแฝง (ชื่อที่ดีกว่า) สำหรับ $ SRCROOT
Ricardo Sanchez-Saez

4
Apple ชอบจัดเรียงเอกสารทั้งหมดใหม่เป็นระยะ ๆ และทำลายลิงก์ที่มีอยู่ทั้งหมด ใครบางคนจะต้องตามล่าลิงค์ใหม่
smorgan

20

นี่คือรายการของตัวแปรสภาพแวดล้อม CURRENT_VARIANTฉันคิดว่าคุณอาจต้องการ BUILD_VARIANTSดูเพิ่มเติม


ตกลงดังนั้นเมื่อฉันใช้ถ่าน * cv = getenv ("CURRENT_VARIANT"); ฉันได้รับ NULL ฉันขาดอะไรไป?
Brooks

1
คำตอบอื่น ๆ ที่ถูกต้อง นี่ไม่ใช่ การกำหนดค่าคือสิ่งที่พวกเขาต้องการ
Baxissimo

และนั่นไม่ใช่แม้แต่รายการทั้งหมด ... ความจริงครึ่งหนึ่ง
ชั่วร้าย
โดยการใช้ไซต์ของเรา หมายความว่าคุณได้อ่านและทำความเข้าใจนโยบายคุกกี้และนโยบายความเป็นส่วนตัวของเราแล้ว
Licensed under cc by-sa 3.0 with attribution required.