猫でもわかるUnity入門(第18回 Android用のビルド環境を作ろう)

えにあです。
今まではPC向けアプリとしてビルドしてきましたが、今回はAndroid向けにビルドできるようにしていきます。

NOTE:
自分のスマホをUSBでパソコンとつないで、実機で動作確認できるようにするだけです。 そのうち自分のアプリを作ってPlayストアからダウンロードできるようにする方法も記事にしたいですね。

Android向けにビルドするには、AndroidStudioのインストールと、Unity側の設定が必要です。 これから、順番に手順を記載していきます。 ちなみに、iPhone向けにビルドするにはMacが必要です。私はMaciPhoneも持っていないので、Androidをターゲットにしています。


目次

Android Stuidoのダウンロード

まずは以下のサイトからAndroid Studioをダウンロードしましょう。 インストーラだけで1GBほどのサイズがありますので、空き容量に注意してください。
developer.android.com

Download Android Stuidoをクリックします。 f:id:enia:20210305214623p:plain

利用規約に同意して「ダウンロードする」をクリックします。 f:id:enia:20210305215523p:plain

以上でダウンロードは完了です。

Android Studioのインストール

ダウンロードしたインストーラをクリックして、インストールを開始します。 「Next」を押します。
f:id:enia:20210304094748p:plain

デフォルトの設定のまま「Next」を押します。
f:id:enia:20210304095203p:plain

インストール先を指定して「Next」を押します。
私はデフォルトのパスのままにしました。
f:id:enia:20210304095427p:plain

「Install」をクリックします。
f:id:enia:20210304095637p:plain

インストールが完了するまで30秒ほど待ちましょう。
f:id:enia:20210304095846p:plain

インストールが完了したら「Next」を押します。
f:id:enia:20210304095824p:plain

「Finish」を押します。
f:id:enia:20210304100021p:plain

インストールはここまでで完了です。最後の手順で「Start Android Studio」にチェックが入っていれば、このままAndroid Studioが起動します。

Android Studioの初期設定

「Do not import settings」を選択してOKをクリックします。
f:id:enia:20210304100120p:plain

GoogleAndroid Stuidoを改善するために、どのように使っているか情報をGoogleに送信しても良いか?と聞かれているようです。「Don't send」を選択しても問題なく使えるので、こちらを選択しました。
f:id:enia:20210304100530p:plain

「Next」を選択します。
f:id:enia:20210304100746p:plain

「Standard」にチェックを入れてNextを押します。
f:id:enia:20210304100830p:plain

UIのテーマです。好きな方を選択してNextを押します。 私は夜電気を暗めにして作業するので、目が痛くならないようにダークモードを選びました。 f:id:enia:20210304101925p:plain

先ほどの画面でダークモードを選択したので、以降画面が暗くなっています。 「Finish」を押します。 f:id:enia:20210304102432p:plain

初期化が完了するまでしばらく待ちましょう。 f:id:enia:20210304103406p:plain

おっと、私の環境ではエラーが発生してしまいました。 とりあえずFinishしか押せないので押します。 f:id:enia:20210304122351p:plain

Intel® HAXM installation failed. To install Intel® HAXM follow the instructions found at: https://software.intel.com/android/articles/installation-instructions-for-intel-hardware-accelerated-execution-manager-windows
Installer log is located at C:\Users\xxxx\AppData\Local\Temp\haxm_log.txt
Installer log contents:
=== Logging started: 2021/03/04  10:40:11 ===
This computer does not support Intel Virtualization Technology (VT-x) or it is being exclusively used by Hyper-V. HAXM cannot be installed. 
Please ensure Hyper-V is disabled in Windows Features, or refer to the Intel HAXM documentation for more information.

Android Studioの初期化自体は完了しているようなので、いったんこのままにします。 ※特にこの後の手順で問題はおきませんでした。

Android Studioの初期設定は以上です。ここでAndroid Studioは閉じておきます。

Android向けビルド用モジュールの追加(Unity側作業)

ここからはUnityに戻ります。 トップメニューから「ファイル」->「ビルド設定」を選択します。
f:id:enia:20210304122959p:plain

ビルド設定画面が開きます。 プラットフォーム画面を見ると、現在は「PC, Mac & Linux Standalone」が選択されているのが分かります。 f:id:enia:20210304124052p:plain

Androidを選択して「Install with Unity Hub」をクリックします。 f:id:enia:20210304124336p:plain

Unity Hubが起動しますので、「Android Build Suppoert」、「Android SDK & NDK Tools」、「OpenJDK」の3つにチェックをいれて「次へ」を押します。
f:id:enia:20210322134607p:plain

Android SDK and NDKの利用規約の同意にチェックを入れ、実行を押します。 f:id:enia:20210304125300p:plain

インストールが終わると自動でUnityが再起動すると思います。再起動しなければ手動で再起動しましょう。 再度ビルド設定画面を開きます。 プラットフォームでAndroidを選択した時の画面が以下のように変わっていればOKです。 以上で、Android向けビルド用モジュールの追加は完了です。 ここまでは一度だけやれば良い作業で、以降の作業はプロジェクトごとに行う作業です。

Android向けビルド(Unity側作業)

「Switch Platform」を押します。 f:id:enia:20210304125758p:plain

1分弱かかるので待ちます。 f:id:enia:20210304122852p:plain

以下のようにプラットフォーム欄のチェックがAndroidに変ればOKです。 f:id:enia:20210304130046p:plain

次にプレイヤー設定を選択します。 f:id:enia:20210304130356p:plain

Player設定にはたくさんの項目がありますが、真ん中の方にパッケージ名という項目があります。 ここに、インターネットのURLと同様に、他の人と重複しない、世界で唯一の名前を設定する必要があるようです。 今回は自分のスマホで動作確認するのが目的ですので、ユニークであれば適当な名前で良いと思います。 設定したら閉じます。 f:id:enia:20210304131652p:plain

ビルド設定に戻って、「シーンを追加」ボタンを押してビルド対象のシーンを追加します。 「シーンを追加」では現在のシーンがビルド対象に追加されます。 今回は1シーンしかないのでこれで良いですが、複数シーンある場合はプロジェクトビューからドラッグアンドドロップする方法で追加するのが簡単だと思います。 f:id:enia:20210304132759p:plain

「ビルドして実行」を押します。 f:id:enia:20210304132958p:plain

名前を付けて保存のダイアログが出ます。 ここで付けた名前がapkファイル名になります。 保存先はプロジェクト内で、Assetsフォルダ以外であればどこでも大丈夫です。

私は、Buildsフォルダを作って「Roulette_Android」という名前を入力して実行しました。 (※前回のボール転がしではないプロジェクトで試していたので、名前がRoll a ballではないです) f:id:enia:20210304134008p:plain

おっと、No Android devices Connectdというエラーが出てしまいました。 f:id:enia:20210304135024p:plain

このエラーが出る原因は大きく2つです。

  1. Android端末とスマホをUSBで接続していない
  2. Androidが「USBデバッグオン」になっていない

今回は2が原因でした。 USBデバッグをオンにしてRetryを押します。 (USBデバッグをオンにする手順は割愛しますが、Googleで検索すればすぐに出てきます。)

今度は先に進みました。しばらく待ちます。 f:id:enia:20210304135303p:plain

javaの起動がブロックされたので許可します。 f:id:enia:20210304135414p:plain

スマホ側を見ていてください。 しばらく待ってビルドが完了すると、自動的にアプリが起動します。やりましたね!

Android向けのビルド方法は以上です。

残念ながら、前回まで作成していたボール転がしゲームはキーボード入力を前提としているので、スマホでそのまま遊ぶことはできませんが、少し変更すれば簡単にAndroidで動かせるようになりますよ。 今回はここまで!