xinli/重新打包指南.md
2025-12-02 15:12:55 +08:00

6.6 KiB
Raw Blame History

🔧 重新打包指南

为什么之前的 APK 不能正常使用?

可能的原因:

  1. 前端资源未更新 - TTS 功能修复后需要重新构建前端
  2. 构建缓存问题 - 旧的缓存导致新代码未生效
  3. WebView 资源问题 - App 中的 Web 资源未同步
  4. 签名问题 - 签名不一致导致安装失败

解决方案:完整重新打包

我已经为你创建了两个打包脚本:

方案 1完整打包流程推荐

脚本位置完整打包流程.bat
包含内容:前端构建 + Android 打包

# 在项目根目录执行
.\完整打包流程.bat

优点

  • 自动构建最新前端代码(包含 TTS 修复)
  • 清理所有缓存
  • 完整的错误检查
  • 一键完成所有步骤

执行步骤

  1. 打开 PowerShell 或 CMD
  2. 进入项目目录:cd c:\Users\Administrator\Desktop\Project\xinli
  3. 执行脚本:.\完整打包流程.bat
  4. 等待完成(约 5-10 分钟)

方案 2只打包 Android App

脚本位置xinli-App\完整重新打包.bat
适用场景:前端已经构建好,只需要重新打包 App

# 在 Android 项目目录执行
cd xinli-App
.\完整重新打包.bat

📋 打包流程详解

阶段 1: 前端构建(如果使用完整打包)

cd xinli-ui
npm run build:prod

作用

  • 编译 Vue.js 前端代码
  • 应用 TTS 朗读功能的修复
  • 生成优化后的静态文件到 dist 目录

预期输出

Building for production...
✓ built in XXs

阶段 2: Android 打包

步骤 1: 清理缓存

cd xinli-App

# 删除旧的构建文件
rd /s /q app\build
rd /s /q build
rd /s /q .gradle

# Gradle clean
gradlew.bat clean

步骤 2: 检查环境

# 检查 JAVA_HOME
echo %JAVA_HOME%

# 检查 Java 版本(需要 JDK 8
java -version

要求

  • JAVA_HOME 已设置
  • Java 版本为 1.8.x
  • Android SDK 已安装

步骤 3: 构建 APK

gradlew.bat assembleRelease

预期输出

BUILD SUCCESSFUL in XXs

APK 位置

xinli-App\app\build\outputs\apk\release\app-release.apk

🚨 常见问题排查

问题 1: "JAVA_HOME 未设置"

解决方法

# 设置 JAVA_HOME替换为你的 JDK 路径)
set JAVA_HOME=D:\2_part\JAVA\JDK

# 或在系统环境变量中永久设置

问题 2: "Node.js 未安装"

解决方法

  1. 下载 Node.jshttps://nodejs.org/
  2. 安装后重启命令行
  3. 验证:node -v

问题 3: "npm run build:prod 失败"

解决方法

cd xinli-ui

# 重新安装依赖
npm install

# 再次构建
npm run build:prod

问题 4: "Gradle 构建失败"

常见原因

  1. 网络问题 - 无法下载依赖

    • 解决:检查网络,重试
  2. SDK 版本问题 - Build Tools 未安装

    • 解决:打开 Android Studio → SDK Manager → 安装 Build Tools 30.0.3
  3. 内存不足

    • 解决:修改 gradle.properties 中的内存设置

问题 5: APK 安装失败

原因:旧版本 App 未卸载

解决方法

# 方法 1: 手动卸载
设置 → 应用管理 → 心理测评 → 卸载

# 方法 2: 使用 adb如果手机已连接电脑
adb uninstall com.xinli.app
adb install app-release.apk

📱 安装和测试步骤

1. 卸载旧版本(重要!)

⚠️ 必须先卸载旧版本,否则可能安装失败或功能异常

操作步骤

  • 手机 → 设置 → 应用管理
  • 找到"心理测评"或"xinli"
  • 点击卸载

2. 安装新 APK

方法 1: 通过 USB 传输

  1. 将 APK 复制到手机
  2. 在手机上点击 APK 文件
  3. 允许安装未知来源应用
  4. 点击安装

方法 2: 通过 adb 安装

# 手机连接电脑,开启 USB 调试
adb devices
adb install -r app-release.apk

3. 测试功能

测试 1: TTS 朗读功能

  1. 登录系统
  2. 进入量表/问卷答题页面
  3. 预期
    • 朗读按钮不再是灰色
    • 点击"朗读全部"能听到声音
    • 点击"朗读题干"能听到声音
    • 点击选项朗读按钮能听到声音

测试 2: 权限过滤(如果已修复后端)

  1. 使用普通用户登录
  2. 查看问卷列表
  3. 预期
    • 只能看到公开问卷和已授权的问卷
    • 看不到未授权的问卷

测试 3: 基本功能

  1. 登录功能
  2. 答题功能
  3. 提交测评
  4. 查看报告

🎯 快速打包步骤(简化版)

如果你只想快速打包 Android App

# 1. 进入 Android 项目目录
cd c:\Users\Administrator\Desktop\Project\xinli\xinli-App

# 2. 清理
rd /s /q app\build
rd /s /q build

# 3. 打包
gradlew.bat clean assembleRelease

# 4. 查找 APK
dir /s app-release.apk

APK 位置:app\build\outputs\apk\release\app-release.apk


📊 打包时间预估

步骤 预计时间
前端构建 2-3 分钟
Gradle clean 10-30 秒
APK 构建 3-5 分钟
总计 5-10 分钟

打包成功标志

看到以下信息表示打包成功:

========================================
✓✓✓ 完整打包流程完成!✓✓✓
========================================

APK 文件位置:
c:\Users\Administrator\Desktop\Project\xinli\xinli-App\app\build\outputs\apk\release\app-release.apk

文件大小:
XXXX MB

🔍 验证 APK 是否包含最新代码

检查方法 1: 查看构建时间

# 查看 APK 文件的修改时间
dir app\build\outputs\apk\release\app-release.apk

应该是刚刚构建的时间(几分钟前)

检查方法 2: 安装后测试

  1. 安装 APK
  2. 打开 App
  3. 打开浏览器控制台(如果是调试版)
  4. 进入答题页面
  5. 查看控制台日志:
    • 应该看到:✅ 使用Android原生TTS
    • 或:✅ Android TTS 已就绪(延迟检测)

📝 注意事项

1. 前端资源同步

  • ⚠️ 如果修改了前端代码,必须重新构建前端
  • ⚠️ App 中的 WebView 加载的是服务器上的网页
  • ⚠️ 打包 APK 后,还需要将前端 dist 目录部署到服务器

2. 签名说明

  • 当前使用 debug 签名(测试用)
  • 正式发布需要生成正式签名
  • 签名不一致会导致安装失败

3. 版本号

  • 当前版本:versionCode 1, versionName "1.0"
  • 如需更新版本号,修改 app/build.gradle

🎉 完成!

打包完成后:

  1. 找到 APK 文件
  2. 卸载旧版本
  3. 安装新 APK
  4. 测试功能
  5. 享受修复后的应用!