我使用的是AdMob和Firebase的集成,因此我使用的是AdView,AdRequest和MobileAds等。我在AndroidLauncher中使用了它们,效果很好,但是当尝试实现一个名为AdsManager的接口并创建类型为AdView的变量时,它可以解决不了。我猜是因为我不在android模块中。那么,当我进入Core模块(MyGdxGame)时,如何从AndroidLauncher中获取“ AdMob类型”变量?示例: Android模块AdsManagerpackage com.game.mygame.monetization;public interface AdsManager { void showAds(boolean show);}Android启动器public class AndroidLauncher extends AndroidApplication implements AdsManager {private final String TAG = "AndroidLauncher";private AdHandler adHandler; // Variable I want to reach from core modulestatic class AdHandler extends Handler { private final int ADS_SHOW = 1; private final int ADS_HIDE = 0; private AdView adBanner; // Variable I want to reach from core module @Override public void handleMessage(Message msg) { super.handleMessage(msg); switch (msg.what) { case ADS_SHOW: adBanner.setVisibility(View.VISIBLE); break; case ADS_HIDE: adBanner.setVisibility(View.GONE); break; } }}@Overrideprotected void onCreate (Bundle savedInstanceState) { super.onCreate(savedInstanceState); AndroidApplicationConfiguration config = new AndroidApplicationConfiguration(); RelativeLayout layout = new RelativeLayout(this); View view = initializeForView(new MyGdxGame(this), config); layout.addView(view); implementAds(); requestAds(layout); // Sets the background image setContentView(layout);}public void implementAds() { // Implement ads MobileAds.initialize(this, ""); adHandler = new AdHandler(); adHandler.adBanner = new AdView(this); adHandler.adBanner.setAdListener(new AdListener() { @Override public void onAdLoaded() { super.onAdLoaded(); Log.i(TAG, "Ad loaded ..."); } });尝试创建一个实现AdsManager的名为AndroidAdsManager的类时,它无法解析私有AdView变量,因为我猜想我不在android模块中了。
添加回答
举报
0/150
提交
取消