听书模块快速启动指南.md 4.3 KB

听书模块快速启动指南

一、数据库初始化

1. 执行SQL脚本

在Navicat或其他MySQL客户端中执行:

-- 执行听书模块数据库脚本
source book/src/main/resources/db/audiobook_schema.sql;

或者直接复制 audiobook_schema.sql 文件的内容到Navicat中执行。

2. 验证表创建

确认以下表已创建:

  • audiobooks - 听书专辑表
  • audiobook_chapters - 听书章节表
  • user_listening_history - 用户听书历史记录表
  • user_listening_progress - 用户听书进度表

3. 验证数据

确认示例数据已插入(至少5条听书记录和10条章节记录)。

二、后端启动

1. 检查配置

确保 application.propertiesapplication.yml 中的数据库连接配置正确。

2. 启动Spring Boot应用

cd book
mvn spring-boot:run

3. 验证接口

访问以下接口验证后端是否正常:

  • http://localhost:8080/api/audiobook/recent?limit=8
  • http://localhost:8080/api/audiobook/popular?limit=10
  • http://localhost:8080/api/audiobook/{id} (替换{id}为实际的听书ID,如1)

三、前端配置

1. 检查API配置

确保 books/utils/config.js 中的 BASE_URL 指向正确的后端地址:

BASE_URL: 'http://localhost:8080/api'

2. 启动前端项目

使用HBuilderX或其他工具启动uni-app项目。

四、功能测试

1. 听书列表测试

  1. 打开小程序,进入"听书"页面
  2. 查看横幅推荐是否显示
  3. 查看"最近上新"列表是否显示
  4. 查看"猜你喜欢"列表是否显示

2. 听书详情测试

  1. 点击任意听书进入详情页
  2. 查看听书基本信息是否正确显示
  3. 查看章节列表是否显示
  4. 查看章节是否显示免费/VIP标识

3. 播放功能测试

  1. 点击免费章节进入播放器
  2. 测试播放/暂停功能
  3. 测试快进15秒、快退15秒功能
  4. 测试进度条拖动功能
  5. 退出播放器后重新进入,验证断点续播功能

4. 进度保存测试

  1. 登录用户账号
  2. 播放任意章节
  3. 播放一段时间后退出
  4. 重新进入该章节,验证是否从上次播放位置继续

五、常见问题

1. 听书列表为空

原因: 数据库中没有数据或查询条件不正确 解决:

  • 检查数据库表是否有数据
  • 检查后端日志是否有错误
  • 检查前端API调用是否正常

2. 音频无法播放

原因: 音频URL无效或格式不支持 解决:

  • 检查音频URL是否可访问
  • 确保音频格式为MP3等小程序支持的格式
  • 检查网络连接是否正常

3. 进度无法保存

原因: 用户未登录或API调用失败 解决:

  • 确保用户已登录
  • 检查后端接口是否正常
  • 查看浏览器控制台是否有错误信息

4. 章节列表为空

原因: 数据库中该听书没有章节数据 解决:

  • 检查数据库 audiobook_chapters 表是否有对应听书的章节
  • 检查 audiobook_id 是否正确关联

六、数据准备

1. 添加听书数据

可以在Navicat中手动添加听书数据,或使用以下SQL:

INSERT INTO `audiobooks` (`title`, `author`, `narrator`, `cover`, `image`, `brief`, `desc`, `category_id`, `status`, `is_free`, `is_vip`, `chapter_count`, `total_duration`) VALUES
('听书名', '作者名', '主播名', '封面URL', '图片URL', '简介', '描述', 1, 1, 1, 0, 10, 36000);

2. 添加章节数据

INSERT INTO `audiobook_chapters` (`audiobook_id`, `chapter_number`, `title`, `audio_url`, `duration`, `is_free`) VALUES
(1, 1, '第一章', '音频URL', 3600, 1);

七、注意事项

  1. 音频文件: 示例数据中的音频URL为占位符,实际使用时需要替换为真实的音频文件URL。
  2. VIP权限: VIP章节需要用户登录且为VIP会员才能播放,测试时注意用户VIP状态。
  3. 网络请求: 确保前后端网络连接正常,CORS配置正确。
  4. 数据库: 确保数据库表结构正确,外键约束正常。
  5. 音频格式: 建议使用MP3格式,确保小程序可以正常播放。

八、下一步

  1. 替换示例数据为真实数据
  2. 配置真实的音频文件存储和访问
  3. 实现上一章、下一章自动切换
  4. 添加播放倍速调节功能
  5. 添加下载功能(离线播放)
  6. 优化音频加载和缓冲
  7. 添加评论功能
  8. 添加收藏功能