見出し画像

Unityで遊ぶ オーディオ広告を実装する

Unityで遊んでます。
オーディオ広告に興味が湧いたので、実装の手順とサンプルコードを調べた。

オーディオ広告の提供元

オーディオ広告の提供元としては、主に以下のような企業があります。

  1. AdColony

  2. AdMob

  3. AppLovin

  4. ironSource

  5. Unity Ads

これらの企業は、オーディオ広告の提供だけでなく、動画広告やバナー広告など、様々な種類の広告を提供しています。各企業の特徴やサービス内容については、公式ウェブサイトを確認してください。

オーディオ広告の実装手順とサンプルコード

Unityでオーディオ広告を実装する手順とサンプルコードを以下に示します。

  1. Unity Adsをインポートする Unity Adsを使うには、Unity AdsのSDKをインポートする必要があります。Unity AdsのSDKはUnity Asset Storeから無料でダウンロードできます。Unity Adsを使うには、ダウンロードしたSDKをプロジェクトにインポートして、Unity Adsを初期化する必要があります。

  2. オーディオ広告を作成する Unity Adsには、Unity Adsのダッシュボードからオーディオ広告を作成する必要があります。作成したオーディオ広告には、IDが割り当てられます。

  3. オーディオ広告を再生する オーディオ広告を再生するには、以下のようなコードを書く必要があります。

using UnityEngine;
using UnityEngine.Advertisements;

public class AudioAdManager : MonoBehaviour, IUnityAdsListener
{
    public string gameId = "your_game_id";
    public string audioAdPlacementId = "your_audio_ad_placement_id";
    public bool testMode = true;

    private void Start()
    {
        Advertisement.AddListener(this);
        Advertisement.Initialize(gameId, testMode);
    }

    public void PlayAudioAd()
    {
        if (Advertisement.IsReady(audioAdPlacementId))
        {
            Advertisement.Show(audioAdPlacementId);
        }
        else
        {
            Debug.Log("オーディオ広告が再生可能ではありません。");
        }
    }

    public void OnUnityAdsReady(string placementId)
    {
        if (placementId == audioAdPlacementId)
        {
            Debug.Log("オーディオ広告が準備完了しました。");
        }
    }

    public void OnUnityAdsDidError(string message)
    {
        Debug.Log("オーディオ広告の再生中にエラーが発生しました: " + message);
    }

    public void OnUnityAdsDidStart(string placementId)
    {
        Debug.Log("オーディオ広告の再生を開始しました。");
    }

    public void OnUnityAdsDidFinish(string placementId, ShowResult showResult)
    {
        Debug.Log("オーディオ広告の再生が終了しました。結果は " + showResult.ToString() + " でした。");
    }
}

上記のコードでは、Unity Adsを初期化し、オーディオ広告が再生可能かどうかを確認し、再生することができます。また、オーディオ広告の再生には、UnityAdsListenerを実装する必要があります。

4.オーディオ広告の結果を受け取る

オーディオ広告の再生が終了すると、OnUnityAdsDidFinish()関数が呼び出され、その結果を受け取ることができます。例えば、広告が正常に再生された場合、showResultはShowResult.Finishedになります。以下はOnUnityAdsDidFinish()関数のサンプルコードです。

public void OnUnityAdsDidFinish(string placementId, ShowResult showResult)
{
    if (showResult == ShowResult.Finished)
    {
        Debug.Log("オーディオ広告が正常に再生されました。");
        // 広告再生後の処理をここに記述する
    }
    else if (showResult == ShowResult.Skipped)
    {
        Debug.Log("オーディオ広告がスキップされました。");
        // 広告再生後の処理をここに記述する
    }
    else if (showResult == ShowResult.Failed)
    {
        Debug.Log("オーディオ広告の再生に失敗しました。");
        // 広告再生後の処理をここに記述する
    }
}

上記の例では、showResultの値に応じて、それぞれの状態に応じた処理を実行するようになっています。たとえば、広告が正常に再生された場合は、「オーディオ広告が正常に再生されました。」というメッセージを表示し、広告再生後の処理を実行します。

なるほど。

最後まで、読んで頂き、感謝です(ぺこり)


この記事が気に入ったらサポートをしてみませんか?