【问题标题】:Can't seem to generate an APK from ionic project似乎无法从 ionic 项目生成 APK
【发布时间】:2018-08-19 21:11:31
【问题描述】:

我是 ionic 新手,试图获取一个用于调试的 apk,我在项目目录中使用了以下命令:

ionic cordova platform add android

我确实得到了“platforms/android”目录

然后我用了:

ionic cordova build android

这就是我所追求的:

     ionic-app-scripts build --target cordova --platform android
[23:57:19]  ionic-app-scripts 3.1.10
[23:57:19]  build dev started ...
[23:57:19]  clean started ...
[23:57:19]  clean finished in 10 ms
[23:57:19]  copy started ...
[23:57:19]  deeplinks started ...
[23:57:19]  deeplinks finished in 36 ms
[23:57:19]  transpile started ...
[23:57:27]  transpile finished in 8.13 s
[23:57:27]  preprocess started ...
[23:57:27]  preprocess finished in less than 1 ms
[23:57:27]  webpack started ...
[23:57:28]  copy finished in 8.97 s
[23:57:35]  webpack finished in 7.63 s
[23:57:35]  sass started ...
Without `from` option PostCSS could generate wrong source map and will not find Browserslist config. Set it to CSS file path or to `undefined` to prevent this warning.
[23:57:40]  sass finished in 4.83 s
[23:57:40]  postprocess started ...
[23:57:40]  postprocess finished in 28 ms
[23:57:40]  lint started ...
[23:57:40]  build dev finished in 20.79 s
[23:57:44]  lint finished in 3.91 s
> cordova build android

You have been opted out of telemetry. To change this, run: cordova telemetry on.
Android Studio project detected
(node:12696) UnhandledPromiseRejectionWarning: CordovaError: Failed to find 'ANDROID_HOME' environment variable. Try setting it manually.
Failed to find 'android' command in your 'PATH'. Try update your 'PATH' to include path to valid SDK directory.
    at C:\Users\h2001\Desktop\myApp\platforms\android\cordova\lib\check_reqs.js:305:19
    at _fulfilled (C:\Users\h2001\Desktop\myApp\platforms\android\cordova\node_modules\q\q.js:854:54)
    at self.promiseDispatch.done (C:\Users\h2001\Desktop\myApp\platforms\android\cordova\node_modules\q\q.js:883:30)
    at Promise.promise.promiseDispatch (C:\Users\h2001\Desktop\myApp\platforms\android\cordova\node_modules\q\q.js:816:13)
    at C:\Users\h2001\Desktop\myApp\platforms\android\cordova\node_modules\q\q.js:877:14
    at runSingle (C:\Users\h2001\Desktop\myApp\platforms\android\cordova\node_modules\q\q.js:137:13)
    at flush (C:\Users\h2001\Desktop\myApp\platforms\android\cordova\node_modules\q\q.js:125:13)
    at _combinedTickCallback (internal/process/next_tick.js:131:7)
    at process._tickCallback (internal/process/next_tick.js:180:9)
(node:12696) UnhandledPromiseRejectionWarning: Unhandled promise rejection. This error originated either by throwing inside of an async function without a catch block, or by rejecting a promise which was not handled with .catch(). (rejection id: 1)
(node:12696) [DEP0018] DeprecationWarning: Unhandled promise rejections are deprecated. In the future, promise rejections that are not handled will terminate the Node.js process with a non-zero exit code.

但我没有得到承诺的 \build\outputs\apk,有什么问题?

更新:我安装了 android studio 并更新了它,仍然得到 ​​p>

(node:12696) UnhandledPromiseRejectionWarning

更新:问题已解决,原来我的 java10 无法与 android 一起使用,只需安装 java8 即可解决问题

【问题讨论】:

    标签: android cordova ionic-framework apk


    【解决方案1】:

    顺便说一句,我没有安装 android sdk,如果这有什么不同?

    您已经回答了自己的问题。 制作 Android APK

    • 您需要 Java SDK 1.8。
    • 具有最新构建工具和平台的 Android SDK
    • JAVA_HOME & ANDROID_HOME 环境变量设置正确。

    您还需要在 Mac 上更新 X-Code 才能创建 IPA。

    【讨论】:

    • 我下载了 java 和 android sdk,仍然得到这个错误:(node:10748) UnhandledPromiseRejectionWarning: UnhandledPromiseRejectionWarning: Unhandled Promise Rejection。此错误源于在没有 catch 块的情况下抛出异步函数内部,或拒绝未使用 .catch() 处理的承诺。 (拒绝 ID:1)
    • 你能粘贴整个错误信息吗?错误信息没有变化吗?
    • (node:8236) UnhandledPromiseRejectionWarning:未处理的承诺拒绝。此错误源于在没有 catch 块的情况下抛出异步函数内部,或拒绝未使用 .catch() 处理的承诺。 (拒绝 id:1)(节点:8236)[DEP0018] DeprecationWarning:不推荐使用未处理的承诺拒绝。将来,未处理的 Promise 拒绝将使用非零退出代码终止 Node.js 进程。
    • Ionic 框架:ionic-angular 3.9.2 @ionic/app-scripts:3.1.10 Cordova:cordova(Cordova CLI):8.0.0 Cordova 平台:无系统:NodeJS:v8.11.3( C:\Program Files\nodejs\node.exe) npm:6.3.0 操作系统:Windows 10 环境:ANDROID_HOME:未设置
    • @HasanAli 转到 Windows 中的高级系统设置。然后导航到环境变量。在系统“ANDROID_HOME”中添加一个新变量,并将该值设置为 SDK 安装的位置。通常是 C:\Users\username\AppData\Local\Android\sdk\ 保存环境变量。
    【解决方案2】:

    您的 PC 中可能没有 android 环境变量。 如果您正在运行 MAC,请尝试运行:

    sudo export ANDROID_HOME=/<installation location>/android-sdk-macosx
    sudo export PATH=${PATH}:$ANDROID_HOME/tools:$ANDROID_HOME/platform-tools
    

    如果您运行的是 Linux,那么:

    export ANDROID_HOME=/<installation location>/android-sdk-linux
    export PATH=${PATH}:$ANDROID_HOME/tools:$ANDROID_HOME/platform-tools
    

    如果您运行的是 Windows,则以管理员身份打开命令提示符并运行:

    set ANDROID_HOME=C:\<installation location>\android-sdk-windows
    set PATH=%PATH%;%ANDROID_HOME%\tools;%ANDROID_HOME%\platform-tools 
    

    它将为您的系统添加环境变量。

    【讨论】:

      猜你喜欢
      • 2019-12-29
      • 1970-01-01
      • 2016-08-28
      • 2021-12-23
      • 1970-01-01
      • 1970-01-01
      • 2018-08-22
      • 2016-03-11
      相关资源
      最近更新 更多