ドキュメント

​
​

Development

User Acquisition

Monetization

産業

LevelPlay SDK - Unity

Unity SDK

Android SDK

iOS SDK

Adobe AIR SDK

Flutter SDK

React Native SDK

LevelPlay SDK - Unity

Unity LevelPlay
​
​
Unity SDK
  • 使用の準備
  • 規制と設定
  • Ad formats (広告フォーマット)
  • メディエーションネットワーク
  • インテグレーションのテスト
    • インテグレーションテストスイート
    • Unity 向けインテグレーションヘルパー
    • インテグレーションテスト
    • 広告が表示されない場合のトラブルシューティング
    • TCF 同意ログのトラブルシューティング
    • Ad Quality SDK の統合のテスト
    • Unity エディターでの模擬広告のプレビュー
    • LevelPlay インテグレーションのトラブルシューティング
    • Kotlin 2に起因するAndroidビルド失敗のトラブルシューティング
  1. ゲームの成長
  2. Unity LevelPlay
  3. LevelPlay SDK
  4. Unity 開発者向け LevelPlay SDK

Kotlin 2に起因するAndroidビルド失敗のトラブルシューティング

Unity 2022 LTS以前のバージョンでビルドするときにLevelPlay 9.6.0で導入されたKotlin 2の依存関係が原因で発生するAndroidビルド障害を特定して修正します。
読み終わるまでの所要時間 9 分
最終更新 6日前

LevelPlay SDK 9.6.0でUnity 2022 LTS以前を使用している場合、Androidビルドに失敗する可能性があります。このガイドでは、それらを識別して解決する方法について説明します。
注
このビルド失敗の問題は、Unity 2022 LTS以前のバージョンにのみ影響します。Unity 6以降では、新しいビルド ツールチェーンとの互換性がサポートされており、影響を受けません。

事象

LevelPlay Unity(Ads Mediation)パッケージを 9.6.0 にアップグレードすると、Android ビルドは以下のエラーで失敗します。
ノート:一部の入力ファイルは、非推奨の API を使用またはオーバーライドします。ノート:詳細は -Xlint:Deprecation で再コンパイルしてください。ERROR:D8: com.android.tools.r8.kotlin.HFAILURE (障害):ビルドは 2 回失敗して完了しました。1:タスクが例外で失敗しました。-----------* 何が問題になったか: タスク ':launcher:mergeExtDexRelease' の実行に失敗しました。> Could not resolve all files for configuration ':launcher:releaseRuntimeClasspath'.> Transform kotlin-stdlib-2.1.21.jar (org.jetbrains.kotlin:kotlin-stdlib:2.1.21) に失敗しました 属性 {artifactType=android-dex, ...} と一致させます。> DexingWithClasspathTransform の実行に失敗しました: .../transformed/jetified-kotlin-stdlib-2.1.21.jar.> デクス中のエラー。2:タスクが例外で失敗しました。-----------* 何が問題になったか: java.lang.StackOverflowError (エラーメッセージなし)ビルド失敗
このエラーメッセージから、これが Kotlin 2 の互換性の問題であることを示す 2 つのインジケーターが確認できます。
  1. 出力に
    ERROR:D8: com.android.tools.r8.kotlin.H
    行が表示されます。
  2. 失敗するアーティファクトは
    kotlin-stdlib-2.1.21.jar
    (または任意の
    Kotlin 2.x stdlib
    ) です。

原因

Android ビルド失敗は、以下の理由で発生する可能性があります。
  • LevelPlay SDK 9.6.0 (およびそのネットワークアダプタの一部) は、Kotlin 2.x 標準ライブラリ (
    kotlin-stdlib-2.1.21
    ) と依存関係にあります。
  • Unity 2022 LTSには、Kotlin 2サポートより前のバージョンのAGP/R8がバンドルされています。バンドルされているD8/R8では、Kotlin 2のstdlibメタデータをデックスできません。これは、
    D8: com.android.tools.r8.kotlin.H
    エラーおよびセカンダリ
    StackOverflowError
    として表示されます。

解決方法

この問題を解決するには、以下の手順に従って
settingsTemplate.gradle
に
buildscript
ブロックを追加し、R8 をオーバーライドします。
  1. プロジェクトに
    settingsTemplate.gradle
    ファイルがまだない場合は、以下の手順で Unity エディターで有効にします。 a.File (ファイル)> ビルド設定 に移動します。 b.プラットフォームとして Android を選択し、プレイヤー設定を選択します。Project Settings ウィンドウが開きます。 c.Android 設定タブで、パブリッシャー設定に移動し、カスタム Gradle 設定テンプレートを有効にします。これにより、Unity は ARTIFACTORYREPOSITORY トークンと DIR_UNITYPROJECT トークンを使用して A
    ssets/Plugins/Android/settingsTemplate.gradle
    にファイルを作成できます。
  2. Open
    Assets/Plugins/Android/settingsTemplate.gradle
    。
  3. Google の R8 リリース Maven から R8 8.5.35 をプルする
    buildscript
    コードブロックを追加します。既存の
    pluginManagement
    コードブロックの直後に追加します。
注
推奨されるベスト プラクティスは、R8バージョン8.5.35を使用することです。これは、Unity 2022 LTS上のLevelPlay 9.6.0の検証済みバージョンであるためです。ただし、8.5.35 より新しいバージョンの R8 を使用できます。具体的には、Kotlin 2 をサポートする 8.5.x 以降のバージョンの R8 であればすべて動作します。
pluginManagement { repositories { **アーティファクトリポジトリ** gradlePluginPortal() google() mavenCentral() }}buildscript { repositories { maven { url "https://storage.googleapis.com/r8-releases/raw" } } dependencies { classpath 'com.android.tools:r8:8.5.35' }}
注
この問題を解決するために Kotlin Gradle プラグインをアップグレードする必要はありません。この障害はKotlinコンパイルではなく、Dexパイプラインで発生しているため、アップグレードする必要があるのはR8のみです。
以下のコード行は、Gradle が R8 8.5.35 (
Kotlin 2 stdlib
をサポート) を強制的に解決してから、Android Gradle プラグインがバンドルされている古いバージョンを選択します。次に、
mergeExtDexRelease
タスクは新しい R8 を使用し、ビルドは正常に完了します。
buildscript { dependencies { classpath 'com.android.tools:r8:...' } }
注
R8 をオーバーライドしても、Kotlin 以外のコードには影響しません。変更されるのはデクサ/シュリンクのバージョンだけで、アプリケーション コード、AGP バージョン、小型化ルールは変更されません。

解像度の確認

  1. プロジェクトルートから以下のコマンドを実行して、開いている Gradle デーモンを閉じます。
    ./gradlew --stop.
    または、以下を実行して Gradle 変換を削除できます。
    ~/.gradle/caches/transforms-3/
  2. Unity エディターで、「ファイル」>「ビルド設定…」>「ビルド(リリース設定)」を選択します。
  3. :launcher:mergeExtDexRelease
    タスクが完了し、APK または AAB が D8 エラーなしでビルドされることを確認します。
エラーが解消されない場合は、以下のください。
  • buildscript
    ブロックが
    settingsTemplate.gradle
    にあり、
    mainTemplate.gradle
    または
    baseProjectTemplate.gradle
    ではないことを確認します。
  • 他のテンプレートが古い R8 クラスパスを再導入していないことを確認します。 0- 以下のコマンドを使用して Gradle Transform キャッシュを消去し、リビルド:
    rm -rf ~/.gradle/caches/transforms-3/

Copyright © 2026 Unity Technologies
法規事項プライバシーポリシークッキーDocumentation Terms of Use私の個人情報を販売または共有しないプライバシーに関する選択 (クッキー設定)

"Unity" の名称、Unity のロゴ、およびその他の Unity の商標は、米国およびその他の国における Unity Technologies またはその関係会社の商標または登録商標です (詳しくはこちら)。その他の名称またはブランドは該当する所有者の商標です。

一部のページは利便性向上のため機械翻訳を使用しており、内容に不正確な表現が含まれる場合があります。内容に齟齬または不一致が生じた場合は、英語版を正本とします。

  • このページ
    • 事象

    • 原因

    • 解決方法

    • 解像度の確認


このページの問題を報告する