电话: 0316-2636468    13831639196

行业动态

了解最新公司动态及行业资讯

当前位置:首页>新闻资讯>行业动态
全部 102 公司动态 25 行业动态 51 Android开发 8 Ios开发 9 Htm开发 9

app下载功能的逻辑

时间:2020-08-29   访问量:1282

一、目的

下载功能在app中十分常见,比如:腾讯视频app的视频缓存到本地、百度网盘的下载、手机软件更新的下载等等。很多情况下文件下载都是批量的,比如下载电视剧,软件批量更新。看似简单的一个功能其背后却有许多的逻辑需要产品经理去思考。所以今天探讨下app的下载功能,也让大家更直观的理解功能和场景之间密不可分的关系。

为了让阐述更直观,我们从一个场景开始我们的探讨。

用户场景

星期天的下午,小编躺在沙发上享受惬意的休息时光。他打开了某某app,依次点击下载A、B、C、D四个文件,打算好好利用剩余的休息时光。

排除下载异常和下载完成两种情况,正常情况下这四个下载任务的状态有三种:下载中、等待中、已暂停;且系统限制,只能有一个文件处于“下载中”的状态,其余文件需要处于“等待中”或“已暂停”。

假设此时A处于“下载中”,B、C和D处于“等待中”,

当小新点击任务A和任务B时,你觉得ABCD四个任务的状态会怎么变化?不妨停下来思考下,或者我们用一款app来具体研究下,这里就选择爱奇艺视频吧。

爱奇艺视频app逻辑:

当第一次点击A时,A变为“已暂停”,B变为“下载中”,C、D变为“等待中”,四者的优先级为:B>C>D>A;

当第二次点击A时,A变为“下载中”,B、C、D变为“等待中”,四者的优先级变为:A>B>C>D;

当第三次点击B时,A变为“下载中”,B变为“暂停”,C、D为“等待中”,四者的优先级为:A>C>D>B;

当第四次点击B时,A为“下载中”,B、C、D为“等待中”,四者的优先级为:A>B>C>D。

这种逻辑其实在app中是比较常见。尤其是视频类软件中(比如腾讯视频、爱奇艺视频)。因为在这一类软件的使用过程中,大多数用户高频出现的使用场景是下载连贯性的任务,且任务与任务之间有很强的优先级排列(比如下载电视连续剧,一般先下载的肯定是靠前的剧集,这也迎合了它边下边看的功能,再者倒着看电视剧的人确实很少),所以只要是在下载进程中,先添加的任务总会优先于后添加的任务下载。

这样设计功能更贴近实际的用户场景,也让用户更容易学习和理解。当然,功能的逻辑也并非一成不变的,如果这里小新打开的是百度网盘app,便会是如下另外一番景象了。

百度网盘app逻辑:

当用户第一次点击A时,A变为“已暂停”,B变为“下载中”,C、D变为“等待中”,四者的优先级为:B>C>D>A;

当第二次点击A时,A变为“等待中”,B变为“下载中”,C、D为“等待中”,四者的优先级为:B>C>D>A;

当第三次点击B时,A为“等待中”,B变为“已暂停”,C变为“下载中”,D为“等待中”,四者的优先级为:C>D>A>B;

当第四次点击B时,A、B为“等待中”,C变为“下载中”,D为“等待中”,四者的优先级为:C>D>A>B。

对比上面爱奇艺app图表,我们可以看出功能背后的逻辑发生了很大改变。因为在百度网盘的用户使用场景中,大多数情况下,批量下载的内容都是比较独立的单位,彼此之间并没有很强的优先级,用户点击任务最主要的目的是确定是否下载任务,而非优先下载该任务。

所以开发者认为依据下载任务触发时间的先后排列优先级,更贴近用户场景,同时又减少了对“下载中”任务的干扰,减少“下载中”任务的中断率也就一定程度上提高了下载效率,而对于该软件的用户体验度而言,下载效率绝对是一个重要指标。

上一篇:考拉海购CEO:电商已非创新行业,今年会员电商将加速发展

下一篇:腾讯连连App服务正式发布 用户无需开发即可构建跨产品的应用