4

さまざまなブランド向けに作成されたアプリがあります。これで、brand1 と brand2 の 2 つのフレーバーができました。brand1 と brand2 の違いは、リソース ファイルのみです。

まず、すべての共有データをメイン パスに設定し、差分をフレーバー パスに設定できると想定しました。しかし、このシナリオでは、メイン パスのリソースが見つからないため、ビルドに失敗しました。

このように続けます: メイン パスのブランド間のすべてのリソースの違いをダミー データとして設定します。マージは私のために残りを行います。

iOS では、ビルド ターゲットごとにビルド パスを設定できます。フレーバーでこのようなことは可能ですか?または、この状況でのベストプラクティスは何ですか?

[編集 2013 08 07]

私の場合の問題は、Eclipseでアプリを作成し、Androidスタジオにエクスポートしたことです。 ここでは、問題と解決策をより正確に説明します。

4

1 に答える 1

2

もう 1 つの解決策は、既定のリソースを含め、共有されるすべてのもの (基本的にアプリの「バニラ」バージョン) をライブラリ プロジェクトとして配置することです。

次に、ライブラリ プロジェクトを使用する個別の「ブランド」プロジェクトを作成できます。これらに配置したリソースは、ライブラリ プロジェクトのリソースを「上書き」します。

http://developer.android.com/tools/projects/projects-eclipse.html#SettingUpLibraryProject

私はクライアントのためにこれを行いましたが、非常にうまく機能しています。

于 2013-06-26T13:45:46.247 に答える