LevelPlay インテグレーションのトラブルシューティング

ノート: LevelPlay インテグレーションガイドをお探しですか? Unity エディターで LevelPlay によるメディエーションを設定する方法については、LevelPlay インテグレーションの管理 を参照してください。

Unity エディターに LevelPlay を統合すると、問題が発生する場合があります。以下の種類の問題については、このガイドを使用してトラブルシューティングを行ってください。

重複クラスに関するエラーメッセージ

プロジェクトをビルドまたはテストしようとすると、重複クラスに関するエラーメッセージ CSO433 が表示されます。このエラーメッセージは、重複しているクラスと、それがどのアセンブリに出現しているかを識別します。重複クラスに関するエラーメッセージの例を以下に示します。

  • The type IronSourceMediationSettings exists in both Assembly-CSharp, Version=0.0.0.0, Culture=neutral, PublicKeyToken=null and 'Unity.LevelPlay, Version=0.0.0.0, Culture=neutral, PublicKeyToken=null (タイプ IronSourceMediationSettingsAssembly-CSharp, Version=0.0.0.0, Culture=neutral, PublicKeyToken=null'Unity.LevelPlay, Version=0.0.0.0, Culture=neutral, PublicKeyToken=null の両方に存在します)

重複クラスのエラー原因としては、以下のようなことが考えられます。

このような問題の説明と解決方法については、以下のセクションを参照してください。

Unity プラグインを削除せずに Ads Mediation パッケージをアップデートした場合

.unitypackage ファイル (Unity プラグイン) がすでにインストールされている状態で、Ads Mediation パッケージを使用して Unity LevelPlay の最新バージョンにアップデートしました。

解決方法

Ads Mediation パッケージをインストールまたはアップデートする前に、.unitypackage ファイル (Unity プラグイン) を削除します。プラグインを削除するには、以下の手順を実行します。

  1. Unity エディターでプロジェクトを開き、Assets (アセット) に移動します。
  2. 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 エディターから削除します。

  1. Unity エディターでプロジェクトを開き、Window (ウィンドウ) > Package Manager に移動します。
  2. Package Manager で、Packages (パッケージ) > In Project (プロジェクト内) を選択します。
  3. Ads Mediation > Remove (削除) を選択します。
  4. Unity エディターで、プロジェクトから Assets (アセット) に移動します。
  5. Assets (アセット) で、使用している ironSource SDK のバージョンによって、以下のいずれかを実行します。
    • SDK v7.8.0 以前: ironSource を右クリック > Delete (削除)。
    • SDK v8.0.0: LevelPlay を右クリック > Delete (削除)。
  6. さらに、インストールされている場合は 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 namespace Unity.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 パッケージをインストールします。

  1. Unity エディターでプロジェクトを開き、Window (ウィンドウ) > Package Manager に移動します。
  2. Package Manager ウィンドウで、+ アイコンを選択してドロップダウンメニューを開き、Install package by name... (名前を指定してパッケージをインストール...) を選択してパッケージ名を手動で入力します。
  3. 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 スクリプトシンボルを削除します。

  1. Unity エディターでプロジェクトを開き、Edit (編集) > Project Settings (プロジェクト設定) > Player (プレイヤー) に移動します。
  2. Other Settings (その他の設定) パネルで、Script Compilation (スクリプトのコンパイル) まで下にスクロールします。
  3. マイナス記号 (-) を選択してシンボルを削除し、LEVELPLAY_DEPENDENCIES_INSTALLED を選択します。
  4. Apply (適用) を選択して変更内容を保存します。