【Unity】andoroid用apkファイルを書きだせない原因と解決方法

【Unity】andoroid用apkファイルを書きだせない原因と解決方法

 Google Playに公開するためにはapkファイルを書きだす必要があります。Unity hubにandroid build supportモジュールを加えたのに、なぜかビルドできない原因と解決方法について様々な原因が見つかったのでまとめて記事にしていきます。

プラグイン同士が競合している

 プラグインの「admob」と「ncmb」が競合しているのが原因でビルドできない場合があるようです。

 (プロジェクト名)/Assets/Plugins/Android内に重複した.aarファイルがあればそれが原因です。

解決方法

  • 競合する.aarファイルを削除
  • プロジェクト内の全てのAndroidManifest.xmlのminSdkVersionとtargetSdkVersionを同じ数字にする
  • Other Settings>Minify>ReleaseとDebugをGradle(Experimental)に変更する。

発生しているエラー

●ダイアログのエラー

com.android.builder.dexing.DexArchiveMergerException: Error while merging dex archives: /Developer/UnityAndroid/myApp/Temp/gradleOut/build/intermediates/transforms/dexBuilder/release/0.jar, /Developer

〜.jarの数字以外同じ内容〜

/UnityAndroid/myApp/Temp/gradleOut/build/intermediates/transforms/dexBuilder/release/96.jar, /Developer/UnityAndroid/myApp/Temp/gradleOut/build/intermediates/transforms/dexBuilder/release/97.jar See the Console for details.

●コンソールのエラー1

Build completed with a result of 'Failed'

UnityEngine.GUIUtility:ProcessEvent(Int32, IntPtr)

●コンソールのエラー2

UnityEditor.BuildPlayerWindow+BuildMethodException: 2 errors at UnityEditor.BuildPlayerWindow+DefaultBuildMethods.BuildPlayer (UnityEditor.BuildPlayerOptions options) [0x00234] in /Users/builduser/buildslave/unity/build/Editor/Mono/BuildPlayerWindowBuildMethods.cs:191

at UnityEditor.BuildPlayerWindow.CallBuildMethods (System.Boolean askForBuildLocation, UnityEditor.BuildOptions defaultBuildOptions) [0x0007f] in /Users/builduser/buildslave/unity/build/Editor/Mono/BuildPlayerWindowBuildMethods.cs:97

UnityEngine.GUIUtility:ProcessEvent(Int32, IntPtr)

 引用元はこちら

フォルダの名前が日本語になっている

 フォルダ名は半角英数字にしましょう。

使っていないファイルを放置している

 未使用のファイルがあれば削除してみてください。ビルドが上手くいく場合があります。

原因不明のエラーの時は?

 visualstudioの更新プログラムをインストールしたら解決した場合もあるようです。