小程序开发

小程序文件系统的优点有哪些?

编辑时间:2019-12-19 12:06  浏览次数:浏览次数

文件系统能力可以便会员在客户端保存文件资源,并在下次启动客户端以后能够采取已保存的文件。只要会员不积极卸载小程序或小游戏,并维持肯定的采取频率,文件都能够始终被留存。合理的采取文件系统能力来缓存资源文件,能够给开发人员更好的采取体验。今天,我们来共享文件系统能力的小故事。
微信小程序

1.文件系统的演进历史

小程序在最早上线的版本中就已提供了最基本的文件储存和卸载接口:wx.saveFile、wx.removeSavedFile ;对于绝大部分的小程序来说,这2个接口已经可以达到开发人员的需要。但对于小游戏来说,需求更详尽的能力来做支撑。因而,上线小游戏的同时我们便提供了一套更详尽的文件管理软件: FileSystemManager,其中重要涵盖了目录管理、文件内容读写等能力。

2.文件系统的设计背景

文件系统能力是应游戏小程序开发需要的迭代而逐步加强的。在小程序的场景下,许多同时只是需求把1个图片或视频资源缓存下来便可继续采取,文件内容与文件储存的目录结构都不是开发人员所关心的。可是在小游戏场景下情形则不一样——一方面,小游戏除了有图片和视频文件、还有游戏引擎生成的配置文件,游戏需求可以去读取并领会配置文件的具体内容;

另一方面,游戏采取的资源文件会比普通小程序更多,若没有内容目录管理的功能,维护成本会变高。除此以外,由于小游戏代码包大小限制只有4MB (加上分包最多8MB),对于一些偏重的游戏,资源甚至容易超100MB。因而在此大背景下,我们给文件系统重要增多了目录管理、文件内容读写等两项接口——

目录管理的需要场景是在采取游戏引擎时需求按目录来管理资源文件,文件内容读写的需要场景是在采取游戏引擎时需求读取配置文件;时候,我们对小游戏类目标本地储存容量的规范限制扩充到50MB。开发人员也许会困惑,为什么在小程序的文件系统中会有一些功能相贴近的接口?比如,想缓存1个文件,能够用 saveFile 或 copyFile ;再例如 removeSavedFile 和 unlink 都能够用来卸载1个文件。

上述情形的原因是我们在前期便提供了基本的文件储存接口 saveFile 和 removeFile ,但不提供自定义目录有关的能力,开发人员调用 saveFile 以后只能拥有微信返回到的1个随机文件名。小游戏应时而生过程中也加强了对文件系统能力拓展的需要,为了保障向后兼容,我们留存了这批基本接口,并在这个基本上增多了目录管理接口以及对应的文件操作接口。因而,便出现了上述一些类似接口的情形。

3.文件系统的优点—储存隔离

有不少开发人员问询过关于文件储存的问题,他们害怕文件内容被其他小程序读取到,也害怕数个登录会员中间的文件内容会互相影响。为了保障会员的隐私安全,也为了保障小程序的数据安全,本地文件储存的1个主要规则便是保障隔离。文件被储存到本地后,会以小程序账号和会员账号2个不一样的层面来划分和隔离。即:同个微信会员采取不一样小程序中间的文件储存会互相隔离;不一样微信会员(在同一台手机中)采取同个小程序时,不一样会员间的文件储存也会互相隔离。

4.得当的储存容量

思考到储存的问题,我们规范了小游戏文件储存的容量。普通小程序是10MB,小游戏则是50MB,当文件储存超出限制时,写入的文件会失败。功能发布之后,我们曾收到过若干宝贵意见与反馈,期望能提高容量限制。但在经过频繁论证与评价后,我们认为假如将文件储存的容量再往上提,就会有会员新增需求管理或清理手机储存空间的需要,小程序和小游戏将会变得不再“小”了。对于资源文件超过上述标准限制的小程序与小游戏,应该合理地管理本地文件,实时清理不常用的文件,这样在大部分情形下,手机储存空间便能保障通畅。



本文地址:https://www.webbj.cn/opertion/xcx4227.html

免责声明:我司网站转载此文,不代表本网的观点和立场。不以盈利为目的,如有侵犯公司或个人权益,我司会第一时间删除文章。 思捷智联是北京小程序开发公司,欢迎咨询免费获取思维导图!
推荐阅读
思捷智联

思捷智联是一家2009年成立于北京的IT外包公司,我们致力于为企业提供app软件开发和微信小程序开发服务。公司成立10年来,我们为民政部、方正电子、神州数码、联想控股、壹基金、首钢集团、北京大学、北京师范大学、今麦郎、丰汇租赁、万通控股等上百家企业提供了IT外包服务。我们努力实现每一位客户的托付,为客户创造实在的效益,让您与梦想走得更近。

微信咨询

扫描微信二维码
同市场经理沟通需求

感受专业服务,从来电咨询开始
010-69759765186-1139-1767