LevelPlay インテグレーションのトラブルシューティング
ノート: LevelPlay インテグレーションガイドをお探しですか? Unity エディターで LevelPlay によるメディエーションを設定する方法については、LevelPlay インテグレーションの管理 を参照してください。
Unity エディターに LevelPlay を統合すると、問題が発生する場合があります。以下の種類の問題については、このガイドを使用してトラブルシューティングを行ってください。
重複クラスに関するエラーメッセージ
プロジェクトをビルドまたはテストしようとすると、重複クラスに関するエラーメッセージ CSO433 が表示されます。このエラーメッセージは、重複しているクラスと、それがどのアセンブリに出現しているかを識別します。重複クラスに関するエラーメッセージの例を以下に示します。
- The type
IronSourceMediationSettings
exists in bothAssembly-CSharp, Version=0.0.0.0, Culture=neutral, PublicKeyToken=null
and'Unity.LevelPlay, Version=0.0.0.0, Culture=neutral, PublicKeyToken=null
(タイプIronSourceMediationSettings
はAssembly-CSharp, Version=0.0.0.0, Culture=neutral, PublicKeyToken=null
と'Unity.LevelPlay, Version=0.0.0.0, Culture=neutral, PublicKeyToken=null
の両方に存在します)
重複クラスのエラー原因としては、以下のようなことが考えられます。
- Unity プラグインを削除せずに Ads Mediation パッケージを アップデートする
- Ads Mediation パッケージを削除せずに Unity プラグインを アップデートする
- Ads Mediation パッケージの 大幅な アップデート
このような問題の説明と解決方法については、以下のセクションを参照してください。
Unity プラグインを削除せずに Ads Mediation パッケージをアップデートした場合
.unitypackage ファイル (Unity プラグイン) がすでにインストールされている状態で、Ads Mediation パッケージを使用して Unity LevelPlay の最新バージョンにアップデートしました。
解決方法
Ads Mediation パッケージをインストールまたはアップデートする前に、.unitypackage ファイル (Unity プラグイン) を削除します。プラグインを削除するには、以下の手順を実行します。
- Unity エディターでプロジェクトを開き、Assets (アセット) に移動します。
- Assets (アセット) で、使用している ironSource SDK のバージョンによって、以下のいずれかを実行します。
- SDK v7.8.0 以前: ironSource を右クリック > Delete (削除)。
- SDK v8.0.0: LevelPlay を右クリック > Delete (削除)。
ノート: 開発者設定を使用している場合は、アプリケーションキーや Advanced Mediation Settings (メディエーションの詳細設定) で選択した項目をすべて記録してください。最新バージョンの ironSource SDK にアップデートした後に、これらの値を再度入力できます。
Ads Mediation パッケージを削除せずに Unity プラグインをアップデートした場合
Ads Mediation がすでにインストールされている状態で、.unitypackage ファイルを使用して Unity LevelPlay の最新バージョンにアップデートしました。
解決方法
Unity プラグインをインストールまたはアップデートする前に、Ads Mediation パッケージを削除します。以下の手順に従って、Ads Mediation パッケージを Unity エディターから削除します。
- Unity エディターでプロジェクトを開き、Window (ウィンドウ) > Package Manager に移動します。
- Package Manager で、Packages (パッケージ) > In Project (プロジェクト内) を選択します。
- Ads Mediation > Remove (削除) を選択します。
- Unity エディターで、プロジェクトから Assets (アセット) に移動します。
- Assets (アセット) で、使用している ironSource SDK のバージョンによって、以下のいずれかを実行します。
- SDK v7.8.0 以前: ironSource を右クリック > Delete (削除)。
- SDK v8.0.0: LevelPlay を右クリック > Delete (削除)。
- さらに、インストールされている場合は Mobile Dependency Resolver を右クリック > Delete (削除) を選択します。
Ads Mediation パッケージの大幅なアップデート
Ads Mediation パッケージを初期バージョンからかなり新しいバージョンにアップデートしました。
解決方法
Ads Mediation パッケージに大幅なアップデートが必要な場合は、アップグレードを円滑に行うために、追加の手順が必要になることがあります。
例えば、v1.0.0 から v8.0.0 にアップデートする場合は、アップデート時に追加の手順が必要です。詳細については、Unity Package Manager の Ads Mediation パッケージの説明を参照してください。
ironSource SDK からスクリプトシンボルを削除できない
ironSource SDK から LEVELPLAY_DEPENDENCIES_INSTALLED
スクリプトシンボルを削除しても、自動的に SDK に再出現し続けます。
原因
SDK から LEVELPLAY_DEPENDENCIES_INSTALLED
スクリプトシンボルを削除すると常に、スクリプトシンボルが自動的に SDK に追加し直されます。ironSource SDK Unity パッケージのバージョン 8.0.0 から、このスクリプトシンボルは必須となっています。
解決方法
ironSource SDK バージョン 8.0.0 からスクリプトシンボルは必須となっているため、この問題に既知の解決方法はありません。このシンボルは、削除された場合は常に、自動的に追加し直されます。
依存関係クラスの欠落に関するエラーメッセージ
Ads Mediation パッケージをインストールした後、依存関係クラスに関するエラーメッセージを受け取りました。以下のメッセージは、依存関係クラスが見つからない場合の警告の例です。
- The type or namespace name
Core
does not exist in the namespaceUnity.Services
. (型または名前空間の名前Core
が名前空間Unity.Services
に存在しません) - The type or namespace name
Newtonsoft
could not be found. (型または名前空間の名前Newtonsoft
ファイル が見つかりませんでした) - The type or namespace name
EditorGameServiceFlagEnabler
could not be found. (型または名前空間の名前EditorGameServiceFlagEnabler
ファイル が見つかりませんでした)
原因
これは、ironSource SDK Unity パッケージにある com.unity.services.core
依存関係が削除されたか、インストールできなかった場合に発生します。この依存関係が欠落している場合、どの依存関係クラスが見つからなかったかを示すエラーメッセージがコンソールに表示されます。
解決方法
欠落している com.unity.services.core
依存関係を解決するには、2 つの方法があります: 名前を指定して Services Core パッケージを手動でインストールするか、LEVELPLAY_DEPENDENCIES_INSTALLED
スクリプトシンボルを削除します。
Package Manager で Services Core パッケージをインストールする
欠落している依存関係を解決するには、以下のようにして Unity Package Manager で Services Core パッケージをインストールします。
- Unity エディターでプロジェクトを開き、Window (ウィンドウ) > Package Manager に移動します。
- Package Manager ウィンドウで、+ アイコンを選択してドロップダウンメニューを開き、Install package by name... (名前を指定してパッケージをインストール...) を選択してパッケージ名を手動で入力します。
- Name (名前) フィールドに
com.unity.services.core
と入力し、Install (インストール) を選択します。
LEVELPLAY_DEPENDENCIES_INSTALLED スクリプトシンボルを削除する
LEVELPLAY_DEPENDENCIES_INSTALLED
スクリプトシンボルを使用して Services Core パッケージを復元することもできます。スクリプトシンボルは、削除されると自動的に追加し直されます。再インストールプロセスの過程で、com.unity.services.core
パッケージも自動的に再インストールされます。この方法は、エディターに Services Core パッケージが表示されない場合に使用できます。
依存関係の欠落を解決するには、以下のようにして ironSource SDK Unity パッケージから LEVELPLAY_DEPENDENCIES_INSTALLED
スクリプトシンボルを削除します。
- Unity エディターでプロジェクトを開き、Edit (編集) > Project Settings (プロジェクト設定) > Player (プレイヤー) に移動します。
- Other Settings (その他の設定) パネルで、Script Compilation (スクリプトのコンパイル) まで下にスクロールします。
- マイナス記号 (-) を選択してシンボルを削除し、LEVELPLAY_DEPENDENCIES_INSTALLED を選択します。
- Apply (適用) を選択して変更内容を保存します。