vue2的web项目打包成安卓apk包

一. 整体方案

复制代码
Vue2 Web 项目
   ↓ npm run build
dist/(静态文件)
   ↓
创建 5+App 项目(WebView)
   ↓
HBuilderX 云打包
   ↓
APK

优点

  • ✅ 不改 Vue2 代码

  • ✅ 不需要会原生

  • ✅ 1 天内能出包

  • ✅ 适合内部查看 / 演示 / 大屏 / 管理系统

缺点

  • ❌ 性能 = WebView

  • ❌ 不适合重度动画 / 3D

二. 打包 Vue2 Web 项目

2.1 关键配置

  1. 确保使用 相对路径

    // vue.config.js

    module.exports = {
    publicPath: './',
    outputDir: 'dist',
    assetsDir: 'static',
    productionSourceMap: false
    }

否则 APK 里会 白屏

  1. 路由需要改成hash,不能使用history

    const router = new Router({
    mode: "hash", // 去掉url中的#
    scrollBehavior: () => ({ y: 0 }),
    routes: constantRoutes,
    });

3.持久化token

不能使用Cookie,可以用 localStorage去设置持久化功能

改用 localStorage 存储 Token,确保数据能持久化;Web 端继续使用 Cookie。

js-cookie 在本地文件协议下可能无法正确持久化 Token。如果 Token 存不进去, getToken() 取不到值,路由守卫 ( permission.js ) 就会把你弹回登录页。

4.注意接口请求,在webview中的proxy转发代理无效,需要直接设置接口前缀地址

2.2 使用npm run build 打包

打包之后会生成dist文件夹,使用vscode 的 Open with live Server 启动服务,确保里面功能能正常使用。

三. 创建5+App项目

1.使用 HBuilderX新建项目。

2.将dist目录下所有内容复制到新建好的项目下

四. 使用HBuilder调试项目

按照图片调试,运行到安卓手机上,如何一切正常访问,则可以打apk包。

相关推荐
苦瓜小生4 分钟前
【前端】|【js手撕】经典高频面试题:手写实现function.call、apply、bind
java·前端·javascript
天若有情67311 分钟前
前端HTML精讲03:页面性能优化+懒加载,搞定首屏加速
前端·性能优化·html
Grackers21 分钟前
Android Perfetto 系列 5:Android App 基于 Choreographer 的渲染流程
android
踩着两条虫23 分钟前
AI驱动的Vue3应用开发平台深入探究(十):物料系统之内置组件库
android·前端·vue.js·人工智能·低代码·系统架构·rxjava
sam.li28 分钟前
JADX MCP 原理与使用部署
android·逆向·jadx
冬奇Lab1 小时前
Android 15音频子系统(五):AudioPolicyService策略管理深度解析
android·音视频开发·源码阅读
swipe1 小时前
AI 应用里的 Memory,不是“保存聊天记录”,而是管理上下文预算
前端·llm·agent
慧一居士1 小时前
nuxt3 项目和nuxt4 项目区别和对比
前端·vue.js
亚历克斯神1 小时前
Flutter for OpenHarmony: Flutter 三方库 mutex 为鸿蒙异步任务提供可靠的临界资源互斥锁(并发安全基石)
android·数据库·安全·flutter·华为·harmonyos
威联通安全存储1 小时前
破除“重前端、轻底层”的数字幻象:如何夯实工业数据的物理底座
前端·python