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
最近の 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 Studioから必要なコマンドを実行します。私の場合、エミュレータで実行するだけで十分でした。
更新:問題 CB-12554 は現在解決されており、[email protected]
リリースでリリースされました。
更新:関連する後続のパッチがいくつか行われ、最新バージョンは[email protected]
です。 cordova platform rm Android; cordova platform add [email protected]
を実行して問題を修正します。
この作業では、まずCordova Androidバージョンを確認します
cordova platform version Android
それは私に5.0を示し、その後、このコマンドでバージョンをアップグレードします
cordova platform update Android
TL; DR場合によっては、パスにAndroid sdkを正常に追加した場合でも問題が解決しない場合、理由はAndroid tools/
に関連していますフォルダーバージョン、現在Android
コマンドはサポートされていませんしかし、それはまだ必要ですコマンドionic cordova build Android
によって、古いものをダウンロードする必要があります。
問題の場所がわかったので、解決策を見てみましょう。
@Rjakは、SDKバージョンをダウングレードするための manual で、古いSDKバージョンの有効なリンクが含まれています。ツールv25.2.5およびプラットフォームツールからv25.0.3へのダウングレードが成功した後、同じ問題で動作します
他の誰かが述べたように、それはAndroidコマンドが廃止されたためです。
C:\> Android ************************************** *************************************** 「Android」コマンドは非推奨。 手動SDK、AVD、およびプロジェクト管理については、Android Studioを使用してください。 コマンドラインツールについては、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」コマンドを呼び出しようとしていることがわかります。
エラーを解決するために新しいAndroidパッケージに更新します-
cordova platform remove Android
cordova platform add Android
cordova build Android --release
私の場合、これはシナリオです
1. SDKプラットフォームツールバージョン2
2. AndroidプラットフォームをMy Cordovaプロジェクトに追加しました
3. SDKから26を更新するまで問題なく動作します
4. SDKの更新後、同じエラーがスローされます
Cordova:Android SDKが見つかりません。インストールされていることを確認してください。デフォルトの場所にない場合は、Android_HOME環境変数を設定します
プロジェクトのAndroidプラットフォームを削除して追加することでこれを解決しました
cordovaプラットフォームはAndroidを削除します
cordovaプラットフォームはAndroidを追加
今ではうまく動作します:)
Android Studioをアンインストールして質問を解決し、このガイドに従ってCLI SDKマネージャーをインストールしました。
https://guides.codepath.com/Android/Installing-Android-SDK-Tools