Как интегрировать рекламные баннеры в tvOS?

В моем приложении я использую рекламу для tvOS. Я пытался использовать AppLovin SDK для реализации рекламы, но он показывает полноэкранную рекламу.

Я хочу показать вид баннера, например обновление данных прокрутки, в моем приложении tvOS. Могу ли я добиться этого с помощью iAd или AdMob на tvOS?

я использую

ALSdk.shared()!.adService.loadNextAd(ALAdSize.sizeInterstitial(), andNotify: self)

для загрузки рекламы.

Затем, когда объявление доступно, я показываю его, используя:

ALInterstitialAd.shared().adDisplayDelegate = self
ALInterstitialAd.shared().adVideoPlaybackDelegate = self

if let ad = self.ad
{            
    ALInterstitialAd.shared().showOver(UIApplication.sharedApplication().keyWindow!, andRender: ad)
}

person Bhargavi    schedule 05.05.2016    source источник
comment
Вы должны предоставить код, чтобы помочь другим помочь вам   -  person TommyBs    schedule 05.05.2016


Ответы (2)


Как сказал Дэниел Сторм, рекламные баннеры не имеют смысла на телевидении. Но если вы настаиваете, вы можете создавать свои собственные баннеры нативно.

Например, в вашем контроллере представления:

@interface ALDemoNativeAdProgrammaticViewController ()<ALNativeAdLoadDelegate, ALNativeAdPrecacheDelegate, ALPostbackDelegate>
@property (nonatomic, strong) ALNativeAd *nativeAd;
@end

- (void)viewDidLoad
{
  [super viewDidLoad];
  [[ALSdk shared].nativeAdService loadNativeAdGroupOfCount: 1 andNotify: self];
}

#pragma mark - Native Ad Load Delegate

- (void)nativeAdService:(nonnull ALNativeAdService *)service didLoadAds:(nonnull NSArray *)ads
{
    // At this point, the native ad is loaded, but assets not retrieved yet.
    self.nativeAd = [ads firstObject];

    // You can use AppLovin's pre-caching to retrieve assets (app icon, ad image, ad video) locally. OR you can do it with your preferred caching framework.
    // iconURL, imageURL, videoURL needs to be retrieved manually before you can render them. For our example, we'll use AppLovin's caching framework.
    [[ALSdk shared].nativeAdService precacheResourcesForNativeAd: self.nativeAd andNotify: self];
}

- (void)nativeAdService:(nonnull ALNativeAdService *)service didFailToLoadAdsWithError:(NSInteger)code
{
  // Handle error
}

#pragma mark - Native Ad Precache Delegate

- (void)nativeAdService:(nonnull ALNativeAdService *)service didPrecacheImagesForAd:(nonnull ALNativeAd *)ad { }

- (void)nativeAdService:(nonnull ALNativeAdService *)service didPrecacheVideoForAd:(nonnull ALNativeAd *)ad
{
    // This delegate method will get called whether an ad actually has a video to precache or not
    //
    // FINALLY, perform whatever view logic you want with the assets provided in your ALNativeAd property, and show the ad.
}

- (void)nativeAdService:(nonnull ALNativeAdService *)service didFailToPrecacheImagesForAd:(nonnull ALNativeAd *)ad withError:(NSInteger)errorCode 
{
  // Handle error
}

- (void)nativeAdService:(nonnull ALNativeAdService *)service didFailToPrecacheVideoForAd:(nonnull ALNativeAd *)ad withError:(NSInteger)errorCode 
{
  // Handle error
}

Обратите внимание, что обратные вызовы AppLovin не гарантированно вызываются в основной очереди.

Вы также несете ответственность за отслеживание собственных впечатлений.

[[ALSdk shared].postbackService dispatchPostbackAsync: ad.impressionTrackingURL andNotify: self];

и запускать магазин приложений при нажатии

 [self.nativeAd launchClickTarget];
person Thomas Elliot    schedule 11.06.2016
comment
Спасибо @ThomasTang, я удалю комментарий к обзору. - person armatita; 11.06.2016

iAd не поддерживает tvOS и прекращено, AdMob также не поддерживает tvOS, и AppLovin поддерживает полноэкранные промежуточные объявления только на tvOS. Итак, на данный момент баннерная реклама невозможна на tvOS. Я бы не ожидал, что они станут доступны в ближайшее время, поскольку рекламные баннеры не будут иметь большого смысла на телевизоре.

person Daniel Storm    schedule 07.05.2016
comment
AppLovin прекратил поддержку tvOS в 2017 году. - person Mr. Zystem; 19.11.2019