web-dev-qa-db-ja.com

Xcodeでビルドタイミングを有効にする方法は?

プロジェクトのビルドにかかる時間を知りたい(ビルドペインに表示するなど)。このオプションはXcodeのどこかで利用できますか?

ありがとう。

81
Guillaume

これをターミナルに入力します:

defaults write com.Apple.dt.Xcode ShowBuildOperationDuration YES

ビルド後、「成功」メッセージとともに、期間がアクティビティビューアに表示されます。

アプリを実行している場合、期間が表示される前に、ステータスが実行中のステータスに置き換えられます。

これは、Xcodeの古いバージョンで使用されていたエントリを置き換えます。

デフォルトではcom.Apple.Xcode ShowBuildOperationDurationを書き込みますYES

このコマンドを入力する前に、Xcodeを閉じる必要がある場合があります。期間はプロジェクトウィンドウの左下に表示されます。

Xcode開発者からのコメント:「ドキュメント化されていないすべてのユーザーデフォルトと同様に、これはサポートされておらず、正確であると想定されていますが(保証はされていません)、将来のバージョンで有効であるとは限りません。」

166
Guillaume

いいえ、ただしコマンドラインを使用できます。プロジェクトディレクトリにcdして、次のように入力します。

time xcodebuild
13
Nikolai Ruhe

Xcode 10では、タイミングサマリ機能を使用して、ビルド時間の大きな内訳を確認できるようになりました。

Product-> Perform Action-> Build With Timing Summary

これにより、各ターゲットビルド時間とプロジェクト全体のビルド時間が表示されます。このデータを使用して多くの分析を行うことができ、ビルド時間はハードウェアに依存します。詳細については、WWDC 2018の Building Faster in Xcode をご覧ください。

ただし、Xcodeはデフォルトですべてのビルドを追跡しているため、レポートナビゲーターに移動して、ビルドの時間とログを調べることができます。

レポートナビゲーター内のログの作成

10
Andrew

_Run Script_の_Build Phases_ sで解決しました

ビルドの開始点に実行スクリプトを1つ追加しました。

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

そして最後に1つ:

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

これで、ビルドログ->すべてのメッセージで時間を確認できます

3
adsurbum