web-dev-qa-db-ja.com

Cordova:Android SDKが見つかりません。インストールされていることを確認してください。デフォルトの場所にない場合は、Android_HOME環境変数を設定します

CordovaでAndroidをビルドするのに問題があります。cordova build Androidを実行すると、次のエラーが表示されます。

Error: Android SDK not found. Make sure that it is installed. If it is not at the default location, set the Android_HOME environment variable.

私はそれを修正するためにこれをしました:

Sudo nano  ~/.bash_profile

次の行を追加します。

export PATH=${PATH}:/Users/myname/Library/Android/sdk/platform-tools:/Users/myname/Library/Android/sdk/tools

それからこれ:

source ~/.bash_profile

しかし、ビルドすると再びエラーが発生します。どうすれば修正できますか?

更新:

これは私がbashに追加した行です:

export PATH=${PATH}:/Users/myname/Library/Android/sdk/platform-tools:/Users/myname/Library/Android/sdk/tools
export Android_HOME=/Users/myname/Library/Android/sdk
36
Piero

最近の Android SDKツールAndroidコマンドを削除しました。

$ Android -v
The Android command is no longer available.
For manual SDK and AVD management, please use Android Studio.
For command-line tools, use tools/bin/sdkmanager and tools/bin/avdmanager

cordovaは変更の背後にあり、誰かがそれに取り組んでいるようです: https://issues.Apache.org/jira/browse/CB-12554

また、Androidがまだ利用可能なバージョンにツールをダウングレードすることもできます。

それでも、SDKツールをダウングレードせずにAndroidアプリを実行する方法を見つけました。 (1)cordova prepareを実行し、次に(2)Android St​​udioから必要なコマンドを実行します。私の場合、エミュレータで実行するだけで十分でした。

更新:問題 CB-12554 は現在解決されており、[email protected]リリースでリリースされました。

更新:関連する後続のパッチがいくつか行われ、最新バージョンは[email protected]です。 cordova platform rm Android; cordova platform add [email protected]を実行して問題を修正します。

44
oldergod

この作業では、まずCordova Androidバージョンを確認します

cordova platform version Android

それは私に5.0を示し、その後、このコマンドでバージョンをアップグレードします

cordova platform update Android
30
Uahmed

TL; DR場合によっては、パスにAndroid sdkを正常に追加した場合でも問題が解決しない場合、理由はAndroid tools/に関連していますフォルダーバージョン、現在Androidコマンドはサポートされていませんしかし、それはまだ必要ですコマンドionic cordova build Androidによって、古いものをダウンロードする必要があります。

問題の場所がわかったので、解決策を見てみましょう。

  1. プラットフォームに応じて古いSDKバージョンをダウンロードします MacWindowsLinux
  2. Mactools/の現在の/Users/username/Library/Android/sdkフォルダーをWindowsC:\Users\[account]\AppData\Local\Android\sdkまたはLinux~/Android/Sdkフォルダーを、ダウンロードしたtools/フォルダーに置き換えます。
  3. コマンドラインを再起動してください!
17
user6358125

@Rjakは、SDKバージョンをダウングレードするための manual で、古いSDKバージョンの有効なリンクが含まれています。ツールv25.2.5およびプラットフォームツールからv25.0.3へのダウングレードが成功した後、同じ問題で動作します

3
Anton Shevchuk

他の誰かが述べたように、それはAndroidコマンドが廃止されたためです。

 C:\> Android 
 ************************************** *************************************** 
「Android」コマンドは非推奨。
手動SDK、AVD、およびプロジェクト管理については、Android St​​udioを使用してください。
コマンドラインツールについては、tools\bin\sdkmanager.bat [.____を使用してください。]およびtools\bin\avdmanager.bat 
 ************************************** *************************************** 

私の場合、「ツール」フォルダー内のSDKにバンドルされているより新しいAndroid.batを変更して修正しました。

sdk/tools/Android.batの次の行を変更するだけです:

これから:(行〜20)

set avd_objects=;avd;target;device;

To

set avd_objects=;avd;targets;device;

これから:(行〜37)

echo Android list target

To

echo Android list targets

説明:cordova build.batは最終的にcheck_reqs.jsスクリプトを呼び出し、この検証が行われます。実際のエラーテキストを探してみると、スクリプトが「Android list target s --compact」コマンドを呼び出しようとしていることがわかります。

1
waldou

エラーを解決するために新しいAndroidパッケージに更新します-

cordova platform remove Android
cordova platform add Android
cordova build Android --release
0
Jon

私の場合、これはシナリオです

1. SDKプラットフォームツールバージョン2

2. AndroidプラットフォームをMy Cordovaプロジェクトに追加しました

3. SDKから26を更新するまで問題なく動作します

4. SDKの更新後、同じエラーがスローされます

Cordova:Android SDKが見つかりません。インストールされていることを確認してください。デフォルトの場所にない場合は、Android_HOME環境変数を設定します

  1. プロジェクトのAndroidプラットフォームを削除して追加することでこれを解決しました

    cordovaプラットフォームはAndroidを削除します

    cordovaプラットフォームはAndroidを追加

  2. 今ではうまく動作します:)

Android St​​udioをアンインストールして質問を解決し、このガイドに従ってCLI SDKマネージャーをインストールしました。

https://guides.codepath.com/Android/Installing-Android-SDK-Tools

0
Piero