详解Vue webapp项目通过HBulider打包原生APP(vue+webpack+HBulider)


Posted in Javascript onFebruary 02, 2019

1、webapp项目已经通过vue-cli搭建的脚手架写好了,然后通过webpack打包成一个部署文件list,如下:

详解Vue webapp项目通过HBulider打包原生APP(vue+webpack+HBulider)

2、打开HBulider,打开目录,选择这个list,项目名称自己更改。(或者直接新建一个app项目,然后把里边的unpackage和manifest这两个保留下来,其他的替换成自己dist文件里边的内容)

详解Vue webapp项目通过HBulider打包原生APP(vue+webpack+HBulider)

这个时候是web项目,需要改为APP项目(如果直接新建的app,请忽略此步)

详解Vue webapp项目通过HBulider打包原生APP(vue+webpack+HBulider)

更改前:详解Vue webapp项目通过HBulider打包原生APP(vue+webpack+HBulider)

更改后: 详解Vue webapp项目通过HBulider打包原生APP(vue+webpack+HBulider)

3、在HB中打开这个dist,可以看到有一个manifest.json的文件。这个文件是用来配置应用信息的。入口文件一定要对应好,我用VUE写的单页应用,所以就一个index.html。

详解Vue webapp项目通过HBulider打包原生APP(vue+webpack+HBulider)

然后配置图标

详解Vue webapp项目通过HBulider打包原生APP(vue+webpack+HBulider)

按着自己项目的要求配置就行了,HB下面列举的很详细。

4、接下来可以通过手机用USB线与电脑连接进行真机调试。(必须通过USB线连接才可以,人家HB不支持什么通过无线连接的方式)windows电脑不用说了,可以用一些360助手什么的就可以解决了。如果你的手机是安卓的,在苹果电脑下面就没那么好搞了。后来通过百度加自己的摸索也搞出来。方法就是在苹果电脑上下载一个使用 Android File Transfer这个软件。要收费时,点击试用就可以了。手机上需要打开usb调试,然后选择 内置光盘 就可以与苹果电脑连接了。手机自己也有提示(真的很暖心)

详解Vue webapp项目通过HBulider打包原生APP(vue+webpack+HBulider)

连接成功之后,就可以进行真机调试了。

详解Vue webapp项目通过HBulider打包原生APP(vue+webpack+HBulider)

注:网上很多说自己的VUE项目项目打开一片空白,记得改一下config下面的index.js中bulid模块导出的路径。因为index.html里边的内容都是通过script标签引入的,而你的路径不对,打开肯定是空白的。先看一下默认的路径。

module.exports = {
 build: {
  env: require('./prod.env'),
  index: path.resolve(__dirname, '../dist/index.html'),
  assetsRoot: path.resolve(__dirname, '../dist'),
  assetsSubDirectory: 'static',
  assetsPublicPath: '/',
  productionSourceMap: true,

assetsPublicPath默认的是  ‘/'  也就是根目录。而我们的index.html和static在同一级目录下面。  所以要改为  ‘./ '

另外还需要注意一点。src里边router/index.js路由配置里边默认模式是hash,如果你改成了history模式的话,打开也会是一片空白。所以改为hash或者直接把模式配置删除,让它默认的就行 。

// mode: 'history' // 默认hash

5、如果真机测试没有问题。那么就可以真正的进行打包成APP了。

详解Vue webapp项目通过HBulider打包原生APP(vue+webpack+HBulider)

详解Vue webapp项目通过HBulider打包原生APP(vue+webpack+HBulider)

详解Vue webapp项目通过HBulider打包原生APP(vue+webpack+HBulider)

详解Vue webapp项目通过HBulider打包原生APP(vue+webpack+HBulider)

详解Vue webapp项目通过HBulider打包原生APP(vue+webpack+HBulider)

打包成功后,可以通过手动下载,或者直接打开下载目录里边下载好的。把这个xxxx.apk文件通过qq或者其他的发送到你的手机上,点击安装。就可以了。

6、最后,展示一下手机上的效果。

详解Vue webapp项目通过HBulider打包原生APP(vue+webpack+HBulider)

以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持三水点靠木。

Javascript 相关文章推荐
JavaScript是否可实现多线程  深入理解JavaScript定时机制
Dec 22 Javascript
javascript中数组的定义及使用实例
Jan 21 Javascript
JS平滑无缝滚动效果的实现代码
May 06 Javascript
原生js验证简洁注册登录页面
Dec 17 Javascript
Extjs让combobox写起来简洁又漂亮
Jan 05 Javascript
Javascript for in的缺陷总结
Feb 03 Javascript
JavaScript函数节流和函数防抖之间的区别
Feb 15 Javascript
jQuery插件HighCharts实现的2D堆条状图效果示例【附demo源码下载】
Mar 14 Javascript
Angular组件化管理实现方法分析
Mar 17 Javascript
JavaScript体验异步更好的解决办法
Jan 08 Javascript
10分钟上手vue-cli 3.0 入门介绍
Apr 04 Javascript
超详细动手搭建一个VuePress 站点及开启PWA与自动部署的方法
Jan 27 Javascript
通过cordova将vue项目打包为webapp的方法
Feb 02 #Javascript
用Cordova打包Vue项目的方法步骤
Feb 02 #Javascript
JS实现数组去重及数组内对象去重功能示例
Feb 02 #Javascript
JS实现的Object数组去重功能示例【数组成员为Object对象】
Feb 01 #Javascript
JavaScript动态创建二维数组的方法示例
Feb 01 #Javascript
Electron 如何调用本地模块的方法
Feb 01 #Javascript
详解使用webpack+electron+reactJs开发windows桌面应用
Feb 01 #Javascript
You might like
使用php重新实现PHP脚本引擎内置函数
2007/03/06 PHP
thinkPHP中配置的读取与C方法详解
2016/12/05 PHP
JavaScript 数组循环引起的思考
2010/01/01 Javascript
让你的博文自动带上缩址的实现代码,方便发到微博客上
2010/12/28 Javascript
js获取php变量的实现代码
2013/08/10 Javascript
jquery 操作两个select实现值之间的互相传递
2014/03/07 Javascript
原生javaScript实现图片延时加载的方法
2014/12/22 Javascript
自己动手手写jQuery插件总结
2015/01/20 Javascript
jquery简单实现网页层的展开与收缩效果
2015/08/07 Javascript
jQuery validate插件submitHandler提交导致死循环解决方法
2016/01/21 Javascript
利用jQuery的动画函数animate实现豌豆发射效果
2016/08/28 Javascript
jQuery与vue实现拖动验证码功能
2018/01/30 jQuery
CSS3 动画卡顿性能优化的完美解决方案
2018/09/20 Javascript
vue路由中前进后退的一些事儿
2019/05/18 Javascript
快速解决Vue、element-ui的resetFields()方法重置表单无效的问题
2020/08/12 Javascript
Python对list列表结构中的值进行去重的方法总结
2016/05/07 Python
使用Python的Tornado框架实现一个Web端图书展示页面
2016/07/11 Python
Python类的动态修改的实例方法
2017/03/24 Python
python实现简单淘宝秒杀功能
2018/05/03 Python
Python+selenium实现自动循环扔QQ邮箱漂流瓶
2018/05/29 Python
pandas 层次化索引的实现方法
2019/07/06 Python
python实现复制大量文件功能
2019/08/31 Python
Python注释、分支结构、循环结构、伪“选择结构”用法实例分析
2020/01/09 Python
Python如何转换字符串大小写
2020/06/04 Python
python3.4中清屏的处理方法
2020/07/06 Python
Python基于argparse与ConfigParser库进行入参解析与ini parser
2021/02/02 Python
H5 canvas实现贪吃蛇小游戏
2017/07/28 HTML / CSS
法学院方阵解说词
2014/01/29 职场文书
廉洁家庭事迹材料
2014/05/15 职场文书
学校安全工作汇报材料
2014/08/16 职场文书
三关爱志愿服务活动方案
2014/08/17 职场文书
师德师风个人自我剖析材料
2014/09/27 职场文书
2014年民警工作总结
2014/11/25 职场文书
新员工入职欢迎词
2015/01/23 职场文书
Redis做数据持久化的解决方案及底层原理
2021/07/15 Redis
Java后端 Dubbo retries 超时重试机制的解决方案
2022/04/14 Java/Android