メインコンテンツへスキップ

概要

Adrop iOS SDKを使用して、さまざまな広告フォーマットをアプリに表示できます。

サポートされている広告フォーマット

フォーマット説明
バナー画面の一部領域に表示される長方形広告
ネイティブアプリのUIに合わせてカスタマイズ可能な広告
インタースティシャル画面全体を覆うフルスクリーン広告
リワード視聴完了時に報酬を提供する動画広告
ポップアップ特定のタイミングでポップアップとして表示される広告
スプラッシュアプリ起動時にロゴと一緒に表示される広告

要件

  • iOS 13.0以上
  • Xcode 14.1以上
  • Swift 5.0以上

事前準備

1. adrop_service.json ファイルの追加

1

ファイルのダウンロード

Adropコンソール > Admin > App から adrop_service.json ファイルをダウンロードします。
2

プロジェクトに追加

ダウンロードしたファイルをXcodeプロジェクトのルートに追加します。
3

ターゲットの確認

ファイル追加時にすべてのターゲットが選択されていることを確認します。
adrop_service.json ファイルがないと、SDKが正常に動作しません。

2. ユニットIDの確認

コンソールのAd Unitタブで広告枠に対応するユニットIDを確認します。

インストール

Swift Package Manager (推奨)

  1. Xcodeで File > Add Package Dependencies… を選択
  2. パッケージURLを入力:
https://github.com/OpenRhapsody/adrop-ads-pod
  1. Add Package をクリック

CocoaPods

  1. Podfileがない場合は作成:
pod init
  1. Podfileに追加:
Podfile
pod 'adrop-ads'
  1. インストール:
pod install --repo-update
  1. .xcworkspace ファイルでプロジェクトを開く

初期化

AppDelegateapplication(_:didFinishLaunchingWithOptions:)でSDKを初期化します。
import AdropAds

@main
class AppDelegate: UIResponder, UIApplicationDelegate {
    func application(
        _ application: UIApplication,
        didFinishLaunchingWithOptions launchOptions: [UIApplication.LaunchOptionsKey: Any]?
    ) -> Bool {
        // SDKの初期化
        Adrop.initialize(production: false, targetCountries: [], useInAppBrowser: false)
        Adrop.setTheme(.auto)

        return true
    }
}

初期化パラメータ

パラメータデフォルト値説明
productionBoolfalseプロダクションモードの有無。本番環境ではtrueに設定
targetCountries[String][]ターゲット国コードリスト (ISO 3166 alpha-2)
useInAppBrowserBoolfalseインアプリブラウザの使用有無
本番環境では必ずproduction: trueに設定してください。falseのまま配信すると広告が表示されません。

ユーザー設定

UIDの設定

ターゲティング広告のためにユーザー識別子を設定します。
Adrop.setUID("user_123")
ターゲティング広告が正常に動作するには、広告枠に入る前にUIDを設定してください。

テーマの設定

ダークモードをサポートする広告のためにテーマを設定します。initialize()呼び出し後に設定する必要があります。
// ライトモード
Adrop.setTheme(.light)

// ダークモード
Adrop.setTheme(.dark)

// システム設定に従う (推奨)
Adrop.setTheme(.auto)
autoモードはシステムのダークモード設定を自動的に検出します。テーマが変更されると、スプラッシュ広告のキャッシュが自動的に初期化されます。

ディープリンクの処理

外部リンクを通じてアプリが起動された場合、ディープリンクを処理します。
func scene(_ scene: UIScene, openURLContexts URLContexts: Set<UIOpenURLContext>) {
    guard let url = URLContexts.first?.url else { return }
    Adrop.handleDeepLink(url: url)
}

テストユニットID

開発中はテストユニットIDを使用してください。本番環境への配信前に実際のユニットIDに置き換える必要があります。

バナー広告

フォーマットテストユニットID
バナー (320x50)PUBLIC_TEST_UNIT_ID_320_50
バナー (320x100)PUBLIC_TEST_UNIT_ID_320_100
カルーセルバナーPUBLIC_TEST_UNIT_ID_CAROUSEL
バナービデオ (16:9)PUBLIC_TEST_UNIT_ID_BANNER_VIDEO_16_9
バナービデオ (9:16)PUBLIC_TEST_UNIT_ID_BANNER_VIDEO_9_16

ネイティブ広告

フォーマットテストユニットID
ネイティブ (画像)PUBLIC_TEST_UNIT_ID_NATIVE
ネイティブビデオ (16:9)PUBLIC_TEST_UNIT_ID_NATIVE_VIDEO_16_9
ネイティブビデオ (9:16)PUBLIC_TEST_UNIT_ID_NATIVE_VIDEO_9_16

インタースティシャル/リワード広告

フォーマットテストユニットID
インタースティシャルPUBLIC_TEST_UNIT_ID_INTERSTITIAL
リワードPUBLIC_TEST_UNIT_ID_REWARDED

ポップアップ広告

フォーマットテストユニットID
ポップアップ (下部)PUBLIC_TEST_UNIT_ID_POPUP_BOTTOM
ポップアップ (中央)PUBLIC_TEST_UNIT_ID_POPUP_CENTER
ポップアップビデオ下部 (16:9)PUBLIC_TEST_UNIT_ID_POPUP_BOTTOM_VIDEO_16_9
ポップアップビデオ下部 (9:16)PUBLIC_TEST_UNIT_ID_POPUP_BOTTOM_VIDEO_9_16
ポップアップビデオ中央 (16:9)PUBLIC_TEST_UNIT_ID_POPUP_CENTER_VIDEO_16_9
ポップアップビデオ中央 (9:16)PUBLIC_TEST_UNIT_ID_POPUP_CENTER_VIDEO_9_16

スプラッシュ広告

フォーマットテストユニットID
スプラッシュPUBLIC_TEST_UNIT_ID_SPLASH

エラーコード

広告読み込み失敗時に返される主なエラーコードです。
エラーコード説明
ERROR_CODE_AD_NO_FILL表示可能な広告がありません
ERROR_CODE_NETWORKネットワーク接続失敗
ERROR_CODE_INVALID_UNIT無効なユニットID
ERROR_CODE_INITIALIZESDK初期化が必要
詳細なエラーコードはリファレンスを参照してください。

目次