[Unity] Android 実機でサンプルプロジェクトを動かす

使用環境

  • MacBook Pro(Late 2011) + macOS High Sierra(10.13.6)
  • Sony Xperia Z5(Android OS ver.6.0)
  • Unity 2018.2.21f1
  • Android Studio 3.4
  • JDK 1.8.0_211
  • Android NDK r13b(13.1.3345770)

インストール

古い Android Studio の完全アンインストール

もともと Android Studio 2.3 をインストールしていたが、しばらく触っていなかった。
今回、変にアップデートして何かおかしくなっても嫌なので、https://qiita.com/nagaoyuriko/items/f310b595ff16061e1186 を参考にアンインストールした。

Unity インストール

  1. Unity Hub をダウンロードしてインストール。
  2. Unity Hub を起動したら、Installs → Official Releases から Unity 2018.2.21f1 を選択してインストール。

Android Studio インストール

  • https://developer.android.com/studio/?hl=ja からダウンロードしてインストール。
    • これを書いている時点の最新版である 3.4 で動作確認できた。
  • インストーラは基本的に全て Next で OK。
  • インストールが完了したら Android Studio を立ち上げ、Configure → SDK Manager を起動。
    • SDK はとりあえず 5.0 〜 9.0 までをインストールした。
      スクリーンショット 2019-04-26 22.31.11.png
    • SDK Tools については、Build Tools は 20.0 以上のの rc が付いていないもの、後は最低限必要そうなものをインストール。
      (Show Package Details にチェックを入れないと Build Tools のバージョン指定ができないので注意)
      ここでは NDK も 19.2 をインストールしたが、結局 r13b でないとダメなようなので、インストールしなくてもよかった。

JDK インストール

Unity の Android ビルド用設定

  • Unity Hub から Standard Assets Example Project を Unity 2018.2.21f1 で開く。
    スクリーンショット 2019-04-26 22.53.49.png
  • Unity → Preferences で Unity Preferences ダイアログを開き、External Tools の一番下にある Android の SDK・JDK・NDK のパスをそれぞれ設定する。
    スクリーンショット 2019-04-26 22.48.51.png
    • SDK・JDK は自動検出されるっぽい。
    • NDK は自分で設定する必要がある。
      • この時、NDK は既に 19.2 をインストールしていたので、/Users/{ユーザ名}/Library/Android/sdk/ndk-bundle を指定しようとしたが、Library は隠しフォルダのため、参照できなかった。
      • Finder で隠しファイルを表示させる設定は既にやっておいたのだが、アプリケーションのファイル選択ダイアログでは無意味らしい。
      • なので、Finder で /Users/{ユーザ名}/Library/Android/sdk を開き、ndk-bundle フォルダをファイル選択ダイアログにドラッグ&ドロップする方法で無理やり設定した。
      • …が、後方互換性が無いのか、頑なに r13b (13.1.3345770) を要求してくる(´・ω・`)
        スクリーンショット 2019-04-25 18.51.20.png
      • やむを得ないので、Browse ボタンの隣の Download ボタンで android-ndk-r13b-darwin-x86_64.zip をダウンロードし、適当なところ(ここでは /Users/{ユーザ名}/Works/android-ndk-r13b/ に展開してそのパスを指定した。
  • File → Build Settings → Player Settings... で右側の Inspector に Player Settings を開き、ドロイド君のアイコンのタブをクリックして Settings for Android に切り替え、以下の設定を変更。
    スクリーンショット 2019-04-26 23.25.48.png
    • Package Name … 「unity.会社名.ゲーム名」とするのが普通らしいので、会社名は自分の個人事業主の屋号(MASHSOFT)を使用
    • Minimum API Level … Android 5.0(任意らしい)
    • Target API Level … Android 5.0(任意らしい)
    • Scripting Backend … IL2CPP

Android 実機の設定・接続

  • 設定 → 端末情報 → ビルド番号 を7回タップして、開発者モードに切り替える。
  • 設定 → 開発者向けオプション を開き、一番上のスイッチをON、さらに「USBデバッグ」をON。
    Screenshot_20190427-000619.png
    「スリープモードにしない」をONにしておくと便利だが、充電中はずっとスリープしなくなるので、開発していない時はOFFにしておくのを忘れないようにする
  • USBケーブルで Mac に接続する。
    なおケーブルは必ずデータ転送用を使用すること。

ビルド及び実行

  • Unity の File → Build Settings... で Build Settings ダイアログを表示し、左下の Platform を Android に切り替え、Build ボタンをクリック。
    ファイル名は「test」にした。
    スクリーンショット 2019-04-26 23.53.44.png
  • ビルドが開始される。
    最初のビルドはかなり時間がかかる。
    成功すると、test.apk が生成される。
    スクリーンショット 2019-04-26 23.59.39.png
  • 今度は Build And Run してみる。
    その際、ファイル名が同じため差し替えるかどうか確認されるので、Replace をクリック。
    スクリーンショット 2019-04-27 0.06.33.png
  • 再ビルド実行後、問題なければ実機に test.apk がインストールされ、アプリが起動するヽ(´ー`)ノ
    Screenshot_20190427-000547.png
    ビルドは成功するが実機に転送できない場合、実機との接続がちゃんとできているか、実機の設定が問題ないか、確認する。
    自分の場合、USBデバッグをONにするのを忘れていて、10分くらい悩んだ。

この記事へのコメント