gpt4 book ai didi

ios - RevMobAds 委托(delegate)问题

转载 作者:行者123 更新时间:2023-11-28 18:23:25 25 4
gpt4 key购买 nike

我正在尝试在我的 AppDelegate 中接收 RevMobAdsDelegate 事件,但没有调用它们。看看下面我做了什么:

1) 实现 RevMobAdsDelegate 协议(protocol):

@interface MyiOSAppAppDelegate : UIResponder <UIApplicationDelegate, RevMobAdsDelegate>

2) 使用 ID 初始化 RevMobAds:

- (BOOL)application:(UIApplication *)application didFinishLaunchingWithOptions:(NSDictionary *)launchOptions
{
// other code here..
// Revmob initialization
[RevMobAds startSessionWithAppID: @"SECRET_APP_ID"];
// other code here..
}

3) 调用 RevMob 广告:

- (void)applicationDidBecomeActive:(UIApplication *)application
{
[[RevMobAds session] showFullscreen];
}

4) 声明 RevMobAdsDelegate 事件:

- (void) revmobAdDidFailWithError:(NSError *)error
{
NSLog(@"1");
}

- (void) revmobAdDidReceive
{
NSLog(@"2");
}

- (void) revmobAdDisplayed
{
NSLog(@"3");
}

- (void) revmobUserClickedInTheAd
{
NSLog(@"4");
}

- (void) revmobUserClosedTheAd
{
NSLog(@"5");
}

广告显示正常,没有问题,但没有调用上述函数。我也试过了

[RevMobAds session ].delegate = self;

但什么也没发生。 RevMobAds Documentation 中的任何地方都没有提到最后一行
但我还是试过了。谁能帮助我如何调用这些事件?

这里的任何帮助将不胜感激。

最佳答案

委托(delegate)仅适用于对象广告,查看 API Documentation .

但是你可以使用这样的东西:

RevMobFullscreen *ad = [[RevMobAds session] fullscreen];
ad.delegate = self;
[ad showAd];

或者你可以使用新的 block “delegates”:

 RevMobFullscreen *ad = [[RevMobAds session] fullscreen];
[ad loadWithSuccessHandler:^(RevMobFullscreen *fs) {
[fs showAd];
NSLog(@"Ad loaded");
} andLoadFailHandler:^(RevMobFullscreen *fs, NSError *error) {
NSLog(@"Ad error: %@",error);
} onClickHandler:^{
NSLog(@"Ad clicked");
} onCloseHandler:^{
NSLog(@"Ad closed");
}];

关于ios - RevMobAds 委托(delegate)问题,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/16133164/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com