android'不被识别为内部或外部命令

时间:2012-07-05 18:52:34

标签: android command-line

我正在尝试让新的GCM服务为我工作,所以我一直在按照此处所述的演示:http://developer.android.com/guide/google/gcm/demo.html

到目前为止,一切运作良好。但是,我现在应该使用命令行构建ant文件,这就是事情停止工作的地方。

出于某种原因,这个命令$ android update project --name GCMDemo -p . --target android-16给了我一个非常好的

'android' is not recognized as an internal or external command,
operable program or batch file.

通常情况下,这可以通过快速Google搜索轻松修复,但我还没有找到任何一个有这个问题的用户。有人能告诉我问题是什么吗? 我有根据的猜测是,我需要将Android工具文件夹添加到我的PATH,但我宁愿先确定。

7 个答案:

答案 0 :(得分:50)

您的猜测是正确的,只需将包含android.bat(tools文件夹)的文件夹添加到PATH即可。否则系统将无法找到该程序。

其他可能性是将目录(使用cd)更改为tools文件夹,然后从那里执行命令。由于当前目录(无论它是什么)通常在PATH中,系统将找到它。但这并不方便,因为您经常希望在不同的目录中执行此命令。

答案 1 :(得分:16)

在您的系统上查找android.bat。在我的(赢8 x64)它在C:\ Users \ {用户名} \ AppData \ Local \ Android \ sdk \ tools \ android.bat

打开命令控制台,然后使用' doskey'命令:

<?php

session_start();

switch ($_SESSION['service1']) {
    case 'yes':
        $service = 'service1';
        break;
    case 'no':
        $service = 'service2';
        break;
    case '???????':
        $service = 'service3';
        break;
}


$data = array(

    'service1'=>array(
        array(
            'min' => "0",
            'max' => "100,000",
            'value' => 249
        ),
        array(
            'min' => "100,001",
            'max' => "200,000",
            'value' => 255
        )
    ),
    'service2'=>array(
        array(
            'min' => "0",
            'max' => "100,000",
            'value' => 450
        ),
        array(
            'min' => "100,001",
            'max' => "200,000",
            'value' => 600
        )
    ),
    'service3'=>array(
        array(
            'min' => "0",
            'max' => "100,000",
            'value' => 8888888888
        ),
        array(
            'min' => "100,001",
            'max' => "200,000",
            'value' => 9999999999
        )
    )

);


function getAdjustedPrice($price, &$table)
{
    $priceData = current(array_filter($table, function($value) use(&$price) {
        return $value['min'] <= $price && $value['max'] >= $price;
    }));
    return $priceData['value'];
}

$input = intval($_SESSION["servicecost"]);

printf(
    "", 
    $input, 
    getAdjustedPrice($input, $data[ $service ])
);

这将继续在open命令控制台中运行。使其永久化更加困难:http://darkforge.blogspot.com/2010/08/permanent-windows-command-line-aliases.html

您也可以尝试将其添加到PATH中,如另一张海报所示,但这对我没有用。我推荐一个简单的gui来做,例如https://patheditor2.codeplex.com/

答案 2 :(得分:13)

在Windows 7中,导航至

  

控制面板\系统和安全\系统&gt; <高级系统设置>环境变量

并更新路径以包含以下内容:

<android-root>\android-sdk-windows\tools

如果存在多个路径,请使用分号分隔路径。

答案 3 :(得分:6)

在Windows 10上,同时添加:

C:\Users\Parag Jain\AppData\Local\Android\sdk\tools
C:\Users\Parag Jain\AppData\Local\Android\sdk\build-tools 

到系统和用户的 PATH 环境变量。确保关闭命令提示符并重新启动新提示,然后尝试执行命令。

image

答案 4 :(得分:3)

编译之前的答案我做了以下操作以获得Android SDK和gradle工作(无论如何都需要gradle工作来编译你的Android项目):

  1. 先决条件。您在我的计算机上找到的文件夹中安装了Java jdk,Android SDK和gradle。请检查一下:

    C:\Program Files\Java\jdk1.X.X_XX\
    C:\Users{username}\AppData\Local\Android\sdk\
    C:\Program Files\Android\Android Studio\gradle\gradle-X.X\
    
  2. 设置三个新系统变量(控制面板\系统和安全\系统高级系统 - &gt;设置 - >环境变量 - 系统变量)。不要忘记更改java和gradle版本。

    JAVA_HOME C:\Program Files\Java\jdk1.X.X_XX
    ANDROID_HOME  C:\Users\{username}\AppData\Local\Android\sdk
    GRADLE_HOME   C:\Program Files\Android\Android Studio\gradle\gradle-X.X\
    
  3. 将以下路径添加到系统路径(控制面板\系统和安全\系统高级系统 - &gt;设置 - &gt;环境变量 - 系统变量):

    %JAVA_HOME%
    %ANDROID_HOME%\tools\
    %ANDROID_HOME%\platform-tools
    %GRADLE_HOME%\bin
    
  4. 再次关闭并打开您的Dos应用程序(Cmd终端等)。您可能需要重新启动计算机,以确保系统看到变量。如果您不想重新启动,可以使用@wordsforthewise

    的建议
    doskey android=C:\Users\{username}\AppData\Local\Android\sdk\tools\android.bat $*
    
  5. 使用终端命令检查Android SDK和gradle是否正常工作

    $ java -version
    $ android list target
    $ gradle -v
    

答案 5 :(得分:1)

对我有用的东西: 将ANDROID_HOME变量设置为System变量而不是用户变量。

我正在使用Windows 10,不确定这是否重要。

答案 6 :(得分:0)

我通过以下步骤永久解决了此问题。

操作系统版本:Windows 7 64位 解决方案:为android sdk和gradle设置环境变量

第1步:创建新的“ ANDROID_HOME”用户变量 变量名称:ANDROID_HOME 变量值C:\ Users {用户名} \ AppData \ Local \ Android \ sdk \

第2步:创建新的“ GRADLE_HOME”用户变量 变量名称:GRADLE_HOME 变量值C:\ Program Files \ Android \ Android Studio \ gradle \ gradle-x.x \ *不要忘记更改和升级版本。

第3步:创建“ ANDROID_HOME”系统变量 变量名称:ANDROID_HOME 变量值C:\ Users {用户名} \ AppData \ Local \ Android \ sdk \

第4步:创建新的“ GRADLE_HOME”系统变量 变量名称:GRADLE_HOME 变量值C:\ Program Files \ Android \ Android Studio \ gradle \ gradle-x.x \ *不要忘记更改和升级版本。

重新打开命令提示符并确认以下命令输出:      1. gradle -v      2. android list target