Не удалось создать экземпляр класса с именем ADBannerView

Я пытаюсь вставить баннер iad в нижнюю часть своего приложения, но после выполнения руководств продолжаю получать ошибки. код следующим образом.

@interface DMKHomeViewController (UIViewcontroller ) <ADBannerViewDelegate>{

}
@end

@implementation DMKHomeViewController

- (id)initWithNibName:(NSString *)nibNameOrNil bundle:(NSBundle *)nibBundleOrNil
{
self = [super initWithNibName:nibNameOrNil bundle:nibBundleOrNil];
if (self) {
    // Custom initialization
}
return self;
}

-(void)bannerViewDidLoadAd:(ADBannerView *)banner {

[UIView beginAnimations:nil context:NULL];

[UIView setAnimationDuration:1];

[banner setAlpha:1];

[UIView commitAnimations];

}



- (void)bannerView:(ADBannerView *)

banner didFailToReceiveAdWithError:(NSError *)error

{

[UIView beginAnimations:nil context:NULL];

[UIView setAnimationDuration:1];

[banner setAlpha:0];

[UIView commitAnimations];

}

Я продолжаю получать следующую ошибку: * Завершение работы приложения из-за неперехваченного исключения «NSInvalidUnarchiveOperationException», причина: «Не удалось создать экземпляр класса с именем ADBannerView» * Стек вызовов первого вызова:


person MikeAsp    schedule 06.06.2014    source источник
comment
возможный дубликат iAd Banner не работает   -  person BB9z    schedule 18.04.2015
comment
@MikeAsp Эй, приятель, не мог бы пометить мой ответ как выбранный? Заранее спасибо. Ваше здоровье.   -  person serge-k    schedule 17.09.2015


Ответы (2)


Убедитесь, что вы добавили "iAd.framework" ...

Для этого перейдите в «App. Target», «General» и прокрутите вниз, пока не увидите «Linked Frameworks and Libraries». Нажмите «+» и выберите структуру iAd. См. Снимки экрана ниже ...

App. Target -› General

'+' для добавления, поиск iAd

person serge-k    schedule 03.10.2014
comment
В моем случае это правильный ответ. Я решил включить adBannerView в перо, но забыл импортировать фреймворк в свой проект и сделать это. - person Coach Roebuck; 16.05.2016
comment
@CoachRoebuck Привет! Только что видел это. Я рада, что это вам помогло! Трудно уследить за всеми фреймворками, особенно в большом проекте ... Так легко забыть. - person serge-k; 07.07.2016

Вы не создали объект AdBannerview ..

Сначала создайте объект для просмотра баннера и установите для него делегата.

-(void)ViewDidLoad
{
   [self createBannerView];
}
- (void)createBannerView {

  Class cls = NSClassFromString(@"ADBannerView");
  if (cls) {
    ADBannerView *adView = [[cls alloc] initWithFrame:CGRectZero];


    // Set the current size based on device orientation
    adView.currentContentSizeIdentifier = ADBannerContentSizeIdentifier320x50;
    adView.delegate = self;

    adView.autoresizingMask = UIViewAutoresizingFlexibleTopMargin |
                              UIViewAutoresizingFlexibleRightMargin;

    // Set initial frame to be offscreen
    CGRect bannerFrame =adView.frame;
    bannerFrame.origin.y = self.view.frame.size.height;
    adView.frame = bannerFrame;

    self.bannerView = adView;
    [self.view addSubview:adView];
    [adView release];
  }
}
person Bhoomi Jagani    schedule 06.06.2014
comment
нет, это не сработало, либо ADBannerContentSizeIdentifier обесценился - person MikeAsp; 06.06.2014
comment
Сначала вы создаете объект и устанавливаете делегат ... без написания первого ADBannerContentSizeIdentifier, а затем проверяете и запускаете ........ и для более подробной информации ... useyourloaf.com/blog/2010/09/16/ см. Это подробнее учебник ... - person Bhoomi Jagani; 06.06.2014