资源 conflict/not 在 android 工作室中找到了风格

Ressource conflict/not found with flavors in android studio

我在 Android 工作室玩各种口味,我做了一个演示和一个完整的口味,唯一的区别在于演示版本有一个 activity_main.xml 布局的副本和一个 admod 视图其中,

完整版还没有....

我读到有单独的 java class 文件是个坏主意,所以我将 admob 的东西集成到 main/.../src/java/.../MainActivity class:

if("free".equals(BuildConfig.FLAVOR))
{
  Log.d(TAG, "flavor: " + BuildConfig.FLAVOR);
  MobileAds.initialize(this, ADMOB_APP_ID);

  AdView mAdView;
  mAdView = findViewById(R.id.adView);
  AdRequest adRequest = new AdRequest.Builder()
      //.addTestDevice("151A597D874BD0B8D69D5D5E5B18B0E8")
  .build();
  mAdView.loadAd(adRequest);
}

并且构建演示版本完美无缺.... 但是,由于 admob 视图 ID 在完整版本中不存在,所以它不再构建....

退出

 Error:(204, 34) error: cannot find symbol variable adView

所以我有点不知道如何解决这个问题......我通读了所有关于口味的例子,一般都解决了问题,但是为了具体解决这类问题我找不到任何东西...... ..

您必须只使用一个 xml 文件 (activity_main.xml) 并使用

AdView mAdView;
mAdView = findViewById(R.id.adView);    
if("free".equals(BuildConfig.FLAVOR))
    {
      mAdView.setVisibility(View.VISIBLE);
      mAdView.loadAd(adRequest);
    }else{
      mAdView.setVisibility(View.GONE);
}