详解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 相关文章推荐
用js实现的检测浏览器和系统的函数
Apr 09 Javascript
jquery动态加载图片数据练习代码
Aug 04 Javascript
js替换字符串的所有示例代码
Jul 23 Javascript
firefox浏览器不支持innerText的解决方法
Aug 07 Javascript
Java/JS获取flash高宽的具体方法
Dec 27 Javascript
JavaScript中的闭包(Closure)详细介绍
Dec 30 Javascript
微信JSAPI支付操作需要注意的细节
Jan 10 Javascript
详解angularjs中的隔离作用域理解以及绑定策略
May 31 Javascript
angularJs-$http实现百度搜索时的动态下拉框示例
Feb 27 Javascript
layui table复选框禁止某几条勾选的实例
Sep 20 Javascript
node.js使用 http-proxy 创建代理服务器操作示例
Feb 10 Javascript
ES6对象操作实例详解
May 23 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变量
2006/10/09 PHP
谈谈新手如何学习PHP
2006/12/23 PHP
php加密解密函数authcode的用法详细解析
2013/10/28 PHP
php session劫持和防范的方法
2013/11/12 PHP
PHP 实现代码复用的一个方法 traits新特性
2015/02/22 PHP
javascript操作table(insertRow,deleteRow,insertCell,deleteCell方法详解)
2013/12/16 Javascript
js中Math之random,round,ceil,floor的用法总结
2013/12/26 Javascript
JavaScript极简入门教程(一):基础篇
2014/10/25 Javascript
JavaScript极简入门教程(三):数组
2014/10/25 Javascript
NodeJS实现阿里大鱼短信通知发送
2016/01/17 NodeJs
浅谈js图片前端预览之filereader和window.URL.createObjectURL
2016/06/30 Javascript
JAVA Web实时消息后台服务器推送技术---GoEasy
2016/11/04 Javascript
概述一个页面从输入URL到页面加载完的过程
2016/12/16 Javascript
Bootstrap 手风琴菜单的实现代码
2017/01/20 Javascript
javascript 使用正则test( )第一次是 true,第二次是false
2017/02/22 Javascript
详解webpack打包vue时提取css
2017/05/26 Javascript
AngularJS中使用three.js的实例详解
2017/07/21 Javascript
初探JavaScript 面向对象(推荐)
2017/09/03 Javascript
ES6关于Promise的用法详解
2018/05/07 Javascript
JS实现table表格内针对某列内容进行即时搜索筛选功能
2018/05/11 Javascript
解决JQuery的ajax函数执行失败alert函数弹框一闪而过问题
2019/04/10 jQuery
es6中比较有用的7个技巧小结
2019/07/12 Javascript
Vue数据绑定实例写法
2019/08/06 Javascript
ES6对象操作实例详解
2020/05/23 Javascript
使用Nginx+uWsgi实现Python的Django框架站点动静分离
2016/03/21 Python
python的继承知识点总结
2018/12/10 Python
详解程序意外中断自动重启shell脚本(以Python为例)
2019/07/26 Python
Python算法的时间复杂度和空间复杂度(实例解析)
2019/11/19 Python
Django values()和value_list()的使用
2020/03/31 Python
HTML5 Canvas概述
2009/08/26 HTML / CSS
斯凯奇美国官网:SKECHERS美国
2016/08/20 全球购物
预备党员公开承诺书
2014/05/28 职场文书
2014年驾驶员工作总结
2014/11/18 职场文书
Python类方法总结讲解
2021/07/26 Python
Python进行区间取值案例讲解
2021/08/02 Python
Mysql InnoDB 的内存逻辑架构
2022/05/06 MySQL