Versions Compared

Key

  • This line was added.
  • This line was removed.
  • Formatting was changed.

BuzzAd-Benefit SDK: Type A - Native Ads

...

コンポーネント

説明

サイズ

詳細

必須/任意

Media view

画像・動画等の広告素材

1200x627 px

  • アスペクト比の維持を推奨

  • 画像の周囲にパディング(余白)の追加が可能

必須

Title view

広告のタイトル

最大 25字

日本語の場合は最大10字

省略符号(…)で一定数以上の文字を省略可能

必須

Description view

広告の詳細説明

最大 100字

日本語の場合は最大30字

省略符号(…)で一定数以上の文字を省略可能

必須

CTA view

  • Reward text view: 広告参加時に報酬として付与されるポイント数

  • CTA text view: ユーザーに広告参加を誘導する文言

最大 15字

日本語の場合は4〜7字


省略符号(…)で一定数以上の文字を省略可能

必須

Icon image view

広告主のアイコン

80x80 px

アスペクト比の維持を推奨(正方形)

任意

Sponsored image/text view

広告であることを明示するテキストまたは画像

広告, ad, スポンサード, Sponsored 等の文言を表示

任意

...

Code Block
languageswift
// Swift
func renderAd(ad: BABAd) {
  // 1)
  self.titleLabel.text = ad.creative.title

  // description フィールドがobjc オブジェクトに基本としてあるのでbodyとしてコンバートして使用
  self.descriptionLabel.text = ad.creative.body

  self.iconImageView.sd_setImage(with: URL(string: ad.creative.iconUrl))
  self.ctaLabel.text = "+\(ad.reward) \(ad.creative.callToAction)"
  self.rewardIcon.image = UIImage(named: "point_icon")

  // 2)
  self.adView.ad = ad
  self.adView.mediaView = self.mediaView

  // 3)
  self.adView.clickableViews = [self.ctaButton, self.iconImageView]
}

Step 4: BABNativeAdViewDelegateBABNativeAdViewVideoDelegateを通じた広告イベントの処理

BABAdViewに delegateを設定して広告についてのイベントを受け取ることができます(イベントの定義及び動作はこちらを参照).

BABAdViewに delegateとvideoDelegateを設定して広告についてのイベントを受け取ることができます。 (広告のステータス別コールバックについてのカスタマイズを行う場合、コールバックの定義及び動作については BuzzAd Benefit API 変更事項(AOS 1.5.0, iOS 1.2.0) を参照してください。)

Code Block
languageobjective-c
// Objective-C
@interface SampleViewController: UIViewController <BABNativeAdViewDelegate>
@end

@implementation SampleViewController

- (void)viewDidLoad {
  adView.deleagte = self;
  adView.videoDelegate = self;
}

#pragma mark - BABNativeAdViewDelegate

// 広告インプレッションが発生したときに呼び出されます。広告が露出されたときに呼び出されます。
- (void)BABNativeAdView:(BABNativeAdView *)adView didImpressAd:(BABAd *)ad {
}

// 広告がクリックされたときに呼び出されます。
- (void)BABNativeAdView:(BABNativeAdView *)adView didClickAd:(BABAd *)ad {
}

// リワードリクエストが開始されたときに呼び出されます。
- (void)BABNativeAdView:(BABNativeAdView *)adView willRequestRewardForAd:(BABAd *)ad {
}

// リワードリクエストが完了したときに呼び出されます。結果はリワードリクエストが完了したときに呼び出されます。結果は戻り値 `result``result`に含まれています。
パラメータに含まれています。
- (void)BABNativeAdView:(BABNativeAdView *)adView didRewardForAd:(BABAd *)ad withResult:(BABRewardResult)result {
}

// 広告参加が完了した時に呼び出されます。 広告に参加完了した時に呼び出されます。ここでUIを参加完了に変更します。ここでUIを参加完了に変更します。
- (void)BABNativeAdView:(BABNativeAdView *)adView didParticipateAd:(BABAd *)ad {
  [self.rewardIcon setImage:[UIImage imageNamed:@"participated_icon"]];
}

#pragma mark - BABNativeAdViewVideoDelegate
@end

- (void)BABNativeAdViewWillStartPlayingVideo:(BABNativeAdView *)adView {
}

- (void)BABNativeAdViewDidResumeVideo:(BABNativeAdView *)adView {
}

- (void)BABNativeAdViewWillReplayVideo:(BABNativeAdView *)adView {
}

- (void)BABNativeAdViewDidPauseVideo:(BABNativeAdView *)adView {
}

- (void)BABNativeAdView:(BABNativeAdView *)adView didFinishPlayingVideoAd:(BABAd *)ad {
}

@end

Code Block
languageswift
// Swift
class SampleViewController: UIViewController, BABNativeAdViewDelegate {
  override func viewDidLoad {
    adView.deleagte = self
    adView.videoDelegate = self
  }

  // 

...

広告が露出されたときに呼び出されます。
  func babNativeAdView(_ adView: BABNativeAdView, didImpress ad: BABAd) { }

  // 広告がクリックされたときに呼び出されます。
  func babNativeAdView(_ adView: BABNativeAdView, didClick ad: BABAd) { }

  // リワードリクエストが開始されたときに呼び出されます。
  func babNativeAdView(_ adView: BABNativeAdView, willRequestRewardFor ad: BABAd) {
  }

  // 

...

リワードリクエストが完了したときに呼び出されます。結果は戻り値 

...

`result`に含まれています。

...

  

...

func babNativeAdView(_ adView: BABNativeAdView, didRewardFor ad: BABAd, with result: BABRewardResult) {
  }

  // 

...

広告参加が完了した時に呼び出されます。 ここでUIを参加完了に変更します。
  func babNativeAdView(_ adView: BABNativeAdView, didParticipateAd ad: BABAd) {
    self.rewardIcon.image = UIImage(named: "participated_icon")
  }
  
   func babNativeAdViewWillStartPlayingVideo(_ adView: BABNativeAdView) {
  }

  func babNativeAdViewDidResumeVideo(_ adView: BABNativeAdView) {
  }

  func babNativeAdViewWillReplayVideo(_ adView: BABNativeAdView) {
  }

  func babNativeAdViewDidPauseVideo(_ adView: BABNativeAdView) {
  }

  func babNativeAdView(_ adView: BABNativeAdView, didFinishPlayingVideoAd ad: BABAd) {
  }
}

...

応用設定 Advanced Usage

複数件のネイティブ広告読み込み

...