LoginSignup
1
0

More than 1 year has passed since last update.

[Unable to locate sdkmanager.bat]の対策

Posted at

Unable to locate sdkmanager.bat. Did you run Android Studio and install cmdline-tools after installing? の直し方について

UnrealEngineにAndroidStudioを認識させる段階でるエラーの話です。

使用環境 
UE5.0
AndroidStudio 4.0

に従いセットアップしている途中、3. Android NDK r21b を使用するように Unreal を設定するの段階でエラーが出ることがあります。
エラーの内容としてはSetUPAndroidスクリプト(Windows)を実行させた後、

Unable to locate sdkmanager.bat. Did you run Android Studio and install cmdline-tools after installing? 

というエラー文が出てライセンス同意画面にまで進めないというものになります。
一度推奨ファイル以外にダウンロードしてしまい、ファイル削除しもう一度ダウンロードすると起きるか古いバージョンであるために起きると推定されています。

解決方法

1.セットアップスクリプトを右クリックし編集からメモ帳等を使いテキスト形式で開く。
スクリーンショット (823).png

2.真ん中あたりにあるset SDKMANAGER~~ という文を探す。
スクリーンショット (824).png

3.赤字の部分が青字の部分と同じようになるように打ち換える。

〈初期時↓〉

set SDKMANAGER=%STUDIO_SDK_PATH%\tools\bin\sdkmanager.bat
IF EXIST "%SDKMANAGER%" (
echo Using sdkmanager: %SDKMANAGER%
) ELSE (
set SDKMANAGER=%STUDIO_SDK_PATH%\cmdline-tools\latest\bin\sdkmanager.bat
IF EXIST "%SDKMANAGER%" (

〈打ち換え後↓〉
set SDKMANAGER=%STUDIO_SDK_PATH%\cmdline-tools\latest\bin\sdkmanager.bat
IF EXIST "%SDKMANAGER%" (
echo Using sdkmanager: %SDKMANAGER%
) ELSE (
set SDKMANAGER=%STUDIO_SDK_PATH%\cmdline-tools\latest\bin\sdkmanager.bat
IF EXIST "!SDKMANAGER!" (

上書き保存して閉じる。

4.Command line をダウンロードする

上記のサイトからWindowsのCommand lineをダウンロードして展開する。

5.ファイルを作る

ダウンロードしたCommand line にはcmdline-toolsフォルダ下に直接他のファイルが入っている。
これが原因の一部なので

>Commandline
 >bit
 >lib
 >NOTICE.txt
 >source.properties

となっているのを>Commandline下に latest という名前のフォルダを作り

>Commandline
 >latest
  >bit
  >lib
  >NOTICE.txt
  >source.properties

になるようlatest内にbit等のフォルダを移動する。

6.AndroidSDKにファイルをコピーする。

今編集したフォルダのcmdline-toolsをコピーする。
C:\Users\ユーザー名\AppData\Local\Android\Sdk
に格納されているSdkのフォルダを開き、Platform-toolsのフォルダ内にコピーする。
スクリーンショット (826).png

7.再起動しもう一度AndroidSetupを実行し試してみる。

以上になります。

参考サイト

恐らく
・AndroidSetupファイル内のフォルダの指定先が違っている
・SDKに何らかが原因でCommand Lineがダウンロードされていない
・ダウンロードできるCommand Lineのフォルダ構成とAndroidSetupの指定するフォルダ構成が違っている
のが原因だと思われます。
(cmdline-tools\latest\bin\sdkmanager.batをcmdline-tools\bin\sdkmanager.batに打ち換えてlatest消せばいいんじゃね?と思ったんですが別のところでlatestが要件になってるらしくlatestがないぜ!というエラーがでました)

手探りで試していてかなりうろ覚えですのでこれでも治らなかったらちょっとわかりません。
訂正等は随時行いますので誤情報等ございましたらTwitter @tukigaselio にDMなどでご連絡ください。

1
0
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
1
0