環境
- Unity 2021.3.9f1(Appleシリコン版)
- Android Studio 2022.2.1 Patch 2
- macOS Ventura 13.4.1(22F82)
エラー
- Androidのリリースビルド(aab)を作成しようとすると、下記のエラーが発生する。
- エラーメッセージの通りで、android 33のSDKがないからインストールして、再起動してね、という内容。
Target Android SDK not installed
Android SDK does not include your Target SDK of 33.
Please use the Android SDK Manager to install your target SDK version. Restart Unity after SDK installation for the changes to take effect.
対応手順
大まかな流れ
デフォルトでは、UnityはUnityHubでインストールしたAndoirdSDKを使ってビルドを行います。
Unity 2021.3.9f1
では、SDK33をインストールしてくれないので、エラーが発生しているわけです。
ですので、UnityHubでインストールしたAndroidSDKから33のSDKを見つけられるようにしてあげれば良いというわけです。
具体的には、
- Android Studio経由で、SDK33をインストールする
- 1.でインストールしたSDK33をUnityが使うSDKにコピーする
という手順を踏みます。
0. UnityHubでインストールAndroidSDKにandroid-33が含まれていないことを確認する
UnityHubから、現在利用中のUnityEditorの保存先を確認できます。
PlaybackEngines
> AndroidPlayer
> SDK
> platforms
を確認します。
私の環境では、具体的なパスは下記の通りでした。
/Applications/Unity/Hub/Editor/2021.3.9f1-arm64/PlaybackEngines/AndroidPlayer/SDK/platforms
android-33
が存在しないことを確認できました。
1. Android Studio経由でplatform-33をインストールします
Android Studioを起動します。
さらに、SDK Managerを起動します。
必要なSDKにチェックをいれ、Applyを押します。今回はAndroid 13.0
をインストールします。
インストールが終わると、Android SDK Location
で設定されているパスにplatform-33
(API Level33に必要なライブラリなど)がインストールされます。
2. Android Studio経由でインストールしたplatform-33をUnityEditorにコピーする
最終的には、このようになります
3. UnityEditorを再起動しビルドする
新しくインストールしたplatformを認識してくれないようなので、UnityEditorを再起動します。
まとめ
無事にビルドできました。
今回手動でSDKを追加しているので、PCの入れ替えなどを行うと同様のエラーに遭遇する可能性があります。
新しいUnityEditorを使うという選択肢もあると思いますが、新しいUnityEditorを使うと、それはそれで不具合がでたりするので気軽にできない場合もあると思います。
そんなときは、今回のような手順でサポートするAndroidSDKを追加して凌ぐことが可能です。
その他
試していませんが、Android Studioでなく、UnityEditor付属のSDKManagerを利用しても対応できそうです。今回はGUIがすでに用意されており気軽に試せるという意味でAndroid Studioを使ってSDKを追加しました。