Showing
1 changed file
with
13 additions
and
2 deletions
1 | [返回远程教学相关文档](远程教学相关文档) | 1 | [返回远程教学相关文档](远程教学相关文档) |
2 | 2 | ||
3 | -以IOS目前的实现思路为例说明 | 3 | +### 以IOS目前的实现思路为例说明 |
4 | 4 | ||
5 | +针对页面内的动作消息进行同步处理,包括按钮的点击,手势操作以及播放器的播放等 | ||
6 | + | ||
7 | +#### 发送方记录的同步信息: | ||
8 | +* 学习页的编号(从0开始递增,每次进入学习页,本次学习的总学习页编号加1) | ||
9 | +* 页内动作的编号(从0开始递增,在学习内内,每做一个动作,该页的动作编号加1,在进入新的学习页后重置为0) | ||
10 | + | ||
11 | +### 接收方的同步信息 | ||
12 | +* 期待的学习页的编号(从0开始,每次收到新的符合顺序的学习页信息,本编号加1) | ||
13 | +* 期待的页内动作的编号(从0开始,每次收到信的符合顺序的页内动作信息,本编号加1) | ||
14 | + | ||
15 | +### 同步策略 | ||
5 | * 构造1个本地缓存队列 | 16 | * 构造1个本地缓存队列 |
6 | -* 本地有变量记录期待收到的消息序号 | 17 | +* 本地有变量记录期待收到的学习页的序号,和消息序号 |
7 | * 当收到的消息符合不符合期待序号的时候,把该消息缓存到队列 | 18 | * 当收到的消息符合不符合期待序号的时候,把该消息缓存到队列 |
8 | * 当收到的消息符合期待序号的时候,直接处理该消息,更新期待的消息序号,处理完消息后检查缓存队列中是否有期待的消息序号,如果有则拿出来继续处理,重复执行本条逻辑直到缓存队列中没有期待的消息序号为止。 | 19 | * 当收到的消息符合期待序号的时候,直接处理该消息,更新期待的消息序号,处理完消息后检查缓存队列中是否有期待的消息序号,如果有则拿出来继续处理,重复执行本条逻辑直到缓存队列中没有期待的消息序号为止。 |
9 | * 当切换页面或者结束课程的时候,重置期待消息序号,清空队列。 | 20 | * 当切换页面或者结束课程的时候,重置期待消息序号,清空队列。 |
-
Please register or login to post a comment