我正在尝试让新的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
,但我宁愿先确定。
答案 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 环境变量。确保关闭命令提示符并重新启动新提示,然后尝试执行命令。
答案 4 :(得分:3)
编译之前的答案我做了以下操作以获得Android SDK和gradle工作(无论如何都需要gradle工作来编译你的Android项目):
先决条件。您在我的计算机上找到的文件夹中安装了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\
设置三个新系统变量(控制面板\系统和安全\系统高级系统 - &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\
将以下路径添加到系统路径(控制面板\系统和安全\系统高级系统 - &gt;设置 - &gt;环境变量 - 系统变量):
%JAVA_HOME%
%ANDROID_HOME%\tools\
%ANDROID_HOME%\platform-tools
%GRADLE_HOME%\bin
再次关闭并打开您的Dos应用程序(Cmd终端等)。您可能需要重新启动计算机,以确保系统看到变量。如果您不想重新启动,可以使用@wordsforthewise
的建议doskey android=C:\Users\{username}\AppData\Local\Android\sdk\tools\android.bat $*
使用终端命令检查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