(:3[kanのメモ帳]

個人ゲーム開発者kan.kikuchiのメモ的技術ブログ。月木更新でUnity関連がメイン。

(:3[kanのメモ帳]


本ブログの運営者kan.kikuchiが個人で開発したゲームです!超可愛い実写猫の戦略的オンラインカードゲーム!PC&スマホ両対応!

Download on the App Store Google Play で手に入れよう

UnityAdsの直接表示とAdMobのメディエーションでの表示の併用方法【Unity】【広告】【AdMob】【Unity Ads】【Android】


このエントリーをはてなブックマークに追加


この記事でのバージョン
Unity 2021.3.1f1
GoogleMobileAds-v7.1.0
UnityAdsUnityAdapter-3.2.1


はじめに

UnityAdsはAdMobのメディエーションで表示する事が出来ますが、



直接UnityAdsを表示する時に必要なAdvertisementを入れていると


Androidでは以下のような感じのエラーが出てビルドが通りません。

FAILURE: Build failed with an exception.
* What went wrong:
Execution failed for task ':launcher:checkDebugDuplicateClasses'.
> 1 exception was raised by workers:
  Duplicate class com.unity3d.scar.adapter.v1950.R$string found in modules UnityAds-runtime.ja<message truncated>


メディエーションのみで表示する場合はAdvertisementをRemoveすればいいだけですが、

例えば「AdMobの調子が悪くなった時はUnityAdsを直接表示したい」

みたいな感じで併用して使いたい場合もあると思います。今回はそんな時に役立つ記事です。


UnityMediationDependencies

エラー文の通り、エラーの原因は同じクラスがある事です。

なので、メディエーション側のクラスを無くすために以下のファイルを編集します。

Assets/GoogleMobileAds/Editor/UnityMediationDependencies.xml


編集場所は中央のコメントがある所で、

<!-- If using the Unity Ads Service from Unity3D, comment out this dependency to avoid
including the Unity Android SDK twice. -->

Unity3D から Unity Ads Service を使用する場合、この依存関係をコメントアウトして、Unity Android SDK が 2 回含まれるのを回避します。
Unity Android SDK が 2 回含まれることを避けるため、この依存関係をコメントアウトしてください。

DeepL翻訳

ここをで囲んでコメントアウトする事でビルドが通るようになります。