Получить Xcode Build Time
Я хочу извлечь общее время сборки проекта XCode, отображаемое в небольшом поле над XCode, если вы включили defaults write com.apple.dt.Xcode ShowBuildOperationDuration YES
,
Я не нахожу никакой информации в .xcactivitylog
файлы.
Я также попробовал подход, чтобы сэкономить время с помощью сценария фазы сборки на самом верху, но, включая некоторые модули, это также должно быть в каждом модуле как сценарий фазы сборки.
Xcode сохраняет эту информацию где-нибудь?
4 ответа
Я использую BuildTimeAnalyzer для регистрации времени сборки каждого файла и функции. Это проект с открытым исходным кодом, и вы можете проверить реализацию.
Этот случай можно решить с помощью сценариев, которые выполняются до и после сборки. Вы можете установить их в Xcode -> Настройки -> Поведения
На старте вы можете назначить:
#!/bin/sh
echo `date +%s` > test.txt
и в конце
#!/bin/sh
startTime=$(head -n 1 test.txt)
currentTime=`date +%s`
diff="$(($currentTime - $startTime))"
# do whatever you need with compilation time
-> Перейти к терминалу -> каталог проекта cd
defaults write com.apple.dt.Xcode ShowBuildOperationDuration YES
Для чего вам это нужно? Существуют альтернативные решения (например, использование Trrminal и xcodebuild), но это зависит от того, для чего это нужно.
Обновление: ОК, вы говорите, что это нужно для измерения времени сборки между разработчиками. В этом случае, я думаю, единственный API, который вы можете использовать, это API-интерфейс Accessibility, чтобы фактически запрашивать значения в интерфейсе Xcode.