echo

Updated 资源预下载和本地通知 (markdown)

@@ -2,13 +2,26 @@ @@ -2,13 +2,26 @@
2 2
3 ### 资源预下载 3 ### 资源预下载
4 * 教师版和学生版都需要提前预下载资源,不同的是教师版课程结束后不用删除缓存,因为有可能会反复教同一课。 4 * 教师版和学生版都需要提前预下载资源,不同的是教师版课程结束后不用删除缓存,因为有可能会反复教同一课。
5 -* 课表信息需要缓存在本地 5 +* 课表信息按月缓存在本地
6 * 根据课表返回的信息中的课程Id,从盒子鱼服务器获取相应的资源列表 6 * 根据课表返回的信息中的课程Id,从盒子鱼服务器获取相应的资源列表
7 * 在后台预下载资源 7 * 在后台预下载资源
8 * 如果用户是在非Wifi状态下,提醒用户是否允许继续下载 8 * 如果用户是在非Wifi状态下,提醒用户是否允许继续下载
9 * 在开始上课的时候,如果检测到还有需要下载的资源,则用正常的前台下载,不用开启后台下载。 9 * 在开始上课的时候,如果检测到还有需要下载的资源,则用正常的前台下载,不用开启后台下载。
10 * 如果需要上完课及时清除学生端的缓存,则需要记住学生下载的资源和相对应的课程信息(需要跟产品确认) 10 * 如果需要上完课及时清除学生端的缓存,则需要记住学生下载的资源和相对应的课程信息(需要跟产品确认)
11 11
  12 +### 可能需要的下载类
  13 +* 资源下载检查器
  14 + * 启动的时候,检查是否有缓存的当月的课表。
  15 + * 从当月的课表中取出从当前时间到月底之间的课程Id列表
  16 + * 根据本地的缓存判断是否已经下载了某一课的全部资源
  17 + * 如果未下载某一课的全部资源,则检查本地是否有该课的资源列表
  18 + * 如果有该课资源列表,则去列表中寻找未下载的资源进行下载
  19 + * 如果没有该课资源列表,则从盒子鱼服务器获取该列表
  20 +* 资源下载器
  21 +
  22 +* 资源缓存管理器
  23 +
  24 +
12 ### 在线授课课表信息缓存设计 25 ### 在线授课课表信息缓存设计
13 采用缓存文件 26 采用缓存文件
14 * IOS端的缓存目录获取方法 27 * IOS端的缓存目录获取方法