ios - 不调用 FlurryAdBanner 中的委托(delegate)方法

标签 ios objective-c flurry

我需要在页面底部显示 FlurryAdBanner 横幅。这是我的代码

- (BOOL)application:(UIApplication *)application didFinishLaunchingWithOptions:(NSDictionary *)launchOptions {

    FlurrySessionBuilder* builder = [[[[[FlurrySessionBuilder new]
                                        withLogLevel:FlurryLogLevelAll]
                                       withCrashReporting:YES]
                                      withSessionContinueSeconds:10]
                                     withAppVersion:@"0.1.2"];

    [Flurry startSession:@"PGQ4YPRDNXWR7MRK745M" withSessionBuilder:builder];
    // Override point for customization after application launch.
    return YES;
}

View Controller 。代码

@interface ViewController ()<FlurryAdBannerDelegate>
{
    FlurryAdBanner* adBanner;
}
@end

@implementation ViewController


- (void)viewDidLoad {
    [super viewDidLoad];


    // Do any additional setup after loading the view, typically from a nib.
}
- (void)viewDidAppear:(BOOL)animated
{
    [super viewDidAppear:animated];
    adBanner = [[FlurryAdBanner alloc] initWithSpace:@"bottomAdd"];
    adBanner.adDelegate = self;
    [adBanner fetchAndDisplayAdInView:self.view viewControllerForPresentation:self];

}
- (void) adBannerDidFetchAd:(FlurryAdBanner*)bannerAd{
    NSLog(@" Ad Space [%@] Did Receive Ad ===== ", bannerAd );
    [bannerAd displayAdInView:self.view viewControllerForPresentation:self];
}

- (void) adBannerDidRender:(FlurryAdBanner*)bannerAd {
    NSLog(@" Ad Space [%@] Did Display Ad ===== ", [bannerAd space]);


}

- (void) adBannerWillPresentFullscreen:(FlurryAdBanner*)bannerAd{
    NSLog(@" Ad Space [%@] Will Present Fullscreen Ad ===== ", [bannerAd space]);
}

- (void) adBanner:(FlurryAdBanner*) bannerAd adError:(FlurryAdError) adError errorDescription:(NSError*) errorDescription{
    NSLog(@" Ad Space [%@] Did Fail to Receive Ad with error [%@] ===== ", [bannerAd space], errorDescription);
}

- (void) adBannerDidReceiveClick:(FlurryAdBanner*)bannerAd{
    NSLog(@" Ad Space [%@] Did Receive Click  ===== ", [bannerAd space]);
}

- (void) adBannerDidDismissFullscreen:(FlurryAdBanner*)bannerAd {

    NSLog(@" Ad Space [%@] Will Dismiss for  ===== ", [bannerAd space]);
}


- (void) adBannerWillLeaveApplication:(FlurryAdBanner*)bannerAd {
    NSLog(@" Ad Space [%@] Will Leave Application ===== ", [bannerAd space]);
}


- (void)didReceiveMemoryWarning {
    [super didReceiveMemoryWarning];
    // Dispose of any resources that can be recreated.
}

在雅虎开发人员中,我创建了应用程序unitID。不知道问题是什么。没有调用任何委托(delegate)。请帮助我。

最佳答案

将 viewDidAppear 和 adBannerDidFetchAd 切换为以下代码。您已在 View 中获取并显示,但还在 adBannerDidFetchAd 中进行了第二次显示

- (void)viewDidAppear:(BOOL)animated
{
    [super viewDidAppear:animated];
    adBanner = [[FlurryAdBanner alloc] initWithSpace:@"bottomAdd"];
    adBanner.adDelegate = self;
    viewControllerForPresentation:self];
    [adBanner fetchAdForFrame:self.view.frame];

}
- (void) adBannerDidFetchAd:(FlurryAdBanner*)bannerAd{
    NSLog(@" Ad Space [%@] Did Receive Ad ===== ", bannerAd );
    [bannerAd displayAdInView:self.view viewControllerForPresentation:self];
}

关于ios - 不调用 FlurryAdBanner 中的委托(delegate)方法,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/51356481/

相关文章:

ios - Swift 动态变量不能是可打印类型

ios - Flurry 崩溃分析未报告崩溃

ios - Flurry的基本步骤是做什么的?

ios - 我的应用刚刚因使用广告支持框架而被拒绝。哪个图书馆负责?

iphone - ios套接字流问题

iphone - iOS iPhone 中的可拖动按钮,使其在触摸结束后重新定位到其原始位置。

ios - SpriteKit - Objective C - 相机约束

objective-c - Objective - C,使用 NSDecimalNumberHandler 和 NSDecimalNumberBehaviors 协议(protocol)

ios - 类型 'String' 的值没有成员 'stringByTrimmingCharactersInSet'

ios - UIViewController 隐藏在 UINavigationController 后面,但应该放在下面