将vue项目打包成移动端app(app打包教程)

Vue项目打包成移动端APP需要准备的工具:Hbuilder目录Vue项目打包成移动端APP首先打包vue到dist目录然后再Hbuilder中打开dist目录然后将dist包含的web项目转换为移动APP项目前几步配置完成后,就可以在手机上进行真机调试了真机测试没有问题,就可以进行下一步—》打包apk了最后将apk安装包安装到手机上就可以正常使用了…

大家好,又见面了,我是你们的朋友全栈君。

Vue项目打包成移动端APP

需要准备的工具:Hbuilder

目录

Vue项目打包成移动端APP

首先打包vue到dist目录

然后再Hbuilder中打开dist目录

然后将dist包含的 web项目 转换为 移动 APP项目

前几步配置完成后,就可以在手机上进行真机调试了

真机测试没有问题,就可以进行下一步—》打包apk了

最后将apk安装包安装到手机上就可以正常使用了


首先打包vue到dist目录

npm run build

将vue项目打包成移动端app(app打包教程)

然后再Hbuilder中打开dist目录

将vue项目打包成移动端app(app打包教程)

首先可以看到dist目录的图片是一个 W 字样的图标,表示这是一个 web项目

然后将dist包含的 web项目 转换为 移动 APP项目

将vue项目打包成移动端app(app打包教程)

 此时可以看到dist目录的文件图标由 W 变成了 A,说明此时的web项目已经变成了移动APP项目 ,而且此时生成了一个新的文件manifest.json

下面要做的就是在manifest.json中配置移动APP所需要的配置项

应用信息配置

appid需要登录后才能获取

将vue项目打包成移动端app(app打包教程)

图标配置

将vue项目打包成移动端app(app打包教程)

启动图片

将vue项目打包成移动端app(app打包教程)

SDK配置

将vue项目打包成移动端app(app打包教程)

模块权限配置

将vue项目打包成移动端app(app打包教程)

页面引用关系

页面引用关系分析并不是完全正确的,对于未被检测到文件需要手动添加到打包项目中去

将vue项目打包成移动端app(app打包教程)

代码视图

此视图中会显示所有的配置信息

将vue项目打包成移动端app(app打包教程)

前几步配置完成后,就可以在手机上进行真机调试了

首先使用usb数据线连接自己的手机,然后将手机设置为开发者模式中的USB调试模式

接下来就是启动Hbuilder真机调试了

将vue项目打包成移动端app(app打包教程)

连接后,会在手机上自动安装一个HbuilderAPP,用于真机调试

将vue项目打包成移动端app(app打包教程)

将vue项目打包成移动端app(app打包教程)将vue项目打包成移动端app(app打包教程)将vue项目打包成移动端app(app打包教程)

真机测试没有问题,就可以进行下一步—》打包apk了

菜单栏点击【发行】【云打包-打原生安装包】

将vue项目打包成移动端app(app打包教程)

将vue项目打包成移动端app(app打包教程)

将vue项目打包成移动端app(app打包教程)

将vue项目打包成移动端app(app打包教程)

最后将apk安装包安装到手机上就可以正常使用了


Vue打包成.apk安装的过程中遇到的问题

问题1:打包成的apk在真机上显示空白界面

原因:项目文件路径引用错误,导致文件加载为404

vue打包后的文件时存在于dist目录下的,也就是说dist目录作为根目录。

在dist目录中启动一个本地服务其访问地址为http://localhost:8080/index.html,即可访问首页dist目录下的index.html文件并加载对应的js,css文件,也就是说文件启动根目录是和dist目录中的index.html是平级的。

- dist
-- css
-- img
-- js
-- index.html
-- 启动的根目录

而打包成apk文件后在真机上测试,其访问的地址为http://localhost:8080/dist/index.html,多了一层dist,导致页面空白,加载的文件为404找不到,也就是说打包后的启动目录的根目录是个dist平级的不是和dist目录中的index.html平级。

- dist
-- css
-- img
-- js
-- index.html
- 启动的根目录

 解决方法:

在vue打包成dist文件前,修改vue.config.js配置文件,将打包文件的资源文件更改为当前目录下的绝对路径

mudule.exports = {
    // publicPath: '/',
    publicPath: './'
}

问题2:首屏展示后,路由无法跳转,点击无效

原因:文件动态加载的资源地址404找不到

因为动态加载的资源地址为http://localhost:8080/css/xxx.css和http://localhost:8080/js/xxx.js,而实际上文件的资源路径是http://localhost:8080/dist/css/xxx.css和http://localhost:8080/dist/js/xxx.js说加载动态加载的资源均为404

解决方法:

更改vue项目中的路由模型配置:将H5的历史记录模式改为hash模式

import Vue from 'vue'
import VueRouter from 'vue-router'

Vue.use(VueRouter)

const router = new VueRouter({
    // mode: 'history',
    mode: 'hash'
})

export default router

 

 

 

 

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请联系我们举报,一经查实,本站将立刻删除。

发布者:全栈程序员-站长,转载请注明出处:https://javaforall.net/127696.html原文链接:https://javaforall.net

(0)
全栈程序员-站长的头像全栈程序员-站长


相关推荐

  • Java 版学生成绩管理系统,附源码[通俗易懂]

    Java 版学生成绩管理系统,附源码[通俗易懂]前言对于计算机专业的学生来讲,一定对于学生成绩管理系统课程设计十分印象深刻。设计、上机、编码、写报告、答辩等一系列流程,虽然很简单,但也可以综合运用我们所学的一些知识了。今天就来复习以下这个课题,用JavaSE来实现该课题,也算是补上当初上课的时候没有好好写的遗憾吧。虽然很简单,但是对于刚涉足编程学习的人来讲,还是有一定难度的,既要考虑界面打印,也要考虑条件判断、循环语句、输入输出控制等等技巧,所以在这里简单地实现一下,方便给初学的小伙伴们一个参考(对于我的界面比较丑的问题,就不要过于纠结了,下

    2022年7月13日
    25
  • 模电基础部分总结(自用)

    模电基础部分总结(自用)模电基础部分总结(自用)第一章1.1半导体基础知识1.什么是模拟信号,数字信号?答:模拟信号在时间和数值上均具有连续性,例如正弦波信号。模拟信号在时间和数值上均具有连散性,它们的数值是最小量值的整倍数,并以此倍数作为数字信号的数值。2模/数转换,数/模转换?答:模数:对模拟信号进行数字化处理时,需首先将其转换成计算机识别的数字信号。数模:计算机输出的数字信号常需转换为能够驱动负载的…

    2022年6月20日
    27
  • java 对象转map,去掉null

    java 对象转map,去掉nullpublicstaticMap<String,Object>beanToMap(Objectobject){Map<String,Object>map=null;try{map=newHashMap<String,Object>();Bean…

    2022年5月7日
    261
  • java+widthstep_关于IplImage中widthstep的大小与width,nchannels等的关系的问题

    java+widthstep_关于IplImage中widthstep的大小与width,nchannels等的关系的问题width是图像宽度,可为任意值;widthstep是行字节数,应该是4的倍数,不一定等于width,nchannels为图像通道数。#defineWIDTHBYTES(bits)(((bits)+31)/32*4)看看这个公式你就明白了。对ROI和widthStep的补充ROI和widthStep在实际工作中有很重要的作用,在很多情况下,使用它们会提高计算机视觉代码的执行速度。这是因为它们…

    2022年6月4日
    34
  • python创建数组的方法_python数组和列表

    python创建数组的方法_python数组和列表另见数组创建相关API简介创建数组有5种常规机制:从其他Python结构(例如,列表,元组)转换numpy原生数组的创建(例如,arange、ones、zeros等)从磁盘读取数组,无论是标准格式还是自定义格式通过使用字符串或缓冲区从原始字节创建数组使用特殊库函数(例如,random)本节不包括复制,连接或以其他方式扩展或改变现有数组的方法。它也不会涵盖创建对象数组或结构化数组。这些都包含在他们自己的章节中。将Pythonarray_like对象转换为Numpy数组通常,在Pytho

    2025年6月21日
    2
  • GM8018 多路高压电平转换和功率驱动控制器

    GM8018 多路高压电平转换和功率驱动控制器

    2021年7月29日
    66

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注

关注全栈程序员社区公众号