跳转到主要内容
App Open 广告是全屏广告位,适用于应用回到前台等场景,例如用户将应用切到后台后再次返回。

支持的网络

App Open 需求由以下竞价网络提供:
网络适配器
MintegralMintegral
PanglePangle
VungleVungle
Google Mobile Ads 瀑布流适配器 同样支持 App Open 广告位,用于 AdMob 瀑布流需求。
@interface YourViewController () <CLXAppOpenDelegate, CLXAdRevenueDelegate>
@property (nonatomic, strong) CLXAppOpen *appOpenAd;
@end

@implementation YourViewController

- (void)createAppOpenAd {
    self.appOpenAd = [[CloudXCore shared] createAppOpenWithAdUnitId:@"your-app-open-ad-unit-id"];
    self.appOpenAd.delegate = self;
    self.appOpenAd.revenueDelegate = self;
    [self.appOpenAd load];
}

- (void)showAppOpenAd {
    if (self.appOpenAd.isReady) {
        [self.appOpenAd showFromViewController:self];
    } else {
        NSLog(@"App Open ad not ready");
    }
}

- (void)dealloc {
    [self.appOpenAd destroy];
}

#pragma mark - CLXAppOpenDelegate

- (void)didLoadAd:(CLXAd *)ad {
    NSLog(@"App Open ad loaded from %@", ad.networkName);
}

- (void)didFailToLoadAd:(NSString *)adUnitId error:(CLXError *)error {
    NSLog(@"App Open ad failed to load: %@", error.localizedDescription);
}

- (void)didDisplayAd:(CLXAd *)ad {
    NSLog(@"App Open ad displayed");
}

- (void)didFailToDisplayAd:(CLXAd *)ad error:(CLXError *)error {
    NSLog(@"App Open ad failed to display: %@", error.localizedDescription);
    [self.appOpenAd load];
}

- (void)didHideAd:(CLXAd *)ad {
    NSLog(@"App Open ad hidden");
    [self.appOpenAd load]; // Reload for next use
}

- (void)didClickAd:(CLXAd *)ad {
    NSLog(@"App Open ad clicked");
}

#pragma mark - CLXAdRevenueDelegate

- (void)didPayRevenueForAd:(CLXAd *)ad {
    NSLog(@"App Open revenue: %@ from %@", ad.revenue, ad.networkName);
}

@end
class YourViewController: UIViewController, CLXAppOpenDelegate, CLXAdRevenueDelegate {
    private var appOpenAd: CLXAppOpen?

    func createAppOpenAd() {
        appOpenAd = CloudXCore.shared.createAppOpen(adUnitId: "your-app-open-ad-unit-id")
        appOpenAd?.delegate = self
        appOpenAd?.revenueDelegate = self
        appOpenAd?.load()
    }

    func showAppOpenAd() {
        if appOpenAd?.isReady == true {
            appOpenAd?.show(from: self)
        } else {
            print("App Open ad not ready")
        }
    }

    deinit {
        appOpenAd?.destroy()
    }

    // MARK: - CLXAppOpenDelegate

    func didLoad(_ ad: CLXAd) {
        print("App Open ad loaded from \(ad.networkName ?? "unknown")")
    }

    func didFailToLoadAd(_ adUnitId: String, error: CLXError) {
        print("App Open ad failed to load: \(error.localizedDescription)")
    }

    func didDisplay(_ ad: CLXAd) {
        print("App Open ad displayed")
    }

    func didFailToDisplay(_ ad: CLXAd, error: CLXError) {
        print("App Open ad failed to display: \(error.localizedDescription)")
        appOpenAd?.load()
    }

    func didHide(_ ad: CLXAd) {
        print("App Open ad hidden")
        appOpenAd?.load() // Reload for next use
    }

    func didClick(_ ad: CLXAd) {
        print("App Open ad clicked")
    }

    // MARK: - CLXAdRevenueDelegate

    func didPayRevenue(for ad: CLXAd) {
        print("App Open revenue: \(ad.revenue ?? 0) from \(ad.networkName ?? "unknown")")
    }
}
请谨慎使用 App Open 广告,仅在自然的应用打开或恢复前台的时机展示。当用户正在与应用内容交互时,请避免展示。