PR

【Unity】Android API29でビルドできないときの解決法

インストール完了画面 Unity

最近Androidアプリをビルドするときにエラーが出てしまうことがありました。
なので今回はその修正方法をご紹介したいと思います。

はじめに

すこし前にGoogleから下記のようなメールが来ていました。

GooglePlayからのメッセージ(api29へ)

2020 年 11 月 2 日以降に Google Play で配信しているアプリおよびゲームを更新する場合、Android 10(API レベル 29)以上をターゲットとすることが必須となりますので改めてご連絡いたします。APK をアップロードする際は、Google Play の対象 API レベルの要件を満たしている必要があります。

要するにAPIレベルを29以降に設定しないとアプリ更新できないよってことですね…

 

 

ビルド時にエラーが発生(鳥フライトの場合)

最近リリースした「鳥フライト」ですが

鳥フライト 公式サイト
ゲームアプリ「鳥フライト」の公式サイトです。

最初は

とりあえずAPI29以降にしておくか

とビルドしてみても、このようなエラーが出てビルドができませんでした。

api29でビルドできないエラー

Unable to install additional SDK platform. Please run the SDK Manager manually to make sure you have the latest set of tools and the required platform installed.
See the console for details.

(Google翻訳)
追加のSDKプラットフォームをインストールできません。
SDK Managerを手動で実行して、最新のツールセットと必要なプラットフォームがインストールされていることを確認してください。
詳細については、コンソールを参照してください。

 

 

一度APIレベル29以降を諦めたが…

サッと治るものでなさそうだったのでAPI29を断念して
これまで問題なかったバージョンで提出することにしました。

まだ期限は先だし、バージョン挙げなくてもいいか

と考えて、GooglePlayConsoleにアプリをアップロードしたところ

「APIレベル29以降でないといけない」というエラーが…!

 

メールと言ってることが違うので今思えば見間違いだったのかもしれません…
ただいずれは対応しないといけないことなのでエラーを修正することにしました。

 

 

APIレベル29の設定方法

Unityのメニュー「Edit→ProjectSettings→Player→Androidタブを選択→Identification」から設定可能です。

私のようにGooglePlayConsoleで一度失敗された方は「Bundle Version Code」も上げておきましょう

 

 

SDK Managerを開く

翻訳した内容にもある通り、どうやら手動でSDKマネージャを設定しないといけないようです。

Android Studioから更新する

Android Studioがインストールされている方は検索ウィンドウから「Android Studio」と入力して起動してください。

そして起動すると下記のような画面が出るので

  1. Configureを選択
  2. SDK Managerを選択

sdkマネージャの場所

すると新しいウィンドウが開くので

  1. Android SDKを選択
  2. Android 10.0(API Level 29)にチェックを入れる
  3. Applyを選択

api29へ更新

インストール画面はこんな感じ

インストール完了画面

終わってFinishを押せば完了です。

これでAPI29がAndroid Studioに追加されました。

 

 

Unityは別でSDKを持っている

Unityではエディタ側にAndroidのSDKを管理しているようなので
更新したAndroidStudio側のSDKのパスを参照するようにUnityEditor側に設定してあげます。

パスをコピーする

まずパスをコピーします。

  1. 同様に「Android SDK」を選択
  2. 「Android SDK Location」という項目があるのでフルパスをコピーしておく

SDKパスをコピー

 

Unity側にパスを設定

そしてUnityEditor側にパスを設定します。

UnityEditorメニューの「Edit→Preferences」からウィンドウを開いて

  1. Preferencesタブを選択
  2. External Toolsを選択
  3. Android SDK Tools Installed with Unityのチェックを外す
  4. その下の「SDK」の箇所にコピーしたパスを設定

参照するSDKパスを変更

これで手順は完了です。

 

もう一度ビルドをしてみる

ここまでに何度も他の方法を試して失敗していたので
半ば諦めながらビルドしたところ…

問題なくビルドできました!

 

 

アップロード時の別エラーにも注意

API29のエラーは消えたのですが、まだGooglePlayConsoleにエラーが出ていることがありました。

それは「デバッグモードが残っているよ」ってエラーです!

このようにVisualStudioで検索すると出てくるのですが、これが邪魔をしているようです。

visualstudioで検索すると見つかるデバッグ設定

なのでこれをOFFにします。

修正方法は

  1. VisualStudioでプロジェクトを開く
  2. Ctrl+Shift+Fで出てくる検索ウィンドウから「ソリューション全体」をターゲットに「android:debuggable」検索
  3. 検索された項目すべてを「true」から「false」に変更

となります。

 

 

最後に

いかがだったでしょうか。

やっと完成したのに最後の最後でうまくいかないとがっかりしてしまいますよね…

そんなときにこの修正方法が参考になれば幸いです。

では今回はここでおしまいです。
ここまでお読みいただきありがとうございました。

 

コメント

スポンサーリンク
Ads Blocker Image Powered by Code Help Pro

Ads Blocker Detected!!!

We have detected that you are using extensions to block ads. Please support us by disabling these ads blocker.

タイトルとURLをコピーしました