编注:Matrix 是少数派的写作社区,我们主张分享真实的产品体验,有实用价值的经验与思考。我们会不定期挑选 Matrix 的优质文章,展示来自用户的最真实的体验和观点。文章代表作者个人观点,少数派仅对标题和排版略作修改。
▍背景
作者的所在地是郑州,目前我们实行的是每两天(48 小时)一次核酸检测。所有公共场所或是小区等地均有专属场所码,在进入该场所之前需要使用微信或支付宝扫码,并把扫码结果出示给工作人员,扫码后你的手机上会显示如下信息:其中多数公共场所必须 48 小时内的核酸检测结果为阴性才能进入,而除了成年人要每两日检测核酸之外,没有手机身份证的儿童也会在幼儿园、学校等要求下,不定期上传核酸检测结果。因此,检测核酸几乎成了郑州人民的日常。其他地区不太清楚,但是我们这边全市公共核酸检测,使用的都是同一套系统,且每个人的检测二维码自申请之日起就是固定不变的,这也使得检测码可以被离线调取。如何判断你的检测码是否是静态的,可以使用这个方法:- 用微信扫描这些二维码,看里边的文本内容是不是一致的;
如果内容每次一样,就说明为静态二维码。
为了实现全民出行随时能有 48 小时的阴性核酸,全市像这样的检测屋大概有 4000 多个,分布在大街小巷。在需要做核酸检测的时候,在检测屋窗户右下角的位置让扫码设备扫一下你的核酸检测码,就可以识别出你的信息,然后进行下一步的检测。正常情况下我们调取核酸检测码,是在一个叫做「郑好办」的 app 中,大概需要经过 4 次点击才能找到,如果网络状况差,可能等待的时间会更久。所以大多数人都把检测码截图放在相册中,使用的时候打开相册找出来就可以。但这种方式始终不够方便。使用快捷指令,除了可以迅速出示检测码之外,还可以通过 Siri 调取。而且这些动作也都同时可以在你的 Apple watch 上体验:
想要实现单个人的二维码调取非常简单,大体思路就是,把图片转为 Base64 编码的文本,存入快捷指令(因为快捷指令只能离线存储文本,不能存储多媒体信息),然后在快捷指令中解码呈现。具体的操作步骤如下:3. 通过 https://c.runoob.com/front-end/59/ 将二维码图片转为 Base64 编码的文本;4. 转换后的文本要将开头声明数据类型的这部分删除(重要):data:image/jpeg;base64, 然后复制剩余文本;5. 打开快捷指令,新建一个快捷指令「核酸检测」;6. 拖出一个「文本」组件,并填入第 4 步中转换好并处理完毕的 Base64 编码文本;7. 紧接着拖出一个「Base64 编码」组件,并设置为「解码」;8. 最后加入一个「快速查看」,设置显示「Base64 已编码内容」,同时将类型设置为「图像」。使用「快速查看」而不使用「显示结果」是为了通过 Siri 语音操作时也可以正常显示如果你像我一样,要时常带着儿子或者女儿去做核酸检测,那么你手机中一定存有他们的检测码。这时候我们把上边的快捷指令稍微改动一下,增加一个二级菜单,就可以实现在一个快捷指令中,调取不同人的检测二维码了。具体改动操作如下:2. 分别命名你要调取的二维码名称(比如:爸爸、儿子、张三等,这个步骤关系到你使用 Siri 操作时的指令语言);3. 在每个菜单分类的下方,加入一个「文本」组件,并通过上方 2、3、4 步骤中处理二维码与 Base64 代码的方法,把处理好的代码分别贴进对应的「文本」组件中。带有二级菜单的快捷指令,在使用 Siri 调取的时候,需要二次对话,讲出二级菜单的名称。但是真实的场景是,如果不是为了装 X ,更多时候我还是会选择在快捷指令下用手点击调取。虽然本文是利用快捷指令来展示核酸检测码,但是同样的方法也可以用于出示其它信息。比如微信名片、推广二维码、或是一些其它你想展示的任何内容。只要你想展示的信息或者二维码是静态固定不变的,就都可以利用该快捷指令实现。你也可以把你经常会用到的静态二维码,利用上方进阶版的方法,全部做到一个快捷指令中,通过二级菜单进行调取。每个人对于快捷指令的认识程度各不相同,文章也希望能够让一些零基础的同学自主操作,所以很多地方写的较为详细,目的在于能帮到更多有此类需要的人群。