[xcode] Xcode에서 빌드 타이밍을 활성화하는 방법은 무엇입니까?

예를 들어 빌드 창에 표시하여 프로젝트 빌드에 걸리는 시간을 알고 싶습니다. 이 옵션은 Xcode 어딘가에서 사용할 수 있습니까?

감사.



답변

터미널에 다음을 입력하십시오.

defaults write com.apple.dt.Xcode ShowBuildOperationDuration YES

빌드 후 활동 뷰어에 “성공”메시지와 함께 기간이 표시됩니다.

앱을 실행중인 경우 기간을 확인하기 전에 상태가 실행 중 상태로 대체됩니다.

이것은 이전 버전의 Xcode에서 사용 된 항목을 대체합니다.

기본값 쓰기 com.apple.Xcode ShowBuildOperationDuration YES

이 명령을 입력하기 전에 Xcode를 닫아야 할 수 있습니다. 기간은 프로젝트 창의 왼쪽 하단에 표시되어야합니다.

Xcode 개발자의 의견 : “문서화되지 않은 모든 사용자 기본값과 마찬가지로 이는 지원되지 않으며 정확하다고 가정 (보장되지는 않음)하며 향후 버전에서 효과가 있다고 보장되지 않습니다.”


답변

Xcode 10에서는 이제 Timing Summary 기능을 사용하여 빌드 시간을 크게 분류 할 수 있습니다.

제품-> 작업 수행-> 시간 요약으로 빌드

그러면 각 대상 빌드 시간과 전체 프로젝트 빌드 시간이 표시됩니다. 이 데이터를 사용하여 많은 분석을 수행 할 수 있으며 빌드 시간은 하드웨어에 따라 다릅니다. 자세한 내용은 WWDC 2018의 Xcode 에서 더 빠르게 빌드를 확인하십시오 .

그러나 Xcode는 기본적으로 모든 빌드를 추적하고 보고서 네비게이터로 이동하여 시간과 로그를 검사 할 수 있습니다.

보고서 네비게이터 내에서 로그 작성


답변

아니요,하지만 명령 줄을 사용할 수 있습니다. 프로젝트 디렉토리로 이동하고 다음을 입력하십시오.

time xcodebuild


답변

나는 Run Scripts로 그것을 해결했다 .Build Phases

빌드 시작점에 하나의 실행 스크립트를 추가했습니다.

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

그리고 끝에 하나 :

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

이제 빌드 로그-> 모든 메시지에서 시간을 볼 수 있습니다.


답변

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 빌드 로그에서 빌드 시간 요약을 참조하십시오.


답변