Xcode में बिल्ड टाइमिंग को इनेबल कैसे करें?


90

मैं जानना चाहता हूं कि मेरी परियोजना के निर्माण में कितना समय लगता है, उदाहरण के लिए इसे निर्माण फलक में प्रदर्शित करके। क्या यह विकल्प कहीं Xcode में उपलब्ध है?

धन्यवाद।

जवाबों:


179

इसे टर्मिनल में टाइप करें:

defaults write com.apple.dt.Xcode ShowBuildOperationDuration YES

"सफल" संदेश के साथ, निर्माण के बाद गतिविधि दर्शक में अवधि दिखाई देती है।

यदि आप ऐप चला रहे हैं, तो इससे पहले कि आप अवधि देख सकें, स्टेटस को रनिंग स्टेटस से बदल दिया जाएगा।

यह उस प्रविष्टि को प्रतिस्थापित करता है जिसका उपयोग Xcode के पुराने संस्करणों में किया गया था:

डिफॉल्ट्स com.apple.Xcode ShowBuildOperationDuration YES लिखते हैं

इस आदेश को दर्ज करने से पहले Xcode को बंद करने की आवश्यकता हो सकती है। अवधि को प्रोजेक्ट विंडो के नीचे बाईं ओर दिखाई देना चाहिए।

एक Xcode डेवलपर से टिप्पणी करें: "सभी अनिर्दिष्ट उपयोगकर्ता चूक के साथ, यह असमर्थित है, सही माना जाता है (लेकिन इसकी गारंटी नहीं) सटीक है, और भविष्य के संस्करणों में प्रभावी होने का आश्वासन नहीं दिया गया है।"


7
यह Xcode 6 के लिए भी काम करता है। विंडो टाइटल बार के नीचे बिल्ड टाइम दिखाया गया है।
कालस

6
@bobobobo का स्क्रीनशॉट जहां Xcode 6.1.1 में दिखाई देता है <img src = " i.imgur.com/6KkYdls.png ">
chunkyguy

2
किसी भी तरह से इसे प्रिंट करने के लिए, एक फ़ाइल के लिए?
एलेक्स बार्टिस

1
यह मेरे लिए Xcode 7.1.1 (नए का उपयोग करते हुए com.apple.dt.Xcode) में पुष्टि करता है
जेडीडेजा

2
अगर कोई और सोच रहा है तो एक्टिविटी दर्शक एक्सकोड के बीच के हिस्से में खिड़की है जहां यह दिखाता है कि वर्तमान में क्या बनाया जा रहा है और इस प्रक्रिया में कितनी दूर है।
वारपजीत

14

Xcode 10 में, अब आप उनकी टाइमिंग सारांश सुविधा का उपयोग करके बिल्ड समय का एक बड़ा विघटन देख सकते हैं।

उत्पाद-> क्रिया करें-> समय सारिणी के साथ निर्माण करें

यह आपके प्रत्येक लक्षित निर्माण समय और समग्र प्रोजेक्ट बिल्ड समय दिखाएगा। आप इस डेटा का उपयोग करके बहुत विश्लेषण कर सकते हैं और निर्माण समय आपके हार्डवेयर पर निर्भर करेगा। यदि आप अधिक जानने के लिए देखभाल करते हैं तो WWDC 2018 से Xcode में बिल्डिंग फास्टर देखें ।

हालाँकि, Xcode डिफ़ॉल्ट रूप से आपके सभी बिल्ड का ट्रैक रखता है और आप उनकी रिपोर्ट नेविगेटर पर जाकर उनके समय और लॉग की जांच कर सकते हैं।

रिपोर्ट नेविगेटर के भीतर लॉग का निर्माण करें


कोई तरीका नहीं है कि मैं बिल्ड लॉग को XCode से समय के साथ बचा सकता हूं। मैं केवल XCode आउटपुट में समय देख सकता हूँ
msk

13

नहीं, लेकिन आप कमांड लाइन का उपयोग कर सकते हैं। अपनी परियोजना निर्देशिका और प्रकार के लिए सीडी

time xcodebuild

3

मैंने इसे Run Scriptएस में हल कियाBuild Phases

मैंने निर्माण के आरंभ बिंदु पर एक रन स्क्रिप्ट जोड़ी है:

echo $(date +%s) > ../build_start_time

और अंत में एक:

START=$(cat ../build_start_time)
END=$(date +%s)
echo $(echo "$END - $START" | bc)

अब मैं बिल्ड लॉग -> सभी संदेशों में समय देख सकता हूं


1
Xcode 6.4 में, यह आपको किसी भी "स्टॉक" बिल्ड चरणों के पहले स्क्रिप्ट रन चरण को खींचने नहीं देगा। यदि आप अतिरिक्त बिल्ड चरणों का एक समूह बनाते हैं, तो यह आपको उन लोगों के बीच फिर से आदेश देगा, लेकिन ऐसा लगता है कि सभी "स्टॉक" बिल्ड चरणों को पहले आना चाहिए। क्या आपको इसके आसपास कोई रास्ता मिल गया है?
जेसन पेप्स

0

Xcode 10 के बाद

  • यदि आप कमांड-लाइन से निर्माण करते -buildWithTimingSummaryहैं, तो बिल्ड टाइम सारांश देखने के लिए उपयोग करें।
xcodebuild -buildWithTimingSummary
Build Timing Summary
CompileSwiftSources (1 task) | 5.434 seconds
PhaseScriptExecution (1 task) | 5.046 seconds
CompileAssetCatalog (1 task) | 2.788 seconds
CompileStoryboard (1 task) | 1.880 seconds CompileMetalFile (5 tasks) | 1.735 seconds
CopySwiftLibs (1 task) | 0.740 seconds
Ld (2 tasks) | 0.306 seconds
CodeSign (3 tasks) | 0.177 seconds
CompileC (1 task) | 0.170 seconds
MetalLink (2 tasks) | 0.046 seconds
Ditto (4 tasks) | 0.032 seconds
LinkStoryboards (1 task) | 0.023 seconds
  • आप Xcode उपयोग करते हैं, Product->Perform Action->Build With Timing Summary। और Xcode बिल्डिंग लॉग में बिल्डिंग टाइम सारांश देखें।

आजकल राइट कमांड लाइन का तर्क है -showBuildTimingSummary
मोर्स
हमारी साइट का प्रयोग करके, आप स्वीकार करते हैं कि आपने हमारी Cookie Policy और निजता नीति को पढ़ और समझा लिया है।
Licensed under cc by-sa 3.0 with attribution required.