2015-11-11 2 views
5

Cordovaのウェブサイトでは、アルファベット順にフックの長いリストが表示されますが、それらがトリガして実行される正しい順序は何ですか?Cordovaフックの注文

cordova.jsスクリプトをビルド/コンパイルする前に、ファイルheadindex.htmlに追加しようとしています。

まず、before_buildbefore_compileの間には何が起こりますか? buildcompileの違いは何ですか?

buildは、compileのプラットフォームコードの前にすべての資産をコピーしていますか?だから私のフックはbefore_buildディレクトリにあるはずですか?

私が間違っている場合は、私に確認してください。

ドキュメントが不明であるため、また、フックの正しい順序が皆に参考になります:)

EDIT:

cordova-cliが自動的にそれが欠けている場合には、最終的には私のためcordova.jsスクリプトを追加していますか?フックをテストしていて、それがうまくいかなくてもスクリプトはすでにhtmlファイルに存在しています。

+0

明らかに、元の 'index.html'ファイルに手作業で入れなかったとしても、私の' cordova.js'ファイルは既に追加されています。開発中には良いことだから、コンソールに404エラーは表示されません。 フックスクリプトで問題を解決したとしても、すべてのフックがどの順番で実行されるかを知ることはクールです – Zorgatone

答えて

8

コンパイルは、ネイティブのコンパイルステップですが、準備はコルドーバがすべてのプリファレンスとアセットのコピーを実行するときです。ビルドは、これらの両方を実行するためのショートカットです。これは、フックが発射される順序であることがわかります。コルドバのビルドで

(コルドバ5.4.0でテスト):コルドバで

before_build 
before_prepare 
after_prepare 
before_compile 
after_compile 
after_build 

は準備:コルドバで

before_prepare 
after_prepare 

がコンパイル:コルドバで

before_compile 
after_compile 

を実行します。

before_run 
before_prepare 
after_prepare 
after_run 

興味深いことにrunは、準備フックを起動するように見えますが、コンパイル(またはビルド)フックは起動しません。これはちょうどバグかもしれません。

+0

'run'は既にビルドされていれば再度コンパイルしないでください。それは私が – Zorgatone

+0

'run'がコンパイルすると仮定したものです。これは本当にバグです:https://issues.apache.org/jira/browse/CB-8287 – ssmith

関連する問題