# Unity Ads SDK API リファレンス

> Unity Ads SDK のパブリック API リファレンスにアクセスして、C# で使用可能なクラス、メソッド、プロパティを表示し、Unity プロジェクトの広告動作を統合しコントロールすることができます。

`Advertisements` 名前空間は、動画リワード広告、非リワード型動画広告、インタースティシャル広告、バナー広告などの基本的な広告コンテンツを実装するために使用します。

```cs
using UnityEngine.Advertisements;
```

この記事は以下の API ドキュメントを含んでいます。

**クラス**

* [`Advertisement`](#advertisement)
* [`Banner`](#banner)
* [`BannerLoadOptions`](#bannerloadoptions)
* [`BannerOptions`](#banneroptions)
* [`ShowOptions`](#showoptions)

**列挙型**

* [`ShowResult`](#showresult)
* [`UnityAdsInitializationError`](#unityadsinitializationerror)
* [`UnityAdsLoadError`](#unityadsloaderror)
* [`UnityAdsShowError`](#unityadsshowerror)
* [`UnityAdsShowCompletionState`](#unityadsshowcompletionstate)
* [`BannerPosition`](#bannerposition)

**インターフェース**

* [`IUnityAdsInitializationListener`](#iunityadsinitializationlistener)
* [`IUnityAdsLoadListener`](#iunityadsloadlistener)
* [`IUnityAdsShowListener`](#iunityadsshowlistener)

## クラス##classes

### Advertisement##advertisement

#### Initialize##initialize

```cs
public static void Initialize(string gameId, bool testMode, IUnityAdsInitializationListener initializationListener)
```

指定された [ゲーム ID](/grow/dashboard/get-started/project/settings.md#game-ids)、[テストモード](/grow/ads/optimization/test-ads-integration.md) の状態、広告ユニットのロード設定を使用して、広告サービスを初期化します。

| パラメーター                   | 説明                                                                                                                           |
| ------------------------ | ---------------------------------------------------------------------------------------------------------------------------- |
| `gameId`                 | プラットフォーム固有のプロジェクトの Unity ゲーム識別子。&#xA;開発者ダッシュボードから見つけることができます。                                                                |
| `testMode`               | テストモードを使用すると、実際の広告を表示することなく、インテグレーションをテストできます。用途&#xA;`true` を使用してテストモードで初期化します。                                              |
| `initializationListener` | 任意で SDK を&#xA;[`IUnityAdsInitializationListener`](#iunityadsinitializationlistener)&#xA;コールバック (バージョン 3.7.0 以降) を使用して有効にします。 |

#### Load##load

```cs
public static void Load (string adUnitId, IUnityAdsLoadListener loadListener)
```

指定された広告ユニットの広告コンテンツをロードします。

| **パラメーター**     | **説明**                                                                                                     |
| -------------- | ---------------------------------------------------------------------------------------------------------- |
| `adUnitId`     | 広告コンテンツと共にロードする広告ユニットの識別子。                                                                                 |
| `loadListener` | 任意で広告コンテンツを&#xA;[`IUnityAdsLoadListener`](#iunityadsloadlistener) コールバック (バージョン&#xA;3.7.0 以降) を使用してロードします。 |

#### IsReady##isready

> **Important:**
>
> SDK バージョン 4.0 で削除されました。詳細については、\[非推奨の API
> クラス

```cs
static bool IsReady (string adUnitId)
```

広告が指定した広告ユニットに表示する準備が整っている場合は、`true` を返します。SDK 初期化時に `enablePerPlacementLoad` を有効にした場合、[`Show`](#show) を呼び出す前に [`Load`](#load) を呼び出す必要があります。

| **パラメーター** | **説明**              |
| ---------- | ------------------- |
| `adUnitId` | クエリを実行する広告ユニットの識別子。 |

#### Show##show

```cs
public static void Show(string adUnitId, ShowOptions showOptions, IUnityAdsShowListener showListener)
```

指定した広告ユニットにロードされた広告コンテンツを表示します。

| **パラメーター**     | **説明**                                                                                                  |
| -------------- | ------------------------------------------------------------------------------------------------------- |
| `adUnitId`     | 表示する広告ユニットの識別子。                                                                                         |
| `showOptions`  | [`resultCallback`](#resultcallback) を含む、&#xA;広告動作の変更のためのオプションのコレクション。                                   |
| `showListener` | 任意で&#xA;[`IUnityAdsShowListener`](#iunityadsshowlistener) コールバック (バージョン&#xA;3.7.0 以降) を使用してコンテンツを表示します。 |

> **Note:**
>
> 広告ユニット ID を指定せずに `Show` を呼び出すと、そのメソッドにより、Unity Standard Placement 内にあるロード済みのコンテンツが表示されます。SDK バージョン 4.0 以降では、広告ユニット ID を指定する必要があります。

#### AddListener##addlistener

> **Important:**
>
> SDK バージョン 4.0 で削除されました。詳細については、\[非推奨の API
> クラス

```cs
public static void AddListener(IUnityAdsListener listener)
```

Unity Ads コールバックを受け取るリスナーを追加します。バージョン 3.1.0 以降では、複数のリスナーを登録できます。これは [メディエーション](/grow/ads/mediation/unity-ads-in-mediation.md) の顧客にとって特に便利です。

| **パラメーター** | **説明**                                        |
| ---------- | --------------------------------------------- |
| `listener` | Unity Ads コールバックの [リスナー](#iunityadslistener)。 |

#### RemoveListener##removelistener

> **Important:**
>
> SDK バージョン 4.0 で削除されました。詳細については、非推奨の API クラス を参照してください。

```cs
public static void RemoveListener(IUnityAdsListener listener)
```

アクティブな [`IUnityAdsListener`](#iunityadslistener) を削除します。

| **パラメーター** | **説明**                 |
| ---------- | ---------------------- |
| `listener` | Unity Ads コールバックのリスナー。 |

#### GetPlacementState##getplacementstate

> **Important:**
>
> SDK バージョン 4.0 で削除されました。詳細については、非推奨の API クラス を参照してください。

```cs
public static PlacementState GetPlacementState(string adUnitId)
```

指定された広告ユニットの [状態](#placementstate) を返します。

| **パラメーター** | **説明**             |
| ---------- | ------------------ |
| `adUnitId` | クエリを実行する広告ユニットの識別子 |

#### isInitialized##isinitialized

```cs
public static bool isInitialized
```

SDK が初期化された場合は `true`、それ以外の場合は `false` を返します。

#### isSupported##issupported

```cs
public static bool isSupported
```

SDK が現在のプラットフォームでサポートされる場合は `true`、それ以外の場合は `false` を返します。

#### debugMode##debugmode

```cs
public static bool debugMode
```

SDK がデバッグモードの場合は `true`、それ以外の場合は `false` を返します。デバッグモードで SDK からのログのレベルを制御します。

#### version##version

```cs
public static string version
```

現在の SDK のバージョンを返します。

#### isShowing##isshowing

```cs
public static bool isShowing
```

広告が現在表示されている場合は `true`、それ以外の場合は `false` を返します。

### Banner##banner

[バナー広告を実装](/grow/ads/unity-sdk/banner-ads.md) するには、このクラスを使用します。

#### ロード##banner-load

```cs
public static void Load(string adUnitId, BannerLoadOptions options)
```

指定されたバナー広告ユニットの広告コンテンツをロードします。SDK 初期化時に `enablePerPlacementLoad` を有効にした場合、[`Show`](#banner-show) を呼び出す前に `Load` を呼び出す必要があります。

| **パラメーター** | **説明**                                                           |
| ---------- | ---------------------------------------------------------------- |
| `adUnitId` | ロードするバナー広告ユニットの識別子。                                              |
| `options`  | SDK にバナーのロード時のイベントを通知する&#xA;[オプション](#bannerloadoptions) のコレクション。 |

#### 表示##banner-show

```cs
public static void Show(string adUnitId, BannerOptions options)
```

指定されたバナー広告ユニットの広告コンテンツを表示します。`Show` を呼び出す前に、[`Load`](#banner-load) を呼び出す必要があります。

| **パラメーター** | **説明**                                                   |
| ---------- | -------------------------------------------------------- |
| `adUnitId` | ロードするバナー広告ユニットの識別子。                                      |
| `options`  | バナーの表示時に SDK にイベントを通知する [オプション](#banneroptions) のコレクション。 |

#### 非表示##banner-hide

```cs
public static void Hide(bool destroy = false)
```

バナー広告を除去せずに非表示にすることができます。

#### SetPosition##setposition

```cs
public void SetPosition (BannerPosition bannerPosition)
```

デバイス上のバナー広告の位置を設定します。

| **パラメーター**       | **説明**                                   |
| ---------------- | ---------------------------------------- |
| `bannerPosition` | バナー広告のアンカーとして使用する [位置](#bannerposition)。 |

#### isLoaded##banner-is-loaded

```cs
public static bool isLoaded
```

バナー広告が表示用に現在ロードされている場合は `true`、それ以外の場合は `false` を返します。

### ShowOptions##showoptions

これらのオプションを実装して、広告ユニットでコンテンツを表示するときに SDK にイベントを通知します。`ShowOptions.resultCallback` を使用して、広告の終了時に [`ShowResult`](#showresult) 列挙型を Show に渡します。

#### resultCallback##resultcallback

```cs
public ShowResult resultCallback { get; set; }
```

このコールバックは広告の結果を受け取ります。

> **Important:**
>
> **非推奨**: 代わりに [`IUnityAdsListener`](#iunityadslistener) を実装し、`Advertisement.AddListener` を呼び出します。

#### gamerSid##gamersid

```cs
public string gamerSid { get; set; }
```

ゲーム内の特定のユーザーの識別子を指定します。

### BannerLoadOptions##bannerloadoptions

これらのオプションを実装して、バナー広告のロード時に SDK にイベントを通知します。

#### loadCallback##loadcallback

```cs
public LoadCallback loadCallback { get; set; }
```

このコールバックは、バナー広告ユニットが、表示する準備ができているコンテンツを正常にロードしたときに発生します。

#### errorCallback##errorcallback

```cs
public ErrorCallback errorCallback { get; set; }
```

このコールバックは、バナー広告ユニットがコンテンツのロードに失敗したときに発生します。

### BannerOptions##banneroptions

これらのオプションを実装して、バナー広告の表示時に SDK にイベントを通知します。

#### bannerCallback##bannercallback

```cs
public BannerCallback bannerCallback { get; set; }
```

このコールバックは、バナーがユーザーに表示されたときに発生します。

#### hideCallback##hidecallback

```cs
public BannerCallback hideCallback { get; set; }
```

このコールバックは、バナーがユーザーに対して非表示になったときに発生します。

#### clickCallback##clickcallback

```cs
public BannerCallback clickCallback { get; set; }
```

このコールバックは、ユーザーがバナーをクリックしたときに発生します。

## 列挙型##enums

### PlacementState##placementstate

> **Important:**
>
> SDK バージョン 4.0 で削除されました。詳細については、非推奨の API クラス を参照してください。

広告ユニットの状態を表す列挙型。

| **値**          | **説明**                    |
| -------------- | ------------------------- |
| `Ready`        | 広告ユニットは広告を表示できる状態になっています。 |
| `NotAvailable` | 広告ユニットを利用できません。           |
| `Disabled`     | 広告ユニットは無効になっています。         |
| `Waiting`      | 広告ユニットは準備中です。             |
| `NoFill`       | 広告ユニットに表示する広告がありません。      |

### ShowResult##showresult

ユーザーと広告とのインタラクションの状態を表す列挙型。広告が完了すると、SDK がこの値を [`OnUnityAdsDidFinish`](#onunityadsdidfinish) コールバックメソッドに渡します。

| **値**      | **説明**                                   |
| ---------- | ---------------------------------------- |
| `Failed`   | Unity サービスのエラーにより広告を最後まで表示できなかったことを示します。 |
| `Skipped`  | ユーザーが広告をスキップしたことを示します。                   |
| `Finished` | ユーザーが最後まで広告を見たことを示します。                   |

### UnityAdsInitializationError##unityadsinitializationerror

SDK の初期化に失敗した理由を表す列挙型です。

| **値**                 | **説明**                                                 |
| --------------------- | ------------------------------------------------------ |
| `UNKNOWN`             | 不明な理由でエラーが発生しました。                                      |
| `INTERNAL_ERROR`      | 環境または内部サービスが原因でエラーが発生しました。                             |
| `INVALID_ARGUMENT`    | [`Initialize`](#initialize) メソッド内の無効な引数が原因でエラーが発生しました。 |
| `AD_BLOCKER_DETECTED` | URL がブロックされたことが原因でエラーが発生しました。                          |

### UnityAdsLoadError##unityadsloaderror

広告ユニットのロードが失敗した理由を表す列挙型。

| **値**               | **説明**                                           |
| ------------------- | ------------------------------------------------ |
| `INITIALIZE_FAILED` | SDK が初期化されていないことによって広告のロードに失敗しました。               |
| `INTERNAL_ERROR`    | Unity Ads の内部サービスエラーによって広告のロードに失敗しました。           |
| `INVALID_ARGUMENT`  | [`Load`](#load) メソッド内の無効な引数により&#xA;広告の表示に失敗しました。 |
| `NO_FILL`           | ネットワークに利用可能なコンテンツがなかったため広告のロードに失敗しました。           |
| `TIMEOUT`           | 指定の時間内に広告をロードできませんでした。                           |
| `UNKNOWN`           | 不明な理由で広告のロードが失敗しました。                             |

### UnityAdsShowCompletionState##unityadsshowcompletionstate

広告が終了した原因を表す列挙型です。

| **値**       | **説明**                                                            |
| ----------- | ----------------------------------------------------------------- |
| `SKIPPED`   | ユーザーが広告をスキップしたことを示します。                                            |
| `COMPLETED` | 広告が最後まで再生されたことを示します。これは一般的にユーザーが広告全体を視聴したことで報酬を受け取ることができることを示します。 |
| `UNKNOWN`   | 広告が終了した原因は不明です。                                                   |

### UnityAdsShowError##unityadsshowerror

広告の表示が失敗した理由を表す列挙型。

| **値**                | **説明**                                           |
| -------------------- | ------------------------------------------------ |
| `NOT_INITIALIZED`    | SDK が初期化されていなかったため広告の表示に失敗しました。                  |
| `NOT_READY`          | 広告ユニットの準備ができていなかったため広告の表示に失敗しました。                |
| `VIDEO_PLAYER_ERROR` | メディアプレイヤーのエラーにより広告の表示に失敗しました。                    |
| `INVALID_ARGUMENT`   | [`Show`](#show) メソッド内の無効な引数により&#xA;広告の表示に失敗しました。 |
| `NO_CONNECTION`      | インターネット接続エラーにより広告の表示に失敗しました。                     |
| `ALREADY_SHOWING`    | 広告がすでに表示されていたため広告の表示に失敗しました。                     |
| `INTERNAL_ERROR`     | Unity Ads の内部サービスエラーによって広告の表示に失敗しました。            |
| `UNKNOWN`            | 不明な理由で広告の表示が失敗しました。                              |

### BannerPosition##bannerposition

デバイスのディスプレイ上のバナーを固定する位置を列挙したものです。

| **値**           | **説明**             |
| --------------- | ------------------ |
| `TOP_LEFT`      | バナーを画面の左上に固定します。   |
| `TOP_CENTER`    | バナーを画面の上部中央に固定します。 |
| `TOP_RIGHT`     | バナーを画面の右上に固定します。   |
| `BOTTOM_LEFT`   | バナーを画面の左下に固定します。   |
| `BOTTOM_CENTER` | バナーを画面の下部中央に固定します。 |
| `BOTTOM_RIGHT`  | バナーを画面の右下に固定します。   |
| `CENTER`        | バナーを画面の中央に固定します。   |

## インターフェース##interfaces

### IUnityAdsInitializationListener##iunityadsinitializationlistener

```cs
public interface IUnityAdsInitializationListener {
  void OnInitializationComplete();
  void OnInitializationFailed(UnityAdsInitializationError error, string message);
}
```

このインターフェースは、[`Initialize`](#initialize) の結果をハンドルするために実装します。

#### OnInitializationComplete##oninitializationcomplete

このコールバックメソッドは、SDK が問題なく初期化されたときのロジックをハンドルします。

#### OnInitializationFailed##oninitializationfailed

このコールバックメソッドは、SDK の初期化が失敗したときのロジックをハンドルします。

| **パラメーター** | **説明**                                                                       |
| ---------- | ---------------------------------------------------------------------------- |
| `error`    | 初期化の失敗の原因となった [`UnityAdsInitializationError`](#unityadsinitializationerror)。 |
| `message`  | エラーに関連するメッセージです。                                                             |

### IUnityAdsLoadListener##iunityadsloadlistener

```cs
public interface IUnityAdsLoadListener {
  void OnUnityAdsAdLoaded(string adUnitId);
  void OnUnityAdsFailedToLoad(string adUnitId, UnityAdsLoadError error, string message);
}
```

このインターフェースは、[`Load`](#load) の結果をハンドルするために実装します。

#### OnUnityAdsLoaded##onunityadsloaded

このコールバックメソッドは、広告ユニットが正常にロードされたときのロジックを処理します。

| **パラメーター** | **説明**                 |
| ---------- | ---------------------- |
| `adUnitId` | コンテンツをロードした広告ユニットの識別子。 |

#### OnUnityAdsFailedToLoad##onunityadsfailedtoload

このコールバックメソッドは、広告ユニットのロードが失敗したときのロジックを処理します。

| **パラメーター** | **説明**                                                       |
| ---------- | ------------------------------------------------------------ |
| `adUnitId` | ロードに失敗した広告ユニットの識別子。                                          |
| `error`    | ロード失敗の原因となった [`UnityAdsLoadError`](#unityadsloaderror)&#xA;。 |
| `message`  | エラーに関連するメッセージです。                                             |

### IUnityAdsShowListener##iunityadsshowlistener

```cs
public interface IUnityAdsShowListener {
  void OnUnityAdsShowFailure(string adUnitId, UnityAdsShowError error, string message);
  void OnUnityAdsShowStart(string adUnitId);
  void OnUnityAdsShowClick(string adUnitId);
  void OnUnityAdsShowComplete(string adUnitId, UnityAdsShowCompletionState showCompletionState);
}
```

このインターフェースは、[`Show`](#show) の結果をハンドルするために実装します。

#### OnUnityAdsShowFailure##onunityadsshowfailure

このコールバックメソッドは、広告ユニットの表示が失敗したときのロジックを処理します。

| **パラメーター** | **説明**                                                      |
| ---------- | ----------------------------------------------------------- |
| `adUnitId` | 表示に失敗した広告ユニットの識別子。                                          |
| `error`    | 表示失敗の原因となった [`UnityAdsShowError`](#unityadsshowerror)&#xA;。 |
| `message`  | エラーに関連するメッセージです。                                            |

#### OnUnityAdsShowStart##onunityadsshowstart

このコールバックメソッドは、広告再生開始時のロジックをハンドルします。

| **パラメーター** | **説明**                  |
| ---------- | ----------------------- |
| `adUnitId` | コンテンツを表示している広告ユニットの識別子。 |

#### OnUnityAdsShowClick##onunityadsshowclick

このコールバックメソッドは、ユーザーが広告をクリックしたときのロジックをハンドルします。

| **パラメーター** | **説明**                  |
| ---------- | ----------------------- |
| `adUnitId` | コンテンツを表示している広告ユニットの識別子。 |

#### OnUnityAdsShowComplete##onunityadsshowcomplete

このコールバックメソッドは、広告視聴終了時のロジックをハンドルします。

| **パラメーター**            | **説明**                                                               |
| --------------------- | -------------------------------------------------------------------- |
| `adUnitId`            | コンテンツを表示している広告ユニットの識別子。                                              |
| `showCompletionState` | 広告の最終的な [状態](#unityadsshowcompletionstate) (広告がスキップされたか完了したか) を示します。 |

### IUnityAdsListener##iunityadslistener

> **Important:**
>
> SDK バージョン 4.0 で削除されました。詳細については、非推奨の API クラス を参照してください。

```cs
public interface IUnityAdsListener{
  void OnUnityAdsReady(string adUnitId);
  void OnUnityAdsDidError(string message);
  void OnUnityAdsDidStart(string adUnitId);
  void OnUnityAdsDidFinish(string adUnitId, ShowResult showResult);
}
```

このインターフェースは、広告のさまざまな状態をハンドルするために実装します。[リワード広告](/grow/ads/unity-sdk/rewarded-ads.md) のロジックを定義するには、このリスナーをスクリプトに実装します。

#### OnUnityAdsReady##onunityadsready

> **Important:**
>
> SDK バージョン 4.0 で削除されました。詳細については、\[非推奨の API
> クラス

指定された広告ユニットを通じて表示する広告コンテンツの準備ができているときのロジックを指定します。

| **パラメーター** | **説明**              |
| ---------- | ------------------- |
| `adUnitId` | 準備ができている広告ユニットの識別子。 |

#### OnUnityAdsDidError##onunityadsdiderror

> **Important:**
>
> SDK バージョン 4.0 で削除されました。詳細については、非推奨の API クラス を参照してください。

エラーによって広告コンテンツの表示に失敗したときのロジックを指定します。

| **パラメーター** | **説明**           |
| ---------- | ---------------- |
| `message`  | エラーに関連するメッセージです。 |

#### OnUnityAdsDidStart##onunityadsdidstart

> **Important:**
>
> SDK バージョン 4.0 で削除されました。詳細については、非推奨の API クラス を参照してください。

プレイヤーが広告の表示をトリガーしたときのロジックを指定します。

| **パラメーター** | **説明**                     |
| ---------- | -------------------------- |
| `adUnitId` | コンテンツを表示する&#xA;広告ユニットの識別子。 |

#### OnUnityAdsDidFinish##onunityadsdidfinish

> **Important:**
>
> SDK バージョン 4.0 で削除されました。詳細については、非推奨の API クラス を参照してください。

プレイヤーが広告を最後まで見たときのロジックを指定します。

| **パラメーター**   | **説明**                                       |
| ------------ | -------------------------------------------- |
| `adUnitId`   | 表示が完了した広告ユニットの識別子。                           |
| `showResult` | 表示している広告の [結果として生成されたユーザーイベント](#showresult)。 |
