





















自从有了淘宝,有了各种购物平台,网上购物衍生了各大快递行业,虽然说各大购物平台可以基于订单提供物流信息。但从众多平台获取物流信息仍然相当耗时,而且不可避免的仍然有许多不通过消费平台不能直观显示物流信息的运单。
通过这些方式10秒钟之内你能得到自己想要的信息吗?答案是NO。所以你的时间就这样浪费掉了。
需要查物流的场景无处不在,虽然对于个体而言并不属于频繁发生的事件,但试想一下,每次当你需要查这样那样的快递的时候,就会为查快递所需要完成的操作感到尴尬。你有时候去对应的app里找,有时候需要打开微信去服务号里找,有些时候还得打开网页搜索查询。一次两次你肯定会觉得到没什么,但你很有可能会在几天内频繁重复这样的操作。这样以后,也许你应该思考探索如何更快更直观地获取物流信息。


特别放上效果图,通知中心这个WF的便利更加明显。



1、既然是快递查询,那首先需要有一个平台可以提供所有快递查询,最好是可以免输快递公司自动查询的平台。所以快递100这个角色开始浮出水面。
2、作为一个规模不小的平台,快递100自然绝不仅仅只提供给所有人可以查询的服务而已。那么我们如果能直接用快递100官方提供的查询方法来查那可以很方便的实现我们的需求。快递100的官方页提供了专门的接入文档供我们参考,如下面我们即将用到的这个手机查询API,无需授权即可使用。

此查询方法要求我们传入两个参数,一个是快递公司编码,一个是订单号。这里的公司编码十分关键,因为能不能顺利自动获取到这个公司编码决定了制作出来的workflow的质量,我可不想每次执行workflow还得选择下是哪个快递公司。
3、所以难题出现了,怎么根据订单号自动获取公司编码?官方文档看起来并没有指引我们怎么自动获取快递公司编码,但我们发现,快递查询界面里是可以只输入订单号进行查询的,所以我们可以通过这个现象来观察蛛丝马迹。

我们发现,每次输入一个订单号,输入框下面就会自动提示所属快递公司。也就是说每次输入都会自动触发网络请求,所以我们可以很轻易地在控制台里发现这个网络请求,返回的数据格式也很清楚了,里面的autoCode即我们需要的公司编码,至此这一难点解决。

4、有了查询方法下一步就是怎么结合workflow实现自助查询。所以提前调研下workflow会发现有几个关键动作:获取查询网址返回的内容/解析返回数据。有了这两个关键的动作才有可能解析出第三步所提到的公司编码。

好了,这已经是一个功能完整的快递查询workflow了。执行我们就可以看到我们需要的快递信息了。但是不知道你发现问题了没有,使用官方提供的这个查询方法有两个明显的缺点。
测试查询效果:

虽然上面存在两个问题,但改造起来其实只要解决一个问题,不采用官方提供的内嵌页面查询方案自然就不存在网页渲染,广告的情况。
我们依旧使用电脑版快递100来观察现象,可以发现,点击查询的时候,有一个请求方法是获取原始数据的。也就是说,如果我们可以直接操作原始数据的话那就一定不会存在上面的两个问题,我们可以完全自定义显示!


测试查询效果:

Pin的剪贴板是一个不错的信息存放点,像下图我将我最近需要的三个订单号pin到了剪贴板上,当我需要查询其中某个快递的时候,只要点击一下订单号就拷贝好了,再点击下Workflow查询就可以展示快递信息了,整个操作只需要两步点击并在通知栏操作就完成了。

注:如果不知道如果使用我分享的workflow,请查看我的上一篇有关于workflow技巧的文章,文末有提到如果使用。

因为手上没有那么多快递公司的单号,所以不敢保证任何快递公司的物流都可以准确地查询,不过至少我自己测试过的订单都可以查到信息。还要注意一点,如果快递公司没有提供物流信息的话那也是查不到的哦,因为有了订单号,还得有快递公司提供的物流信息才能正常显示。本期分享到此,欢迎评论讨论。
此内容由惯性聚合(RSS阅读器)自动聚合整理,仅供阅读参考。 原文来自 — 版权归原作者所有。