2

私は、Android のビルド プロセスを gradle を使用するように更新中です。クライアント固有のアプリがあります。つまり、動的に作成されるすべてのアプリのベースとして使用される単一のコード テンプレートです。

アプリを作成するために、CSV ファイルをループ処理して各アプリの詳細を取得します。次に、アプリをコンパイルする前に、ソース テンプレートのコピーを取り、クライアントの名前、画像などを挿入します。これは、現在のシステムでは問題なく機能します。Gradle バージョンでは、行を正常にループし、適切な詳細を使用して各行のアプリ ソースを作成することができました。ただし、実際にアプリをビルドしようとすると、次のメッセージで失敗します。

Project with path ':xxxxxx' could not be found in root project 'android-gradle'.

ドキュメントを読むと、これは、実行フェーズまで作成されないため、構成フェーズ中にプロジェクトが存在しないためであることがわかります。しかし、私が見つけることができなかったのは、これを回避する方法です。誰かが同様のことを達成できましたか? それとも、より良いアプローチの提案ですか?

4

2 に答える 2

0

ピーターの答えは私を正しい方向に向けましたが、それは実行可能な解決策ではありませんでした. 残念なことに、ビルドするアプリが 200 近くあるため、それぞれのソースのコピーを作成するのはオーバーヘッドが大きすぎ、gradle は常にメモリ不足になりました。

私が代わりに行ったのは、Android プラグインの製品フレーバー機能を利用することです。productFlavorCSV の行ごとに を動的に追加するのは非常に簡単でした(そして、build.gradleではなく で行うことができますsettings.gradle) srcDir

于 2013-10-29T05:32:02.483 に答える