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可能不怎么好用.所以选择国内的第三方插件. 可供选择的有百度云推送,腾讯云信鸽,极光 ...
随机推荐
- python爬虫学习---爬取微软必应翻译(中英互译)
前言本文的文字及图片来源于网络,仅供学习.交流使用,不具有任何商业用途,版权归原作者所有,如有问题请及时联系我们以作处理.作者:OSinooO 本人属于python新手,刚学习的 python爬虫基础 ...
- 适用于带fifo接口的存储器和显示器测试模块封装 挑战cb
cb说完美是没有极限的,对此我表示赞同,自从用了cb的板子,玩开cmos,fpga,sdram,vga等. 不断涌现的是,双端口sdram,四端口sdram,各式各样的封装,但是大同小异,但总是有些不 ...
- win7再分配磁盘新加卷
磁盘在系统刚分区的时候可以做磁盘分区最好 1.右键我的电脑,选在管理 2.在此窗口下依次展开选项,点击存储->磁盘管理,右边是我已经分好的盘不用看的 3.确认一下我的电脑的各个盘的空间,选择要压 ...
- 基于python的种子搜索网站(三)项目部署
项目部署过程 系统要求:ubuntu 16.04(或以上) 环境搭建和配置,必须严格按照以下步骤来安装部署!如有问题可以咨询(weixin:java2048) 安装部分 安装nginx sudo ap ...
- webpack学习_webpack-dev-server自动编译代码
之前每次修改完之后都要执行npm run build来编译,下面有三种方式可以实现代码变化后自动编译代码,下面只重点说webpack-dev-server,其他的请看webpack开发文档 1.web ...
- 记录我的 python 学习历程-Day08 文件的操作
文件操作的初识 用 python 代码对文件进行各种操作. 基本构成: 文件路径:path 打开方式:读.写.追加.读写.写读-- 编码方式:utf-8 / gbk / gb2312-- f = op ...
- Redis Cluster 的数据分片机制
上一篇<分布式数据缓存中的一致性哈希算法> 文章中讲述了一致性哈希算法的基本原理和实现,今天就以 Redis Cluster 为例,详细讲解一下分布式数据缓存中的数据分片,上线下线时数据迁 ...
- ActiveMQ消息队列从入门到实践(4)—使用Spring JMS收发消息
Java消息服务(Java Message Service ,JMS)是一个Java标准,定义了使用消息代理的通用API .在JMS出现之前,每个消息代理都有私有的API,这就使得不同代理之间的消息代 ...
- springIOC及设计模式
一.IOC的概念: 控制反转(inversion of control)和依赖注入(dependency injection)其实是同一个概念.当某个方法需要另外一个对象协助的时候,传统的方法就是有调 ...
- php 弱类型总结
0x01 前言 最近CTF比赛,不止一次的出了php弱类型的题目,借此想总结一下关于php弱类型以及绕过方式 0x02 知识介绍 php中有两种比较的符号 == 与 === <?php $a = ...