微信小程序之第二版展示

悦听小说(YueTingBook)

==》2019.12.16

今天知道个人微信号无法使用web-view,直接影响该项目很多功能,该项目待商城项目完成后继续研究。。。


1.阅读模式
后台:为爬虫网站增加目录爬取接口
前台:已经有目录按钮,设计目录展示效果
I.为展示的目录工具栏添加上下页按钮,并对章节名字绑定Url,点击章节后刷新页面内容
II.两种方案:a.分页,保留底部分页并左移,将朗读按钮(小)加到中间和底部工具栏(大)
      b.不分页,朗读按钮(小)替代分页显示在内容底部和底部工具栏(大)
III.顶部导航栏样式修改
2.搜索页
I.将做好的微信端搜索页替代web-view的初始搜索页,web-view的搜索页用来显示搜索结果
II.解决用web-view的转码按钮替换tabBar,尝试实现类似悬浮按钮效果
3.发布
I.续费学生服务器,部署后台
II.发布微信小程序


2019.08.23 进度
1.完成目录功能的前后台开发:
后台:增加目录爬虫接口,新增数字转换,以及增加总页数等爬取信息
前台:阅读页新增目录分页效果,点击目录文章进入新章节
需要注意的点:z-index&positionscroll-into-view正则表达式&字符串操作中文数字&阿拉伯数字template使用及传参request执行顺序微信小程序向上/下取整
2.新的设计:
添加一个新的播放页,点击页面下方小按钮或是底部大按钮后进入该页面,设计为播放器样式。
//微信小程序自带播放器,自定义下标题为文章就行
目前的样式

'1’是发声人,设计为重新选择后会重置request允许状态,可以重新请求tts接口,否则在初始和选择一次后禁止重新请求tts接口
‘2’是耳机小按钮,给按钮设计了自定义双击事件,双击隐藏/显示’1’,取缔工具栏底部大按钮
'3’是微信自己的音频播放器,我自定义了封面、歌手-标题(对应章节-书名)

2019.08.24 待完成
1.目录章节的点击跳转后只是内容刷新了,音频状态等并未重置
2.发声人区域和底部工具栏区域的层级覆盖问题
3.科大讯飞tts的1000字节限制,即500字限制,将文本切分,这里可能出现多次request顺序混乱导致音频播放混乱,要找到解决方案,猜想:可以通过修改后台处理分组请求,最后可以用ffmpeg拼接完整音频一次性返回小程序从而防止音频播放顺序混乱和由于各段音频BackgroundAudioManager的src重置与src唯一性导致的各段音频碎片化


2019.09.05 进度
1.修复Crawler爬虫接口的html乱码问题
2.修复Crawler爬虫接口的JSON序列化问题
3.进行tts接口改版,切分文章分别请求tts并拼接为单个音频输出,目前拼接后顺序混乱

2019.09.06 进度
1.完成tts接口多线程处理tts并按先后顺序执行
2.完成tts接口拼接多个音频
3.进行微信小程序转码阅读页改版:

  • 点击目录章节后刷新音频状态
  • 生成语音时的等待过程显示加载动画
  • 修改speeker之后立即暂停并刷新音频状态
  • 目录显示效果,点击最底下章节后目录会跳到下一页
  • 顶部bookName+chapterName小字和底部speeker小字、发声按钮

2019.09.09 进度
1.目录章节点击后将当前音频停止(stop)
2.修改speeker之后将当前音频暂停
(逻辑为:修改speeker后pause当前音频,可以通过微信的音频播放器界面继续播放,但是当再次单击底部小耳机按钮会stop当前音频并请求一次tts;一旦该speeker请求过一次tts,再次单击则不会再次请求而是将单击响应为pause/play事件)
3.整合了语音搜索功能


  2019.09.09

  悦听小说第二版基本完成了,微信小程序端实现了由自定义搜索页跳至网页搜索页,对自定义搜索页整合了语音搜索功能,对转码阅读页添加了目录功能和语音朗读功能;对后台接口也进行了改版,为章节爬虫接口增加了网页html自解码防压缩并添加了目录爬虫,对爬取信息进行了整理与拓展,为tts语音生成接口添加了分段tts及合并多段音频功能,以适配讯飞的1000字节限制。
  目前还有一些小细节,比如:
  1.目录接口对章节中文数字转阿拉伯数字时未考虑“第X卷 第XX章 XXX”这种形式,我的正则表达式是按照“第X章 XX”这种格式来的,所以导致目录有问题,而且没考虑“X 后记”这种特殊章节情况。
  2.目录显示效果几个问题,点击最底下章节后目录会跳到下一页,突出显示当前章节遇到多个章节号重复(网站问题)时显示哪个的问题,有的章节为什么突出显示多个章节(1.2两个问题其实都是由于章节号问题导致的,考虑换一个具有唯一性的值作为章节ID)
  3.为所有的接口请求添加Loading动画
  4.转码阅读页目录和顶部、底部显示效果优化,不遮挡
  5.转码阅读页刷新后reLaunch导致所有页面关闭问题

下一步悦听小说第三版:
1.提取小程序页面独立成一个小程序
2.修复上述4个问题
3.实现用户(微信授权登陆)|(账号登陆+注册)功能,以及修改信息等用户管理功能,引入数据库
4.发布.NET后台
5.发布微信小程序


爬的网站又更新改版了。。。又要重新改了唉,后台爬虫接口也出现问题了,愁啊

2019.11.24
马上这个学期就要结束了,把这个项目再更新一波。
上个网站不好用了,重新找了一个,可以满足我的需求,还是很佩服我参考的科大讯飞的《听书神器》APP,在我停止更新我的小程序2个多月期间有了好几次大改版,目前除了对讯飞的看家本领语音功能增加了许多优化之外,还支持了目录,提前加载缓存下一章节,爬取封面到书架上等很实用的功能,我自己用的也是越来越喜欢,所以对我的这个项目也有了很多启发,手又痒了。

1.后台.NET爬虫:

章节爬虫:
保留章节名,书名,章节内容,仅更新正则表达式
增加上一章,下一章URL字段(当上/下一章为空,返回NULL)
目录爬虫:
保留bookID,当前目录页数,总目录页数,章节更新正则表达式
不修改返回字段

2.小程序端

在wx端使用上/下章节是否为NULL判断是否显示提示弹窗,依据目录上/下和0/max比较判断

微信小程序+.NET(十四) 悦听小说小程序(待续)相关推荐

  1. DockOne微信分享(八十四):Docker在B站的实施之路

    本文讲的是DockOne微信分享(八十四):Docker在B站的实施之路[编者的话]B站一直在关注Docker的发展,去年成功在核心SLB(Tengine)集群上实施了Docker.今年我们对比了各种 ...

  2. DockOne微信分享(六十四):基于Docker实现DevOps的一些探索

    本文讲的是DockOne微信分享(六十四):基于Docker实现DevOps的一些探索[编者的话]本次分享从DevOps介绍:Docker介绍:基于Docker实现DevOps的优势:Docker化D ...

  3. 二分法查找c语言程序_C语言的那些经典程序 第十四期

    戳"在看"一起来充电吧! C语言的那些经典程序 第十四期 本期小C给大家带来三个用C语言解决实际问题的典例.如果全都理解,相信肯定能给大家带来收获!接下来让我们看看是哪些程序吧! ...

  4. [转载]三十四个有趣的小故事

    [转载]三十四个有趣的小故事 一. 用人之道 去过庙的人都知道,一进庙门,首先是弥陀佛,笑脸迎客,而在他的北面,则是黑口黑脸的韦陀.但相传在很久以前,他们并不在同一个庙里,而是分别掌管不同的庙.弥乐佛 ...

  5. 恐怖黎明修改器|恐怖黎明十四项修改器小斧头版下载 v1.4最新版

    点击下载来源:恐怖黎明十四项修改器小斧头版 v1.4最新版 恐怖黎明修改器是针对一款高燃的硬盒制游戏<恐怖黎明(Grim Dawn)>量身打造的游戏辅助工具,通过它可让你随心所欲的修改游戏 ...

  6. c语言调试时出现的三种错误,C语言课件 第十四章 常见错误和程序调试

    <C语言课件 第十四章 常见错误和程序调试>由会员分享,可在线阅读,更多相关<C语言课件 第十四章 常见错误和程序调试(36页珍藏版)>请在人人文库网上搜索. 1.第十四章常见 ...

  7. 微信小程序(第十四章) - 信息查询页面的实现

    微信小程序(第十四章)- 信息查询页面的实现 前言 页面标题实现 信息框的实现 页面结构实现 页面样式实现 学生到校离校信息查询列表实现 页面结构实现 页面样式实现 正在加载实现 页面结构实现 页面样 ...

  8. 小程序配置服务器四个怎么填,小程序配置服务器四个怎么填

    小程序配置服务器四个怎么填 内容精选 换一换 弹性负载均衡(Elastic Load Balance,简称ELB)是将访问流量根据分配策略分发到后端多台服务器云主机的流量分发控制服务. 简要介绍Bre ...

  9. XSS-14、15注入靶场闯关(小游戏)——第十四、五关

    注意:十四关的链接失效了,没办法做. 1.从14关下边可以点解链接跳转到15关,一般人都会点. 2.没错,这就是个坑.这里跳转过来的时候他给的是一个错误地址.所以注意要去15关直接修改level后面的 ...

最新文章

  1. luanet更名为distri.lua
  2. 这项X射线技术让芯片无秘密可言:纳米级还原内部构造,现已破解16nm芯片
  3. 关于Struts2的jsp页面的注释
  4. react 动态修改路由_reactjs – 如何动态添加重定向到反应路由器?
  5. php theexcerpt,wordpress的excerpt()函数的用法示例
  6. android 仿小米秒表,android实现秒表功能
  7. real-time RGB-D camera relocalization
  8. 图像处理_OpenCV图像增强算法实现(直方图均衡化、拉普拉斯、Log、Gamma)
  9. PHP令人困惑的strtotime
  10. SQL Server 2016 开发版安装
  11. Java将MP3文件转换成wav格式文件
  12. 微软历史最高市值是多少?
  13. 学习案例:北京房价走势分析
  14. 数据库查询报错Error Code 1064
  15. Caffeine入门
  16. [DR吐槽]——三大卡牌链游到底都是什么货色?
  17. github时好时坏连接不上的问题
  18. SIGGRAPH中海洋的研究学习
  19. 计算机病毒金山毒霸,金山毒霸发布7月27日计算机病毒预警
  20. 【以太网模块调试记录】ZLG EPORTM集成式RJ45调试记录(STM32/GD32)

热门文章

  1. 弘扬善文化·传递正能量
  2. 基于微信小程序的企业职工薪资查询系统小程序
  3. TLR8小分子抑制剂或将治愈自身免疫病 | MedChemExpress
  4. securecrt 6.1注册码
  5. 如何建立一套完善的销售管理体系?
  6. 修改注册表导致电脑闪屏,且win+R无效
  7. Mapper文件中不等号的写法
  8. ACAD打印空白无内容的解决一例
  9. 【Linux操作系统】进程基本概念
  10. abp mysql Failed executing DbCommand (0ms) [Parameters=[], CommandType=‘Text‘, CommandTimeout=‘30‘]