离子需要安卓目标19,我安装了目标21

32t*_*ths 5 cordova ionic-framework

试图安装离子,当添加Android平台时,我收到以下错误

Error: Please install Android target "android-19".
Hint: Run "android" from your command-line to open the SDK manager.
    at /home/algotree/.cordova/lib/npm_cache/cordova-android/3.6.4/package/bin/lib/check_reqs.js:174:19
    at _fulfilled (/home/algotree/.cordova/lib/npm_cache/cordova-android/3.6.4/package/bin/node_modules/q/q.js:798:54)
    at self.promiseDispatch.done (/home/algotree/.cordova/lib/npm_cache/cordova-android/3.6.4/package/bin/node_modules/q/q.js:827:30)
    at Promise.promise.promiseDispatch (/home/algotree/.cordova/lib/npm_cache/cordova-android/3.6.4/package/bin/node_modules/q/q.js:760:13)
    at /home/algotree/.cordova/lib/npm_cache/cordova-android/3.6.4/package/bin/node_modules/q/q.js:574:44
    at flush (/home/algotree/.cordova/lib/npm_cache/cordova-android/3.6.4/package/bin/node_modules/q/q.js:108:17)
    at process._tickCallback (node.js:419:13)
Error: /home/algotree/.cordova/lib/npm_cache/cordova-android/3.6.4/package/bin/create: Command failed with exit code 8
    at ChildProcess.whenDone (/usr/local/lib/node_modules/cordova/node_modules/cordova-lib/src/cordova/superspawn.js:135:23)
    at ChildProcess.EventEmitter.emit (events.js:98:17)
    at maybeClose (child_process.js:753:16)
    at Process.ChildProcess._handle.onexit (child_process.js:820:5)
Run Code Online (Sandbox Code Playgroud)

但我已经安装了android-21.如何在不安装target-19的情况下使用它?

小智 10

发生这种情况是因为在运行命令时会检查脚本以查看目标android virsion ionic create myApp.

此脚本位于cordova目录中 - C:\Users\[user]\.cordova\lib\npm_cache\cordova-android\3.6.4\package\framework\project.properties(对于Windows).

当你进入project.properties文件时,你会看到类似于下面的内容.

  1. split.density = FALSE

  2. 目标=机器人-19

  3. APK的配置=

  4. renderscript.opt.level = O0

  5. android.library =真

你需要修改一下这条线, 希望这会有所帮助,因为我对Ionic和混合移动开发都很陌生target=android-19,target=android-21但我记得读过一些有同样问题的人.我自己遇到了这个错误,虽然我没有安装android-19修复它的问题.

您可以通过在文件资源管理器中运行来查看可用目标而无需在每个目录中查找的另一种方法是android list target从内部运行C:\Users\[user].

  • 这不适合我.该文件被覆盖回android-19. (5认同)