3

ビルドでいくつかの製品フレーバーを指定するために Gradle を使用していますが、シャドウ アプリケーションのコンテキストによって検出されるパッケージ名はカスタムのものではなく、デフォルトのマニフェストのものです。ただし、ビルドされた apk はカスタム パッケージ名を報告します。

テストから:

    final Context context = Robolectric.getShadowApplication().getApplicationContext();
    System.out.println("Package name is: " + context.getPackageName());

http://tools.android.com/tech-docsによると:

フレーバーのパッケージ名をオーバーライドしても、R クラスが生成される場所には影響しません。これは、最終的な APK が作成されたときにのみ適用されます。

...これは、フレーバーがビルド プロセスの一部にのみ適用されるように聞こえます。テストを構築するときにフレーバーを使用する方法についてのアイデアはありますか?

4

0 に答える 0