64Kを超えるメソット数に達した時の設定 (Android)
この制限はAndroidOS仕様です
今現在Unityを使ってAndroidゲームアプリ開発する時、多くのライブラリーを使った場合 64Kを超えるメソット数に達した事がよくある。
今64K超えっていないでも、他プラグインの導入と共に発生する可能性あるため プロジェクト開発最初から対応した方がいい
下記のリンクの内容は必ず読んでください
解決Step
- Unityのビルド方式をGradleに変更、AndroidStudio用プロジェクトのエクスポート
- AndroidStudioにプロジェクト導入
- MultiDexの設定
- AndroidStudioからapkビルド
- (任意)ビルドエラー解消できたbuild.gradleの差分をmainTemplate.gradleにマージ
1. Unityのビルド方式をGradleに変更(Unity5.5から)
メニュー「File -> Build Settings」から以下の画面を開き、赤い枠の様に設定、Exportボタンを押す
2. AndroidStudioにプロジェクト導入
赤い枠の様に導入
3. MultiDexの設定
以下のAndroid公式ドキュメントをご参照下さい
https://developer.android.com/studio/build/multidex?hl=ja#mdex-gradle
4. AndroidStudioからapkビルド
- プロジェクトによって、64K超えった以外、他のビルドエラーもあるかもしれません そのエラーを全部解決したら、apkビルド出来る
- エラー解決にはUnityだけじゃなく、Android開発の経験も要ります
- 開発プロセスはまずiOS版や、UnityEditorなどを使って確認し、最後リリース前一回AndroidProjectをエクスポートしapkビルドする方法もあります
5. ビルドエラー解消できたbuild.gradleの差分をmainTemplate.gradleにマージ(Unity2017.1から)
メニュー「File -> Build Settings -> Player Settings 」から以下の画面を開き、赤い枠の様に設定
Assets/Plugins/Android/mainTemplate.gradleがUnityエンジン毎回ビルドする時使うgradleテンプレート 上記Step2, Step3の時エラー解消するためbuild.gradleに行なった改修をmainTemplate.gradleへマージしたら AndroidProject毎回エクスポートしなくても、Unityエンジンからビルドできます