2014-02-10 121 views
19

这正是我要做的:的PhoneGap总是问我安装Android SDK中19,但我已经安装了它

$ phonegap create myapp 
$ cd myapp 
$ phonegap run android 

,但它失败。

我检查了一切。 我的环境没问题,安装了最新版本。 当我键入

$ android 

我CMD它让我发现,每一个最新的更新已经安装,但不能使其工作:

$ phonegap run android 

返回:

     ^
Error: Please install Android target 19 (the Android newest SDK). Make sure you 
have the latest Android tools installed as well. Run "android" from your command 
-line to install/update any missing SDKs or tools. 
    at C:\Users\yeayea\.cordova\lib\android\cordova\3.3.0\bin\lib\check_reqs.js: 
80:29 

请帮助否则我会吊死自己! :(

+0

您是否检查过以确保您的$ PATH包含android 19 sdk的'tools'和'platform-tools'路径? –

+0

是:(检查了百万次,更改了文件夹,重启了我的电脑,但没有任何希望。 –

+0

是否能够从命令行运行'android'? –

回答

1

我能够通过检查是否在当前工作目录中检测到环境变量来解决此问题 我运行phonegap的目录运行android无法检测到ororid环境变量我把它复制到另一个目录c:/用户// <>,并试图再次它的工作

如果你的SDK是不是安装在c这可能会发生:驱动器(主分区)

+0

我试过了,它没有解决它 – Curtis

+0

! wokred我!我刚刚安装在我的笔记本电脑SSD,并不能增加Android平台的另一个硬盘驱动器上工作时!非常感谢你Viki293。 –

0

对于Windows,在环境变量请尝试在windows \ system32目录之前放置java \ bin目录。

这使SDK Manager能够使用java \ bin目录下的java,否则它会使用在system32文件夹中找到的java。

这应该有帮助!

29

我有同样的问题,我想我已经安装了19 API,但我没有。

在CMD型 “机器人”

向下滚动到Android 4.2.2(API 19)

检查所有并安装它们。

即使你已经安装了20 API和所有其他包和安装的工具,你需要这个。

+5

错误消息的措辞很烂,但是这有助于柯蒂斯。 “目标” = API,它' s版本4.4.2。有一些依赖于这个软件包的cordova依赖关系,尽管我不能告诉你它到底是什么。 好作品柯蒂斯! – etusm

+2

这为我解决了这个非常烦人的问题。感谢您的简短指导。 – JoshGough

+2

非常感谢。 – nixis

11

当您运行phonegap create myApp,有一个脚本,检查你有一个特定的Android平台版本。它正在寻找该平台是在文件中(对于OS X):/Users/username/.cordova/lib/android/cordova/3.5.0/framework/project.properties 和科尔多瓦3.5.0具有行: target=android-19

科尔多瓦和PhoneGap的是在这方面同样如此科尔多瓦任何引用也适用到phonegap。

要检查是否有这样的目标运行: android list targets,你应该有这样一个条目:

Available Android targets:

id: 1 or "android-19" Name: Android 4.4.2 Type: Platform API level: 19 Revision: 3 Skins: HVGA, QVGA, WQVGA400, WQVGA432, WSVGA, WVGA800 (default), WVGA854, WXGA720, WXGA800, WXGA800-7in Tag/ABIs : default/armeabi-v7a

默认情况下,仅安装最新的目标这是目前android- 20。

你有两个选择:

  1. 安装相匹配的是在project.properties文件的目标。这似乎是最好的方法,因为这将是科尔多瓦测试的目标。
  2. 编辑project.properties文件以匹配您安装的目标。这应该让你过去这个问题,但可能会有意想不到的影响。

要按照Curtis的说法安装额外的目标,请运行Android SDK管理器(android)并选择您需要的Android目标。注意这些出现在Tools文件夹下面,它也有许多不同的版本,但安装不同版本的工具不能解决这个问题。

您还可以看到您已安装在Android sdk的platforms目录中的目标。

+1

谢谢!我更新了** /用户名/用户名/ .cordova/lib/android/cordova/3.5.0/framework/project.properties **到_android-20_,它工作正常! –

+0

在Windows 7中,我在/Users/username/.cordova下找到三个project.properties文件。一个(在〜模板中)说“target = This_gets_replaced”。两个说“target = android-19”。其中之一位于C:\ Users \ username \ .cordova \ lib \ npm_cache \ cordova-android \ 3.6.4 \ package \ test \ project.properties中,其中一个位于C:\ Users \ username \ .cordova \ lib \ npm_cache \科尔多瓦 - 机器人\ 3.6.4 \包\框架\ project.properties。根据之前的评论,我会改变框架中的一个,但如果随后出现问题,可能会知道另一个存在。 – mcduffee

-2

关于将cordova切换到已安装的版本 - 我在C:\ Users [用户名] .cordova \ lib \ npm_cache \ cordova-android \ 3.6.4 \ package \ framework \ project.properties中找到它。 更改为目标21后,“cordova platform add android”工作。感谢您的线程 - 有帮助。

相关问题