Cordova未知错误,它只是在构建“apk”时停止

时间:2018-03-30 11:19:24

标签: android cordova

我刚刚与cordova合作。

我已经在我的计算机系统上安装了cordova。

我遵循了从互联网上获得的指示。

我已经安装了节点js版本“V4.4.5 X86”。

我已经安装了Ant Apache版本“1.9.6”。

我已经安装了git版本“2.16.2.windows.1”。

我使用“npm”安装了cordova版本“8.0.0”。

我使用“npm”安装了phonegap版本“8.0.0”。

我已经安装了独立的Android SDK“Installer R24.4.1 Windows”。

我在windows上设置了我的全局环境变量。

这些是我输入的变量列表:

- JAVA_HOME : C:\Program Files\Java\jdk1.8.0_05
- ANDROID_HOME : C:\Program Files\Android\android-sdk
- ANT_HOME : C:\apache-ant-1.9.6

我已为“PATH”变量添加了值:

- C:\Program Files\Java\jdk1.8.0_05\bin;
- C:\Program Files\Android\android-sdk\tools;
- C:\Program Files\Android\android-sdk\platform-tools;

上面四个是我添加的新值,当然我使用分号作为值分隔符。

这是我计算机上PATH变量的完整值:

- C:\Windows\system32;
- C:\Windows;
- C:\Windows\System32\Wbem;
- C:\Windows\System32\WindowsPowerShell\v1.0\;
- C:\Program Files\nodejs\;
- C:\Program Files\Java\jdk1.8.0_05\bin;
- C:\Program Files\Android\android-sdk\tools;
- C:\Program Files\Android\android-sdk\platform-tools;
- C:\apache-ant-1.9.6\bin;C:\Program Files\Git\cmd

当我开始运行cordova命令来创建项目时,它很好。

这是命令。

cordova create hello com.example.hello HelloWorld

命令运行正常。

之后我运行命令添加android平台。

这是命令。

cordova platform add android

命令运行正常。

然后当我使用此命令构建应用程序时出现问题。

cordova build

当命令运行时,它会停止直到此。

Android Studio project detected
ANDROID_HOME=C:\Program Files\Android\android-sdk
JAVA_HOME=C:\Program Files\Java\jdk1.6.0_16

就这样停下来,没有错误,我不知道该怎么做。

我一直用--verbose来了解细节。

以下是--verbose输出详细信息。

No scripts found for hook "before_build".
No scripts found for hook "before_prepare".
Checking config.xml and package.json for saved platforms that haven't been added to the project
Config.xml and package.json platforms are the same. No pkg.json modification.
Package.json and config.xml platforms are different. Updating config.xml with most current list of platforms.
PlatformApi successfully found for platform android
Android Studio project detected
Checking config.xml for saved plugins that haven't been added to the project
Checking for any plugins added to the project that have not been installed in android platform
No differences found between plugins added to project and installed in android platform. Continuing...
Generating platform-specific config.xml from defaults for android at D:\Project\hello\platforms\android\app\src\main\res\xml\config.xml
Merging project's config.xml into platform-specific android config.xml
Merging and updating files from [www, platforms\android\platform_www] to platforms\android\app\src\main\assets\www
Wrote out android application name "HelloWorld" to D:\Project\hello\platforms\android\app\src\main\res\values\strings.xml
android-versionCode not found in config.xml. Generating a code based on version in config.xml (1.0.0): 10000
Wrote out Android package name "com.example.hello" to D:\Project\hello\platforms\android\app\src\main\java\com\example\hello\MainActivity.java
This app does not have launcher icons defined
This app does not have splash screens defined
This app does not have additional resource files defined
Prepared android project successfully
No scripts found for hook "after_prepare".
No scripts found for hook "before_compile".
ANDROID_HOME=C:\Program Files\Android\android-sdk
JAVA_HOME=C:\Program Files\Java\jdk1.6.0_16

但我仍然不知道上面的输出是什么意思。

这是我遵循的教程。

- https://www.youtube.com/watch?v=atH7naB4fDk -----> Installing Cordova & Android SDK on Windows 7, 8 & 10 to Develop Mobile app

- https://www.youtube.com/watch?v=qMhBnzGIsqk -----> How to Install Phonegap CLI and Cordova CLI on windows for android

我尝试使用phonegap命令替代,因为我已经在我的机器上安装了phonegap。

我使用此命令来构建我的项目。

phonegap create testing

命令运行正常。

之后我运行add forrroid platform for phonegap的命令。

这是命令。

phonegap platform add android

命令运行正常。

然后问题是使用此命令构建应用程序。

phonegap build android

这是命令的输出。

[phonegap] executing 'cordova build android' ...
[phonegap] completed 'cordova build android --no-telemetry'

问题是我没有得到“apk”文件。

拜托,我真的需要帮助。

这真让我感到绝望。

我仍然不知道该怎么做才能解决这个问题。

我录制了视频,所以你们都可以看到我真正面对的是什么。

https://www.youtube.com/watch?v=fDRHcaAt_WY

我已经使用SDK Manager下载了所有我需要的东西。

这是截图。

SCREENSHOT 1

SCREENSHOT 2

我希望你也能观看视频。

我没有为我的视频率写这个问题。

我制作了一个视频,以便您更清楚地了解我遇到的问题。

我很抱歉我的英语不好。

2 个答案:

答案 0 :(得分:1)

所以你还没有安装Android Studio。这是问题的根源。但你可以避免它们。

首先要诊断问题,您需要运行cordova requirements命令。你已经运行了它,现在你看到了输出:

Please install Android target / API level: "android-26". 
Hint: Open the SDK manager by running: "C:\Program Files\Android\android-sdk\too ls\android.bat" 
You will require: 
1. "SDK Platform" for API level android-26 
2. "Android SDK Platform-tools (latest) 
3. "Android SDK Build-tools" (latest) 
Gradle: not installed Could not find an installed version of Gradle either in Android Studio, or on your system to install the gradle wrapper. Please include gradle in your path, or install Android Studio

所以你可以看到两个问题。

  1. 您没有安装android平台/ build-tools版本26。科尔多瓦需要它。
  2. 要解决此问题:打开Android SDK管理器并检查所需的平台。在你的情况下android-26。不要忘记检查最新的构建工具和平台工具。

    1. 您没有安装gradle。要安装它,您可以使用铲工具(
    2. 要解决此问题:打开PowerShell(Run-> powershell)。运行以下命令(您需要使用PowerShell版本3来执行此操作)。

      iex (new-object net.webclient).downloadstring('https://get.scoop.sh')
      scoop install gradle
      

      现在再次运行cordova requirements命令。应该说你可以建立这个项目。

      更简单的方法就是安装已经包含gradle和Android SDK管理器的Android Studio。

答案 1 :(得分:0)

在使用cordova构建Android APK之前,有几件事需要注意。

首先:确保您已安装"nodejs",您可以从"nodejs"官方网站nodejs下载"https://nodejs.org/en/",以便获得最新版本的"nodejs" }。

第二:确保您已安装"npm""npm"代表"Node Package Manager",因此您可以使用"npm"命令安装cordova。要查看您已安装"npm",您可以在"nodejs"文件夹中查看通常位于"C:\Program Files (x86)\nodejs"的文件夹,或安装nodejs时文件夹位置取决于首次配置的位置。

第三:检查计算机中已安装"npm"后,您已准备好在命令提示符下运行cordova安装"npm install -g cordova",然后等待安装完成

第四:在你的机器中安装"cordova"之后,现在你可以按照cordova官方wbsite的说明创建一个新的android项目。 "https://cordova.apache.org/docs/en/latest/guide/cli/index.html"

好的,现在让我们继续第5步。

第五:在你按照cordova官方网站的指示直到你创建一个新的android项目并且直到你创建了一个Android平台之后,你仍然无法在你安装"gradle"之前构建一个APK你的电脑。

第六:您可以从gradle官方网站gradle下载"https://gradle.org/",或者如果您下载只需要的zip文件,可以从此网站"https://services.gradle.org/distributions/"下载该zip文件将文件解压缩到您想要的位置,但我会假设您将其安装在"C:"位置,我将假设您使用的是Windows。

第七:在这一步可能很难或者可能没有,因为你必须确保你已经设置了所有需要构建android APK的环境变量。要设置环境变量,您可以点击桌面上的"start"按钮,然后在搜索框中输入"variable"并选择"Edit the system environment variables",点击后,会出现"System Properties"窗口然后单击"Environment Variables"按钮,单击按钮后,将出现"Environment Variables"窗口。现在,您可以设置一些APK构建所需的新变量。

在我们继续之前有一件事你需要确定,你必须安装一个"Android SDK Manager"才能下载所有需要建立一个Android APK基于Android版本,你从你的{{1 }}

要检查您的Android版本,只需在命令提示符下键入cordova

您可以下载独立版"cordova platform version android",以便从此网站"Android Development Tools Installer"获取您自己的"Android SDK Manager"我从stackoverflow回复链接"https://filehippo.com/download_android_sdk/download/dd03cc329af0cd74b0e34afce1b4888e/"获取下载链接。

单独下载"https://stackoverflow.com/a/43893235/3367798"后,您可以将其安装到您的计算机上,然后在安装后,可以打开位于您安装时已配置的文件夹的"Android Development Tools Installer"

打开"SDK Manager"后,您可以下载所有需求,以便创建Android APK。

好的,现在这些是您必须输入的变量列表。您必须在"SDK Manager"部分输入。

"System variables"

在这种情况下,我将Variable name: _JAVA_OPTIONS Variable value: -Xmx512M Variable name: ANDROID_HOME Variable value: D:\Android\android-sdk 放在"Android Development Tool"位置。

"D:"

在您添加上述所有环境变量后,现在您必须在Variable name: GRADLE_HOME Variable value: C:\GRADLE Variable name: JAVA_HOME Variable value: C:\Program Files (x86)\Java\jdk1.8.0_121 部分中为"Path"添加值,以下是您必须添加的值。

"System variables"

请注意分号%JAVA_HOME%\bin; %ANDROID_HOME%\tools; %ANDROID_HOME%\platform-tools; %GRADLE_HOME%\bin 符号,因为它是系统读取的分隔符。

八:按照上述所有说明操作后,您可以使用此命令";"建立自己的APK。

请注意"cordova build android",您必须确保已在计算机上安装了"JAVA"。它通常位于"JAVA"。如果您没有看到该文件夹​​,则必须从此网站"C:\Program Files (x86)\Java"下载。

如果你仔细阅读上面的所有说明,那么它应该有效,因为对我来说它是有效的。

我希望我上面写的内容很有用。

欢呼声。