Unity Ads iOS SDK API リファレンス
Unity Ads SDK のパブリック API リファレンスにアクセスして、Objective-C または Swift で使用可能なクラス、メソッド、プロパティを表示し、iOS アプリの広告動作を統合およびコントロールできます。
読み終わるまでの所要時間 7 分最終更新 15日前
ライブラリを使用して、動画リワード広告、非リワード型動画広告、インタースティシャル広告、バナー広告などの基本的な広告コンテンツを実装します。
この記事は以下の API ドキュメントを含んでいます。
クラス
列挙型
デリゲート
クラス
UnityAds
#import <UnityAds/UnityAds.h>
この名前空間は、動画リワード広告、非リワード型動画広告、インタースティシャル広告、バナー広告などの基本的な広告コンテンツを実装するために使用します。
initialize
+ (void) initialize: (NSString *)gameId testMode: (BOOL)testMode initializationDelegate: (nullable id<UnityAdsInitializationDelegate>)initializationDelegate;}
指定されたゲーム ID、テストモード のステータス、初期化デリゲートを使用して、広告サービスを初期化します。
load
+ (void)load: (NSString *)placementId オプション: (UADSLoadOptions *)options loadDelegate: (nullable id<UnityAdsLoadDelegate>)loadDelegate { [UADSLoadModule.sharedInstance loadForPlacementID: placementId options: options loadDelegate: loadDelegate];}
指定された広告ユニットの広告コンテンツをロードします。 を呼び出す前に、 を呼び出す必要があります。
パラメーター | 説明 |
|---|
| 広告コンテンツと共にロードする広告ユニットの識別子。 |
| 広告のロード動作を変更するための オプション のコレクション。 |
| 任意で コールバックを使用して広告コンテンツをロードします (バージョン 3.7.0 以降)。 |
isReady
+ (BOOL)isReady: (NSString *)adUnitId { return [UnityServices isSupported] && [UnityServices isInitialized] && [UADSPlacement isReady: adUnitId];}
広告が指定した広告ユニットに表示する準備が整っている場合は、 を返します。SDK 初期化時に を有効にした場合、 を呼び出す前に を呼び出す必要があります。
パラメーター | 説明 |
|---|
| クエリを実行する広告 dnit の識別子。 |
注
広告ユニット ID を指定せずに を呼び出すと、そのメソッドにより Unity Standard Placement の結果が返されます。
show
+ (void)show: (UIViewController *)viewController placementId: (NSString *)placementId showDelegate: (nullable id<UnityAdsShowDelegate>)showDelegate { [self show: viewController adUnitId: placementId options: [UADSShowOptions new] showDelegate: showDelegate];}
指定した広告ユニットにロードされた広告コンテンツを表示します。
パラメーター | 説明 |
|---|
| 表示する広告ユニットの識別子。 |
| 広告の表示動作を変更するためのオプションのコレクション。 |
| 任意で コールバックを使用してコンテンツを表示します (バージョン 3.7.0 以降)。 |
注
広告ユニット ID を指定せずに を呼び出すと、そのメソッドにより、Unity Standard Placement 内にあるロード済みのコンテンツが表示されます。SDK バージョン 4.0 以降では、広告ユニット ID を指定してこのメソッドを呼び出す必要があります。
addDelegate
+ (void)addDelegate: (__nullable id<UnityAdsDelegate>)delegate { [UADSProperties addDelegate: delegate];}
Unity Ads のコールバックを受け取るリスナーデリゲートを追加します。バージョン 3.1.0 以降では、複数のリスナーを登録できます。これは メディエーション の顧客にとって特に便利です。
パラメーター | 説明 |
|---|
| Unity Ads コールバックの リスナー 。 |
removeDelegate
+ (void)removeDelegate: (id<UnityAdsDelegate>)delegate { [UADSProperties removeDelegate: delegate];}
アクティブな リスナーを削除します。
パラメーター | 説明 |
|---|
| Unity Ads コールバックの リスナー 。 |
setDebugMode
+ (BOOL)getDebugMode { return [UnityServices getDebugMode];}
SDK からのログ出力数を制御します。より堅実にログを残すには、 に設定します。
getDebugMode
+ (void)getDebugMode: (BOOL)enableDebugMode { [UnityServices setDebugMode: enableDebugMode];}
SDK がデバッグモードの場合は 、それ以外の場合は を返します。
getVersion
+ (NSString *)getVersion { return [UnityServices getVersion];}
Unity Ads SDK の現在のバージョンを返します。
isInitialized
+ (BOOL)isInitialized { return [USRVSdkProperties isInitialized];}
SDK が正常に初期化された場合は 、それ以外の場合は を返します。
UADSLoadOptions
#import <UnityAds/UADSBaseOptions.h>@interface UADSLoadOptions : UADSBaseOptions@property (nonatomic, readwrite) NSString *adMarkup;@end
このクラスには、 メソッドに追加する任意のメタデータが含まれています。サードパーティのメディエーションのヘッダー入札を使用しているお客様は、Unity ネットワークからの入札者が広告オークションで落札した場合にこれを使用する必要があります。
setAdMarkup
- (void)setAdMarkup: (NSString *)adMarkup
このメソッドは、入札者サービスから返される広告マークアップを取得します。Unity の広告ネットワークからの入札者がヘッダー入札オークションで落札すると、Unity Ads SDK はメディエーションエクスチェンジから広告マークアップを受け取ります。広告マークアップ文字列には、Unity が広告をロードおよび表示するために必要な情報が含まれています。
UADSBannerView
@interface UADSBannerView : UIView
バナー広告を実装 するには、このクラスを使用します。Unity Ads バージョン 3.3 以降は、1 つの広告ユニットを介した複数のバナーインスタンスをサポートしています。
initWithPlacementId
-(instancetype)initWithPlacementId:(NSString *)placementId size:(CGSize)size;
広告ユニット ID とバナーサイズを使用してバナービューを実装します。 を呼び出してオブジェクトを初期化してから、 を呼び出して広告コンテンツをロードします。バナーオブジェクトが リスナーを介してライフサイクルイベントにアクセスすることに注意してください。
パラメーター | 説明 |
|---|
| バナーの広告ユニット ID。 |
| バナーオブジェクトの 。最小サポートサイズは 320 ピクセル × 50 ピクセルです。 |
注
を使用してバナー広告を呼び出すと、コンテンツロードが 1 回試行され、再読み込みは行われません。バナーがフィルを返さない場合は、バナーを除去し、新しいバナーを作成して再試行してください。Unity では、メディエーション のお客様にこのメソッドを推奨しています。
ロード
バナーに広告をリクエストするための基本メソッドです。
列挙型
UnityAdsPlacementState
typedef NS_ENUM(NSInteger, UnityAdsPlacementState)
広告ユニットの状態を表す列挙型。
値 | 説明 |
|---|
kUnityAdsPlacementStateReady
| 広告ユニットは広告を表示できる状態になっています。 |
kUnityAdsPlacementStateNotAvailable
| 広告ユニットは利用できません。 |
kUnityAdsPlacementStateDisabled
| 広告ユニットが無効になりました。 |
kUnityAdsPlacementStateWaiting
| 広告ユニットは準備中です。 |
kUnityAdsPlacementStateNoFill
| 広告ユニットに表示する広告がありません。 |
UnityAdsFinishState
typedef NS_ENUM(NSInteger, UnityAdsFinishState)
ユーザーと広告とのインタラクションの状態を表す列挙型。広告が完了すると、SDK がこの値を コールバックメソッドに渡します。
値 | 説明 |
|---|
kUnityAdsFinishStateError
| Unity のエラーにより広告を最後まで表示できなかったことを示します。 |
kUnityAdsFinishStateSkipped
| ユーザーが広告をスキップしたことを示します。 |
kUnityAdsFinishStateCompleted
| 広告の再生が完了したことを示します。 |
UnityAdsInitializationError
typedef NS_ENUM (NSInteger, UnityAdsInitializationError)
SDK の初期化に失敗した理由を表す列挙型です。
値 | 説明 |
|---|
kUnityInitializationErrorInternalError
| 環境または内部サービスが原因でエラーが発生しました。 |
kUnityInitializationErrorInvalidArgument
| Initialize メソッド内の無効な引数が原因でエラーが発生しました。 |
kUnityInitializationErrorAdBlockerDetected
| URL がブロックされたことが原因でエラーが発生しました。 |
UnityAdsLoadError
typedef NS_ENUM (NSInteger, UnityAdsLoadError)
広告ユニットのロードが失敗した理由を表す列挙型。
値 | 説明 |
|---|
kUnityAdsLoadErrorInitializeFailed
| SDK が初期化されていないことによって広告のロードに失敗しました。 |
kUnityAdsLoadErrorInternal
| Unity Ads の内部サービスエラーによって広告のロードに失敗しました。 |
kUnityAdsLoadErrorInvalidArgument
| メソッド内の無効な引数により広告のロードに失敗しました。 |
| ネットワークに利用可能なコンテンツがなかったため広告のロードに失敗しました。 |
kUnityAdsLoadErrorTimeout
| 指定の時間内に広告をロードできませんでした。 |
UnityAdsShowCompletionState
typedef NS_ENUM (NSInteger, UnityAdsShowCompletionState)
広告が終了した原因を表す列挙型です。
値 | 説明 |
|---|
kUnityShowCompletionStateSkipped
| ユーザーが広告をスキップしたことを示します。 |
kUnityShowCompletionStateCompleted
| 広告が最後まで再生されたことを示します。これは一般的にユーザーが広告全体を視聴したことで報酬を受け取ることができることを示します。 |
UnityAdsShowError
typedef NS_ENUM (NSInteger, UnityAdsShowError)
広告ユニットの表示に失敗した理由を表す列挙型。
値 | 説明 |
|---|
kUnityShowErrorNotInitialized
| SDK が初期化されていなかったため広告の表示に失敗しました。 |
| 広告ユニットの準備ができていなかったため広告の表示に失敗しました。 |
kUnityShowErrorVideoPlayerError
| メディアプレイヤーのエラーにより広告の表示に失敗しました。 |
kUnityShowErrorInvalidArgument
| メソッド内の無効な引数により広告の表示に失敗しました。 |
kUnityShowErrorNoConnection
| インターネット接続エラーにより広告の表示に失敗しました。 |
kUnityShowErrorAlreadyShowing
| 広告がすでに表示されていたため広告の表示に失敗しました。 |
kUnityShowErrorInternalError
| Unity Ads の内部サービスエラーによって広告の表示に失敗しました。 |
UnityAdsError
typedef NS_ENUM (NSInteger, UnityAdsError)
コールバックを通じて発生した Unity Ads のエラーの原因を表す列挙型。
値 | 説明 |
|---|
kUnityAdsErrorNotInitialized = 0
| Unity Ads サービスは現在初期化されません。 |
kUnityAdsErrorInitializedFailed
| 初期化プロセスでエラーが発生しました。 |
kUnityAdsErrorInvalidArgument
| 無効なパラメーターにより、Unity Ads の初期化が失敗しました。 |
kUnityAdsErrorVideoPlayerError
| ビデオプレイヤーの障害によってエラーが発生しました。 |
kUnityAdsErrorInitSanityCheckFail
| 無効な環境により Unity Ads サービスの初期化が失敗しました。 |
kUnityAdsErrorAdBlockerDetected
| 広告ブロッカーによりエラーが発生しました。 |
kUnityAdsErrorFileIoError
| ファイルの読み取りまたは書き込みができないためにエラーが発生しました。 |
kUnityAdsErrorDeviceIdError
| 不正なデバイス識別子のためにエラーが発生しました。 |
| 広告を表示しようとした際にエラーが発生しました。 |
kUnityAdsErrorInternalError
| Unity Ads サービス内部でエラーが発生しました。 |
UnityAdsBannerPosition
バナー広告のアンカーとして設定可能な位置を表す列挙型。
値 | 説明 |
|---|
kUnityAdsBannerPositionTopLeft
| バナーを画面の左上に固定します。 |
kUnityAdsBannerPositionTopCenter
| バナーを画面の上部中央に固定します。 |
kUnityAdsBannerPositionTopRight
| バナーを画面の右上に固定します。 |
kUnityAdsBannerPositionBottomLeft
| バナーを画面の左下に固定します。 |
kUnityAdsBannerPositionBottomCenter
| バナーを画面の下部中央に固定します。 |
kUnityAdsBannerPositionBottomRight
| バナーを画面の右下に固定します。 |
kUnityAdsBannerPositionCenter
| バナーを画面の中央に固定します。 |
kUnityAdsBannerPositionNone
| バナーを固定しません。 |
デリゲート
UnityAdsInitializationDelegate
@protocol UnityAdsInitializationDelegate <NSObject>- (void)initializationComplete;- (void)initializationFailed: (UnityAdsInitializationError)error withMessage: (NSString *)message;@end
このデリゲートは の結果をハンドルするために実装します。
initializationComplete
このコールバックメソッドは、SDK が問題なく初期化されたときのロジックをハンドルします。
initializationFailed
このコールバックメソッドは、SDK の初期化が失敗したときのロジックをハンドルします。
UnityAdsLoadDelegate
@protocol UnityAdsLoadDelegate <NSObject>- (void)unityAdsAdLoaded: (NSString *)placementId;- (void)unityAdsAdFailedToLoad: (NSString *)placementId withError: (UnityAdsLoadError)error withMessage: (NSString *)message;@end
このデリゲートは の結果をハンドルするために実装します。
unityAdsAdLoaded
このコールバックメソッドは、広告ユニットが正常にロードされたときのロジックを処理します。
パラメーター | 説明 |
|---|
| コンテンツをロードした広告ユニットの識別子。 |
unityAdsAdFailedToLoad
このコールバックメソッドは、広告ユニットのロードが失敗したときのロジックを処理します。
UnityAdsShowDelegate
@protocol UnityAdsShowDelegate <NSObject>- (void)unityAdsShowComplete: (NSString *)adUnitId withFinishState: (UnityAdsShowCompletionState)state;- (void)unityAdsShowFailed: (NSString *)adUnitId withError: (UnityAdsShowError)error withMessage: (NSString *)message;- (void)unityAdsShowStart: (NSString *)adUnitId;- (void)unityAdsShowClick: (NSString *)adUnitId;@end
このデリゲートは の結果をハンドルするために実装します。
unityAdsShowComplete
このコールバックメソッドは、広告視聴終了時のロジックをハンドルします。
パラメーター | 説明 |
|---|
| コンテンツを表示している広告ユニットの識別子。 |
| 広告がスキップされたか、完全視聴したかを示します。 |
unityAdsShowStart
このコールバックメソッドは、広告再生開始時のロジックをハンドルします。
パラメーター | 説明 |
|---|
| コンテンツを表示している広告ユニットの識別子。 |
unityAdsShowClick
このコールバックメソッドは、ユーザーが広告をクリックしたときのロジックをハンドルします。
パラメーター | 説明 |
|---|
| コンテンツを表示している広告ユニットの識別子。 |
unityAdsShowFailed
このコールバックメソッドは、広告ユニットのコンテンツの表示が失敗したときのロジックを処理します。
パラメーター | 説明 |
|---|
| コンテンツの表示に失敗した広告ユニットの識別子。 |
| 表示失敗の原因となった 。 |
| message | エラーに関連するメッセージです。 |
UnityAdsDelegate
@protocol UnityAdsDelegate <NSObject>- (void)unityAdsReady: (NSString *)placementId;- (void)unityAdsDidError: (UnityAdsError)error withMessage: (NSString *)message;- (void)unityAdsDidStart: (NSString *)placementId;- (void)unityAdsDidFinish: (NSString *)placementId withFinishState: (UnityAdsFinishState)state;@end
このデリゲートは広告のさまざまな状態をハンドルするために実装します。リワード広告 のロジックを定義するには、これをスクリプトに実装します。
unityAdsReady
指定された広告ユニットを通じて表示する広告コンテンツの準備ができているときのロジックを指定します。
パラメーター | 説明 |
|---|
| 準備ができている広告ユニットの識別子。 |
unityAdsDidError
エラーによって広告コンテンツの表示に失敗したときのロジックを指定します。
パラメーター | 説明 |
|---|
| エラーの原因となった 。 |
| エラーに関連するメッセージです。 |
unityAdsDidStart
プレイヤーが広告の表示をトリガーしたときのロジックを指定します。
パラメーター | 説明 |
|---|
| 広告を表示している広告ユニットの識別子。 |
unityAdsDidFinish
プレイヤーが広告を最後まで見たときのロジックを指定します。
UADSBannerDelegate
@protocol UADSBannerViewDelegate <NSObject> @optional- (void)bannerViewDidLoad: (UADSBannerView *)bannerView;- (void)bannerViewDidClick: (UADSBannerView *)bannerView;- (void)bannerViewDidLeaveApplication: (UADSBannerView *)bannerView;- (void)bannerViewDidError: (UADSBannerView *)bannerView error: (UADSBannerError *)error;@end
このデリゲートは Unity Ads のバナーイベントからのコールバックを提供します。
bannerViewDidLoad
このコールバックは、バナーが広告コンテンツを正常にロードしたときに発生します。
bannerViewDidClick
このコールバックは、ユーザーがバナー広告をクリックしたときに発生します。
bannerViewDidLeaveApplication
このコールバックは、ユーザーがアプリを終了したことでバナーが閉じられたときに発生します。
bannerViewDidError
このコールバックは、UnityAdsBanner でエラーが発生したときに発生します。
UADSBannerAdRefreshViewDelegate
注
このデリゲートは廃止予定であり、Unity Ads SDK の今後のメジャーバージョンリリースで削除されます。
@protocol UADSBannerAdRefreshViewDelegate <NSObject> @optional- (void)unityAdsRefreshBannerDidLoad: (UADSBannerAdRefreshView *)bannerAdRefreshView;- (void)unityAdsRefreshBannerDidNoFill: (UADSBannerAdRefreshView *)bannerAdRefreshView;- (void)unityAdsRefreshBannerDidShow: (UADSBannerAdRefreshView *)bannerAdRefreshView;- (void)unityAdsRefreshBannerDidHide: (UADSBannerAdRefreshView *)bannerAdRefreshView;- (void)unityAdsRefreshBannerDidClick: (UADSBannerAdRefreshView *)bannerAdRefreshView;- (void)unityAdsRefreshBannerDidError: (UADSBannerAdRefreshView *)bannerAdRefreshView message: (NSString *)message;@end
このデリゲートは Unity Ads のバナーの再読み込みイベントからのコールバックを提供します。
unityAdsRefreshBannerDidLoad
バナーがロードされ、ビュー階層に配置される準備が整ったときに呼び出されます。
unityAdsRefreshBannerDidNoFill
バナーに広告コンテンツがないときに呼び出されます。
unityAdsRefreshBannerDidShow
バナーがユーザーに表示されているときに呼び出されます。
unityAdsRefreshBannerDidHide
バナーがユーザーに表示されていないときに呼び出されます。
unityAdsRefreshBannerDidClick
ユーザーがバナー広告をクリックしたときに呼び出されます。
unityAdsRefreshBannerDidError
でエラーが発生したときに呼び出されます。