我在成功安装jdk和sdk之后,执行cordova run android命令后,遇到过四个问题
1,could not find an installed version of gradle either in android studio
这个问题是因为sdk某个版本后,打包需要用到gradle(这是一个自动化构建工具),
解决方法:
(1)下载某个版本gradle-x.x-bin.zip ,下载地址(https://services.gradle.org/distributions)
(2)解压之后添加全局变量就可以了PATH=C:\Program Files\gradle-x.x\bin(路径随意)
(3)gradle -v , 查看一下版本
2,License for package Android SDK Platform 29 not accepted
这个问题的意思就是你得同意的license
(1)找到你sdk的安装路径,sdk路径下的tools下的bin文件,里边有一个sdkmanager.bat文件
(2)需要在这个路径下执行sdkmanager --licenses,如果能直接在sdk的根目录下有licenses文件夹,这个文件夹里边有 android-sdk-license文件的话,那就可以了,直接选yes。但是很大的概率会出现sdkmanager不是命令什么的问题。
(3)如果有上个问题出现,就用系统自带的cmd,去执行sdkmanager --licenses命令,这个他会提示报错的地方。但是有可能回报3的错误,那就继续往下看
3,Error: Unknown argument --licenses
(1)这个问题是sdkmanager没有识别licenses这个参数,这个时候需要执行sdkmanager --update更新sdkmanager,
(2)如果直接提示done,这个时候就是更新完毕了,可以再尝试去打包一下,还有可能报4错误
4,An error occurred during installation: Failed to move away or delete existing target file: xxx Move it away manually and try again
(1)造成这种情况的原因就是更新sdk的时候,需要替换tools文件夹中的文件,但是tools文件夹正被系统调用,没法替换,所以先把tools文件夹复制到其他的地方(如桌面),在桌面的tools的bin中执行sdkmanager --update,就可以了
(2)这个时候再去打包试试,就没问题了