cordova+vue 项目打包成APK应用遇到的问题和解决方法
公司前端界面用的是vue,我要嵌入到Android中生成App
第一步:安装node
node安装:直接进入官网https://nodejs.org/zh-cn/,下载最新版本安装。安装之后在命令行中使用”node -v” 检查安装是否成功。
npm安装:由于新版的nodejs已经集成了npm,所以node安装时npm也一并安装好了。同样可以通过输入 “npm -v” 来测试是否成功安装。
第二步:安装cordova
1. 打开cmd 输入命令:npm install -g cordova .安装cordova
2. 验证是否安装成功,cmd中输入命令: cordova -v 如下图为安装成功

第三步:新建cordova项目:
1.(进入到Android项目的工作空间,输入命令:cordova create DianChiApp com.dhsr.dianchi Dianchi),如下图:

2. 输入命令:cordova platform add android 生成Android平台的cordova库,这时platforms文件夹中会生成一个android文件夹
生成的项目目录如图:

第四步:打包APK前测试
1. 先检查androidsdk是否正确安装,执行命令:cordova requirements 成功情况如下图:

第五步:正式打包APK
输入命令:cordova build android
这步错误率很高 我的报错:
Error occurred during initialization of VM Could not reserve enough space for 2097152KB object heap
Try: Run with --stacktrace option to get the stack trace. Run with --info or --debug option to get more log output. Failed to install 'cordova-plugin-whitelist':Error: cmd: Command failed with exit code 1 at ChildProcess.whenDone (D:\CordovaSpace\helloWorld\platforms\android\cordova\node_modules\cordova-common\src\superspawn.js:169:23) at emitTwo (events.js:106:13) at ChildProcess.emit (events.js:191:7) at maybeClose (internalild_process.js:850:16) at Process.ChildProcess._handle.onexit (internalild_process.js:215:5) Error: cmd: Command failed with exit code 1
在百度找了很多解决办法 改变AS的内存等都没有解决
最终解决办法是: 在环境变量中添加一个系统变量,变量名:_JAVA_OPTIONS,变量值:-Xmx512M(这个绝对有效,没用的话重启电脑重试)
命令运行成功后打包完成,在真机中运行即可
附加:打包签名版apk
1. cmd中进入项目目录 输入命令:cordova build --release android,如下图:(成功后项目文件下会多出一个name.keystore文件,项目的app\build\outputs\apk\release下面会多处一个未签名的apk)

2. 上步执行完成后输入命令:keytool -genkeypair -alias name.keystore -keyalg RSA -validity 4000 -keystore name.keystore 如下图:(填写签名需要的信息)

3. 上步运行成功功后,将name.keystore文件和app\build\outputs\apk\release下面会多处一个未签名的apk放到同一个文件夹下边,并将apk重命名为:name_unsigned.apk ,如图:

进入到两个文件所在的文件夹下,我的是:D:\setup\androidCompanyProjectWorkSpace\DianChiApp\platforms\android\app\build\outputs\apk\release
cmd中执行命令:jarsigner -verbose -keystore name.keystore -signedjar name.apk name_unsigned.apk name.keystore 如下图:

运行成功后多处一个name.apk的签名文件 如下图:(成功)

备忘,希望能帮助到大家
cordova+vue 项目打包成APK应用遇到的问题和解决方法的更多相关文章
- cordova+vue 项目打包成Android(apk)应用
现在使用vue开发的项目越来越多,使用vue开发的移动端打包就成了最大的问题.现在前端打包方案有好多种,但是综合来说,我比较喜欢用cordova来进行Android和ios的打包,配置完成之后,每次只 ...
- cordova将vue项目打包成apk
1,若vue项目不在cordova项目里,直接把它复制进来,避免改动代码的麻烦 2,直接按照以下链接进行操作即可 链接:https://www.cnblogs.com/qirui/p/8421372. ...
- Android Studio将项目打包成apk
Android Studio将项目打包成apk 第一种方法:适合自己调试用. (1)直接在项目中生成: (2)位置是在你的项目中 第二种方法:适合发布应用. (1)找到Generate Signed ...
- vue项目初始化时npm run dev报错webpack-dev-server解决方法
vue项目初始化时npm run dev报错webpack-dev-server解决方法 原因:这是新版webpack存在的BUG,卸载现有的新版本webpack,装老版本就好webpack-dev- ...
- Android项目打包成APK文件
第一步:右键单击该项目选择Export项目 显演示样例如以下界面:选择Exprot Android Application 第二步:输入项目名称,默认的情况下是原始的项目名称 下一步: 点击 Crea ...
- vue项目打包成html,在本地点击直接能打开
默认情况下vue项目打包后,本地打开index.html是空白的,有报错.Failed to load resource: net::ERR_FILE_NOT_FOUND 这时需要修改config-& ...
- Android开发把项目打包成apk
做完一个Android项目之后,如何才能把项目发布到Internet上供别人使用呢?我们需要将自己的程序打包成Android安装包文件--APK(Android Package),其后缀名为" ...
- (转)Android开发把项目打包成apk
转:http://blog.csdn.net/luoyin22/article/details/7862742 做完一个Android项目之后,如何才能把项目发布到Internet上供别人使用呢?我们 ...
- Vue项目中出现Loading chunk {n} failed问题的解决方法
最近有个Vue项目中会偶尔出现Loading chunk {n} failed的报错,报错来自于webpack进行code spilt之后某些bundle文件lazy loading失败.但是这个问题 ...
随机推荐
- luogu P5414 [YNOI2019]排序 |动态规划
题目描述 对于一个数列{7, 1, 2, 3}进行排序,我们可以把7 从头移动到尾.但是这个操作的成本是7,并不是最佳的.最佳的排序方式是将连续的1.2.3 移动到7 的前面.这样的话,总的操作成本就 ...
- 2020年深度学习DeepLearning技术实战班
深度学习DeepLearning核心技术实战2020年01月03日-06日 北京一.深度学习基础和基本思想二.深度学习基本框架结构 1,Tensorflow2,Caffe3,PyTorch4,MXNe ...
- react-native 相对项目路径导入组件 ___ babel-plugin-root-import
在使用react-native的时候,经常要自定义很多组件,但是只能使用../../../的方式,经常不记得这是多深,有没有一个插件,能自动帮我们解决这样的问题? 使用指南 我们使用的目标要达到以下的 ...
- HTML_body中常用的标签部分
meta: <!DOCTYPE html> <html> <head> <meta charset="utf-8" /> <t ...
- ARTS-S redis3.2.10通过ip访问
只用把配制文件里的bind 127.0.0.1改成0.0.0.0,然后重启即可.不用再有别的配制.
- 基于iCamera测试宽动态全局摄像头mt9v034或mt9v032小结
基于iCamera测试宽动态全局摄像头mt9v034或mt9v032小结 先看看硬件特点 主要是:全局快门.宽动态 然后看看硬件测试,usb采集出图 再看看寄存器配置 主要测试,可以修改分辨率,修改曝 ...
- 关于toString的自动调用
class a{ } class b extends a{ String rr = "zzz"; public String toString(){ return "aa ...
- 用Python抢到回家的车票,so easy!
“ 盼望着,盼望着,春节的脚步近了,然而,每年到这个时候,最难的,莫过于一张回家的火车票. 据悉,今年春运期间,全国铁路发送旅客人次同比将增长 8.0%.达到 4.4 亿人次. 2020 年铁 ...
- linux之文件的属性
1.我们使用ls -al查看目录下的文件 2.先看第一个权限 -rw-r--r-- 1 hui hui 3806 Oct 3 17:48 .bashrc 对于.bashrc,其权限是-rw-r--r- ...
- .NET Core使用RabbitMQ
RabbitMQ简介 RabbitMQ是一个开源的,基于AMQP(Advanced Message Queuing Protocol)协议的完整的可复用的企业级消息队,RabbitMQ可以实现点对点, ...