LoginSignup
1
1

More than 5 years have passed since last update.

UnityADSで他のUDNアカウントのIDで広告表示をする方法

Posted at

UnityADSで他のUDNアカウントのIDで広告表示をする方法

エディターのServiceウインドウからADSを使用する際にアカウントにログインが求められます。
ですが、まれにこのアカウントとは別のアカウントで管理されているADSのIDを使用したい場合があります。
Unity5.3.5の頃は、エディターのServicesでGameIDを指定することが出来ました。

UnityADSのアカウントがUDNアカウントに統一された影響でしょうか。Unity5.6.3ではServiceウインドウではIDの設定がありません。

Start関数などの中でInitializeを実行し、IDを指定できるのですが
ServiceウインドウでログインしたUDNアカウントが有効になり、そのUDNアカウントにてADSのインプレッションが計測されてしまいました。

void Start()
  if (Advertisement.isSupported) {
  Advertisement.Initialize("ここにIDを指定");
}

エディタ上で指定したアカウントと別のアカウントのIDを使用する方法

ゲームスタート時のオートイニシャライズを無効化したい

github上のインテグレーションガイドに記載がありました。エディタースクリプトを使用して無効化する必要があります。

using UnityEditor;
using UnityEditor.Callbacks;
using UnityEditor.Advertisements;

public class UnityAdsBuildProcessor : Editor
{
  [PostProcessScene]
  public static void OnPostprocessScene ()
  {
    AdvertisementSettings.enabled = true;
    AdvertisementSettings.initializeOnStartup = false;
  }
}

ポイントは「initializeOnStartup =false」です。これにより、エディタ上で指定したアカウントでのオートイニシャライズが無効になります。手動でIDを指定する必要がありますので、どこかのStartやAwakeなどで「Advertisement.Initialize("ここにIDを指定")」を行えば今度こそそのIDが有効になります。

上記のスクリプトと組み合わせて下記の手動イニシャライズを使用することでIDが有効になります。

void Start()
  if (Advertisement.isSupported) {
  Advertisement.Initialize("ここにIDを指定");
}
1
1
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
1
1