当前位置: 首页 > 知识库问答 >
问题:

使用iOSRoboVM/libgdx检测AdMob中的间隙广告关闭

相高谊
2023-03-14

我正在为我的iOS应用程序使用RoboVM绑定来显示AdMob间隙。当我关闭间隙广告时,我将失去所有触摸控制。有没有办法检测广告正在关闭,以便我可以将触摸放回游戏?或者有没有更好的方法来实现间隙?下面是我的代码:

public class IOSLauncher extends IOSApplication.Delegate implements IActivityRequestHandler{
private static final Logger log = new Logger(IOSLauncher.class.getName(), Application.LOG_DEBUG);
private IOSApplication iosApplication;

//interstitial
private static final String INTERSTITIAL_AD = "MY_AD_ID";
private GADInterstitial interstitial;
private UIWindow window;
private UIViewController rootViewController;

@Override
protected IOSApplication createApplication() {
    IOSApplicationConfiguration config = new IOSApplicationConfiguration();
    config.orientationLandscape = true;
    config.orientationPortrait = false;

    iosApplication = new IOSApplication(new PaperPig(this), config);
    return iosApplication;
}

public static void main(String[] argv) {
    NSAutoreleasePool pool = new NSAutoreleasePool();
    UIApplication.main(argv, null, IOSLauncher.class);
    pool.close();
}

@Override
public void initializeAds() {
    intializeInterstitial();
}

public void intializeInterstitial () {
    rootViewController = new UIViewController();

    interstitial = new GADInterstitial();
    interstitial.setAdUnitID(INTERSTITIAL_AD);

    interstitial.setDelegate(new GADInterstitialDelegateAdapter() {
        @Override
        public void didReceiveAd (GADInterstitial ad) {
            System.out.println("Did receive ad.");
        }

        @Override
        public void didFailToReceiveAd (GADInterstitial ad, GADRequestError error) {
            System.out.println(error.description());
            System.out.println(error.getErrorCode());
        }
    });

    window = new UIWindow(UIScreen.getMainScreen().getBounds());
    window.setRootViewController(rootViewController);
    window.addSubview(rootViewController.getView());

    interstitial.loadRequest(GADRequest.create());
}

@Override
public void showOrLoadInterstital() {
    if (interstitial.isReady()) {
        if (rootViewController == null) {
            rootViewController = new UIViewController();
        }
        if (window == null) {
            window = new UIWindow(UIScreen.getMainScreen().getBounds());
            window.setRootViewController(rootViewController);
        }
        window.makeKeyAndVisible();
        interstitial.present(rootViewController);
    }

//将触摸返回游戏
//UIApplication.getSharedApplication(). getKeyWindow(). setRootViewController(rootViewController);}}

共有1个答案

金飞翼
2023-03-14

您需要致电:

        window.setHidden(true);

将GadInterstitialDeleteGateAdapter()的创建更改为以下内容

   interstitial.setDelegate(new GADInterstitialDelegateAdapter() {
        @Override
        public void didReceiveAd (GADInterstitial ad) {
            System.out.println("Did receive ad.");

        }

        @Override
        public void didDismissScreen(GADInterstitial ad) {
             window.setHidden(true);
        }

        @Override
        public void didFailToReceiveAd (GADInterstitial ad, GADRequestError error) {
            System.out.println(error.description());
            System.out.println(error.getErrorCode());
        }
    });
 类似资料:
  • 我正在遵循本教程 到目前为止,当我点击按钮时,它就可以工作了。然而,我似乎无法让它在viewDidLoad上显示中间广告。 这就是我所拥有的: 控制台不断向我显示: 2016-02-04 22:27:51.855 GoogleAdamObjutorial[3394:56415]要获取此设备上的测试广告,请致电:request。testDevices=@[kGADSimulatorID]; 单击按钮

  • 在我的应用程序中,我实现了间隙广告。 在adclose上,我的内容将加载。 我使用了以下代码来实现这个 此实现以前适用于间隙ads。 但是,从昨天起,我发现一些特定的广告没有关闭。 我认为问题是来自谷歌admob api,但我如何才能解决我的问题最终?

  • 我成功地在我的应用程序中实现了AdMob中间广告,但唯一的问题是它们不可点击。 下面是我的AdMob.java类: 和MainPageActivity.java文件: 我不知道当用户升级并按下播放按钮(这将引导他进入下一个级别)时,该如何显示间隙广告。当他按下home键时,间隙广告就会出现,这会把他带到MainActivity屏幕上。 有人能帮我把广告点击一下吗?另外,有什么建议,如何添加的间隙广

  • 我正在完成一个视频应用程序,我在离开视频activity时显示间隙广告。我只想每X分钟显示一次,但似乎每次我离开那个屏幕时它都在显示。 这是我的activity密码。 onCreate: onbackpressed: 当然,在admob中是这样设置的: 注意:我的应用程序没有发布,所以它正在显示“预览”o“示例”。我正在使用我的广告单元ID: 谢谢,

  • 我有一个服务,它将在特定的时间点显示一个活动,在该活动之后,每13次我都显示一个admob插屏广告。当显示插屏广告时,我的应用程序的RAM使用量增加了20MB,之后它不会被垃圾收集。在接下来的13次显示另一个插屏广告时,服务内存没有增加。 我显示广告的代码: 我在以下堆栈溢出问题中尝试了一些解决方案,但没有任何解决方案对我有用。 Android Admob间内存泄漏 Android AdMob导致

  • 我想在一定的时间间隔后,在主要活动上添加一个间隙广告。我搜索,似乎没有参考代码这样做。感谢你的帮助我该怎么做?任何示例代码都将是有用的。多谢了。