应要求第一次使用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的更多相关文章

  1. 如何优雅的使用vue+vux开发app -03

    如何优雅的使用vue+vux开发app -03 还是一个错误的示范,但是离优雅差的不远了... <!DOCTYPE html> <html> <head> < ...

  2. 如何优雅的使用vue+vux开发app -02

    如何优雅的使用vue+vux开发app -02 很明显这又是一个错误的示范,请勿模仿 使用动态组件实现保留状态的路由 <!DOCTYPE html> <html> <he ...

  3. 如何优雅的使用vue+vux开发app -01

    如何优雅的使用vue+vux开发app -01 很明显下面是个错误的示范: <!DOCTYPE html> <html> <head> <title>v ...

  4. vs2017 js cordova + dotnet core 开发app

    原文:vs2017 js cordova + dotnet core 开发app 1.记得在index.html加入 <meta http-equiv="Content-Securit ...

  5. Cordova+Vue构建Hybrid APP简易实操

    当下APP市场,因为Native APP开发成本高,Web APP不稳定,混合开发APP大行其道,成为越来越多开发者的首选.Hybrid APP开发框架也比较多,Weex.Ionic.PhoneGap ...

  6. 使用cordova + vue搭建混合app框架

    版权声明:本文为博主原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接和本声明.本文链接:https://blog.csdn.net/zxj0904010228/article ...

  7. 用vue快速开发app的脚手架工具

    前言 多页面应用于结构较于简单的页面,因为简答的页面使用router又过于麻烦.本脚手架出于这样的场景被开发出来. 使用脚手架搭配Hbuilder也同样可以快速使用vue开发安卓和IOS APP. 本 ...

  8. 实践分享:开始用Cordova+Ionic+AngularJS开发App

    http://www.cocoachina.com/webapp/20150707/12395.html 本文是一篇关于我本人在使用Cordova+Ionic以及AngularJS开发移动App的过程 ...

  9. cordova 框架下开发app推送

    cordova提供官方的push pluging,使用的是Google的GCM消息推送服务,一些网络原因,国内GCM可能不怎么好用.所以选择国内的第三方插件. 可供选择的有百度云推送,腾讯云信鸽,极光 ...

随机推荐

  1. A.Sweet Problem

    题目:甜蜜的问题 题意:你有三堆糖果:红色,绿色,蓝色 第一堆有r个糖果,第二堆有g个糖果,第三堆有b个糖果 每天都可以吃两个不同颜色的糖果,找出可以吃糖果的最大天数 分析:先排下序,如果最大堆大于等 ...

  2. LSI系列芯片Raid卡配置方法、管理手册

    说明 本手册适用于LSI芯片Raid卡 包括但不限于Inspur 2008/2108 Raid卡.LSI 9240/9260/9261/ 9271 等Raid卡. 不同型号的Raid卡在某些功能上的支 ...

  3. ubuntu用户帐号

    与用户帐号相关的有几个非常重要的文件/ect/passwd,/etc/shadow,/etc/group /etc/passwd 执行 head -n 5 /ect/passwd显示前5行,内容如下: ...

  4. CapSupport 的使用

    CapSupport 是在CAP的操作上做了一些封装 目的是让事务同时执行或者同时回滚 startup services.AddCapSupport((optaion) => { optaion ...

  5. hdu 2955 Robberies (01背包好题)

    Robberies Time Limit: 2000/1000 MS (Java/Others)    Memory Limit: 32768/32768 K (Java/Others)Total S ...

  6. 《Java基础知识》Java注解"@"详解

    Java注解含义: Java注解,顾名思义,注解,就是对某一事物进行添加注释说明,会存放一些信息,这些信息可能对以后某个时段来说是很有用处的.Java注解又叫java标注,java提供了一套机制,使得 ...

  7. 学习Python编程技术的流程与步骤,自学与参加培训学习都适用

     一.清楚学习目标 无论是学习什么知识,都要有一个对学习目标的清楚认识.只有这样才能朝着目标持续前进,少走弯路,从学习中得到不断的提升,享受python学习计划的过程. 虽然目前的编程语言有很多,但是 ...

  8. Nginx-HTTP Strict Transport Security(HSTS)

    HTTP Strict Transport Security(HSTS) HTTP Strict Transport Security(通常简称为HSTS)是一个安全功能,它告诉浏览器只能通过HTTP ...

  9. python探索微信朋友信息

    一.itchat itchat是一个开源的微信个人号接口,这一次就用它来来玩玩. 在使用之前,先下载,老规矩通过 pip install itchat 即可安装. 想要获取朋友圈信息,只需要几行代码就 ...

  10. Hack the Breach 2.1 VM (CTF Challenge)

    主机扫描: ╰─ nmap -p- -A 192.168.110.151Starting Nmap 7.70 ( https://nmap.org ) at 2019-08-29 09:48 CSTN ...