支持的网络
App Open 需求由以下竞价网络提供: 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")")
}
}