2013-04-21 3 views
0

Я пытаюсь получить события RevMobAdsDelegate в своем AppDelegate, и они не вызываются. Ниже то, что я сделал:Проблема с делегатом RevMobAds

1) Реализовать RevMobAdsDelegate протокол:

@interface MyiOSAppAppDelegate : UIResponder <UIApplicationDelegate, RevMobAdsDelegate> 

2) Инициализация RevMobAds с ID:

- (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
, но я все еще пытался. Может ли кто-нибудь помочь, как я могу назвать эти события?

Любая помощь здесь будет высоко оценена.

ответ

6

Делегаты доступны только с объектной рекламой, проверьте API Documentation.

Но вы можете использовать что-то вроде этого:

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

Или вы можете использовать новый блок "делегатов":

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"); 
}]; 
+1

Благодаря человеку! Работает по мере необходимости. –

Смежные вопросы