阅读进度应该是一个值。它保存在 中,还是 中?我们先检查它是否存在于 中。
红框第一行有一个标签,点击之后左侧会列出很多本地存储选项,选择我们说的那个,如下图:
只有简单的两行数据,而且没有我们需要的pos值;我们来看一下内部情况,如下所示:
哇!看看滚动条,这里藏了这么多东西,而且滚动条自动滚动到最下面,就可以看到这个“,这到底是什么玩意儿?这不是我们的POS吗?
(哈哈,这里有掌声,也许伴随着你的“赞赏量”。)
我们来验证一下,切换到红框里的tab,在“>”提示符后输入..(''),回车,会得到如下结果:
上图是我输入了两次值来进行比较,可以看到我们拖到左边文章位置之后,val值发生了变化,如果我们有2篇文章会怎么样呢?看下图:
可以看到,这里存储的是一个非常简单的键值对,键是文章的唯一标识,值是带有过期时间的阅读进度位置。
4.微信在哪里?
微信的存储路径为:
com..mm\\

从名字“”就可以看出,这里保存的是一些用于显示的参数值,如果打开这里的数据,就可以看到里面有很多类似键值对的东西。
5. 问题
1.为什么不用来存储呢?
我觉得,一是有大小限制;二是每次都发送给服务器,对服务器来说也是一种资源的浪费。
2. 为什么不将进度推送到服务器进行保存?
还是一样,同一个用户看同一篇文章,在两个设备上继续看的可能性很小,就算有这样的人,也只是少数人(不知道微信有没有做过灰度测试,追踪过这种情况的人数),如果都存放在服务器,ROI(收益比)肯定不合适。
3.为什么需要设置超时值?
不知道。
六、结论
我们利用带内核的微信网页开发者工具对公众号文章阅读进度的保存位置做了简单的分析,验证了我们临时想出来的实现方法是否正确。
在目前的移动开发领域,应该被广泛的应用。
【编者注】要理解本文,需要了解几个概念:键值对等,这里就不细说了。另外本文中的分析工具和分析方法也值得思考。
请长按选择识别图中二维码,关注【信息时代的刑侦】公众号,学习犯罪方法、侦查技术、办案经验,实现自我提升、自我救赎!