cordova+vue混合式开发App
应要求第一次使用cordova打包了一下vue写的app项目,期间遇到了不少问题,整理一下流程并记录一下常见问题吧。
cordova打包项目需要的环境配置啥的就不具体讲啦,百度一下很多教程~
1. 创建cordova项目并添加Android平台
创建项目指令:cordova create hello com.example.hello helloworld
第一个hello是cordova自动生成的项目文件夹名称
第二个com.example.hello我一般填写公司的名称,比如:com.csdn.hello
第三个helloword是打包完成后app的名称。
创建完cordova项目后我们需要通过指令进入cordova项目的路径下才可进行后续操作:
进入项目目录指令:cd hello
进入项目目录后,我们需要添加对应的平台,这里我们用的是Android平台
添加平台指令:cordova platform add android
2. 打包vue项目
打包vue项目指令:npm run build
首先打包好你的h5项目,我们公司是用vue框架写的项目,因此打包的时候遇到一个问题,即打包生成的静态页面打开为空白页,百度搜索之后发现是路径指向问题,只需要在vue.config.js文件中修改publicPath的值为“./”即可解决问题。
publicPath: '/', => publicPath: './',
1
这里有一种比较便捷的打包方式,即修改你的输出文件路径,将它指向你cordova项目中静态文件存放的地址。这样可以省去每次打包好vue项目后再复制粘贴到cordova项目中的麻烦。
具体修改outputDir值即可:
//原始值
outputDir: 'dist',
//修改为 具体地址视开发情况而定
outputDir: 'E:\cordova\demo\platforms\android\app\src\main\assets\www',
注意:每次打包前要清空cordova项目中对应目录下的静态文件!先清空,在打包!
如果打包vue项目时没有修改outputDis路径,则将输出的dist文件下的内容,全部复制到E:\cordova\demo\platforms\android\app\src\main\assets\www路径下。注意不要随便删除跟插件有关的js文件,否则会造成打包后插件不生效的情况!
上图中绿色线框选出的是cordova自动生成的插件相关文件,建议不要随便修改!红线框出的是复制进来的vue项目打包输出后的文件。
3. 安装所需的插件
安装插件指令:cordova plugin add cordova-plugin-XXX
具体插件名称看项目中用到了哪些,一般安装插件有三种方法:
cordova官方插件。比如 cordova plugin add cordova-plugin-camera
通过url安装。比如 cordova plugin add https://github.com/nordnet/cordova-hot-code-push.git
安装本地插件。比如 cordova plugin add E:\cordova\plugins\cordova-hot-code-push-local-dev-addon
如果需要删除某些插件可以使用:cordova plugin remove XXXX
如果需要查看已安装的插件列表可以使用: cordova plugin list
4. 修改APP的名称和图标
具体开发时我们可能还需要重新修改APP的名称和图标:
修改名称
找到hello\platforms\android\app\src\main\res\values文件夹下的strings.xml文件,修改app_name值:
<?xml version='1.0' encoding='utf-8'?>
<resources>
<string name="app_name">APP名称</string>
<string name="launcher_name">@string/app_name</string>
<string name="activity_name">@string/launcher_name</string>
</resources>
2.修改图标
找到E:\cordova\demo\platforms\android\app\src\main\res目录
将上图红框文件夹中的图片替换为你所需要的图片,每个文件夹对应了不同尺寸的设备,具体对应关系自行百度。
注意修改放入的图片的文件名为ic_launcher_foreground.png!
5. 打包apk
打包APK指令:cordova build android
除了使用指令以外,也可以在AndroidStudio中通过 Build->Build Bundle(s)/APK(s)->Build APK(s) 来输出apk文件。
一般输出的apk文件在
E:\cordova\demo\platforms\android\app\build\outputs\apk\debug目录下,默认的文件名为app-debug.apk。
当然在打包之前尽量现在虚拟机上运行一下程序看看是否有问题,若无问题再打包最好
cordova+vue混合式开发App的更多相关文章
- 如何优雅的使用vue+vux开发app -03
如何优雅的使用vue+vux开发app -03 还是一个错误的示范,但是离优雅差的不远了... <!DOCTYPE html> <html> <head> < ...
- 如何优雅的使用vue+vux开发app -02
如何优雅的使用vue+vux开发app -02 很明显这又是一个错误的示范,请勿模仿 使用动态组件实现保留状态的路由 <!DOCTYPE html> <html> <he ...
- 如何优雅的使用vue+vux开发app -01
如何优雅的使用vue+vux开发app -01 很明显下面是个错误的示范: <!DOCTYPE html> <html> <head> <title>v ...
- vs2017 js cordova + dotnet core 开发app
原文:vs2017 js cordova + dotnet core 开发app 1.记得在index.html加入 <meta http-equiv="Content-Securit ...
- Cordova+Vue构建Hybrid APP简易实操
当下APP市场,因为Native APP开发成本高,Web APP不稳定,混合开发APP大行其道,成为越来越多开发者的首选.Hybrid APP开发框架也比较多,Weex.Ionic.PhoneGap ...
- 使用cordova + vue搭建混合app框架
版权声明:本文为博主原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接和本声明.本文链接:https://blog.csdn.net/zxj0904010228/article ...
- 用vue快速开发app的脚手架工具
前言 多页面应用于结构较于简单的页面,因为简答的页面使用router又过于麻烦.本脚手架出于这样的场景被开发出来. 使用脚手架搭配Hbuilder也同样可以快速使用vue开发安卓和IOS APP. 本 ...
- 实践分享:开始用Cordova+Ionic+AngularJS开发App
http://www.cocoachina.com/webapp/20150707/12395.html 本文是一篇关于我本人在使用Cordova+Ionic以及AngularJS开发移动App的过程 ...
- cordova 框架下开发app推送
cordova提供官方的push pluging,使用的是Google的GCM消息推送服务,一些网络原因,国内GCM可能不怎么好用.所以选择国内的第三方插件. 可供选择的有百度云推送,腾讯云信鸽,极光 ...
随机推荐
- 如何在JS代码中消除for循环
参考博客:https://www.cnblogs.com/momo798/p/10077600.html
- 关于Manjaro+kde桌面Tim闪退的解决
文章目录 关于Manjaro+kde桌面Tim闪退的解决 参考 Tim 我的问题 QQ 我的问题 WeChat 我的问题 本文结束 关于Manjaro+kde桌面Tim闪退的解决 参考 https:/ ...
- 初探three.js几何体
今天说说three.js的几何体,常见的几何体今天就不说了,今天说一说如何画直线,圆弧线,以及高级几何体. 1. 画一条直线 画直线我们使用THREE.Geometry()对象. //给空白几何体添加 ...
- MySQL高级查询之索引创建、删除、增加、修改、慢sql、explain解释sql
day04数据库 昨日知识点回顾 1.单表操作 1.单表的操作 条件查询的优先级别: where > group by >having > order by > limit; ...
- springboot 集成jsp
建立好springboot项目,确定能成功运行 在application.properties文件中添加 server.context-path=/bootserver.port=8080spring ...
- 《Java练习题》习题集四
编程合集: https://www.cnblogs.com/jssj/p/12002760.html Java总结:https://www.cnblogs.com/jssj/p/11146205.ht ...
- 《Java算法》贪心算法
贪心算法(又称贪婪算法)是指,在对问题求解时,总是做出在当前看来是最好的选择.也就是说,不从整体最优上加以考虑,他所做出的是在某种意义上的局部最优解. 贪心算法的经典案例: 跳跃游戏: 给定一个非负整 ...
- uni-app实现图片和视频上传功能
使用uni-app实现点击上传,既可以上传视频,有可以上传图片,图片预览,删除图片和视频功能,最终效果如下.uni-app里面没有提供同时上传视频和图片这个插件,只能靠自己手写, 1.页面布局 通过 ...
- C#程序编写高质量代码改善的157个建议【16-19】[动态数组、循环遍历、对象集合初始化]
前言 软件开发过程中,不可避免会用到集合,C#中的集合表现为数组和若干集合类.不管是数组还是集合类,它们都有各自的优缺点.如何使用好集合是我们在开发过程中必须掌握的技巧.不要小看这些技巧,一旦在开 ...
- 闲鱼hu超赞,有赞必回,24小时在线!咸鱼互赞超赞留言评
有没有在闲鱼上卖东西没有浏览量的人! 我们来一起互赞互相提高彼此宝贝的浏览量,从而更快的促进交易! 我打算建个群,我们可以一起交流下哈! 需要的进入QQ群 : 530980712