在 iPhone 桌面放置钉钉考勤的快捷方式
前言
现在很多公司企业在使用钉钉做考勤,而且钉钉的考勤也的确比较方便,现在钉钉还支持 「极速打卡」和「一键打卡」两种快捷方式。
本文讨论如何将「一键打卡」可以做的更好。
将「一键打卡」挪到桌面
目前的「一键打卡」就是在聊天界面添加了一个悬浮的快捷按钮,需要手动点击后才能进入考勤页面。
那么,能否将这个快捷按钮挪到桌面里,点击后就能立刻进入钉钉的考勤页面呢?
答案是:可以。
url scheme
钉钉 APP 支持 dingtalk://dingtalkclient/page/link?url=
这样的 scheme。
更新: 现在钉钉考勤是小程序了,所以要用 dingtalk://dingtalkclient/action/switchtab?index=2&corpid=xxxx&appid=158
这个scheme来跳转,至于获取corpId的方式参考下文。
而所谓的考勤页面,其实就是一个网页。
所以,我们只要能找到这个网页网址,组装进这个 scheme ,岂不就是我们要的效果了。
找到这个网址
直接公布答案,iPhone 中钉钉考勤页的网页是:https://attend.dingtalk.com/attend/index.html?corpId=dingxxxxxxxxxxxxxx
,其中corpId
这个参数,不同公司是不一样的。
找到corpId
所以,新的问题是如何找到这个corpId
。
目前我找到的方法有两种:
1.用Charles
来抓一下 「钉钉 PC 版」的网络请求。
2.用安卓版的 钉钉开发版 在 Chrome DevTools
中捕捉网页。
上文的考勤网址就是通过安卓开发版中找到的。
组装 scheme
- 取出上面找到的 corpId,拼接成url:
https://attend.dingtalk.com/attend/index.html?corpId=dingxxxxxxxxxxxxxx
- 随手打开一个 chrome DevTools,使用encodeURIComponent方法得到:
https%3A%2F%2Fattend.dingtalk.com%2Fattend%2Findex.html%3FcorpId%3Ddingxxxxxxxxxxxxxx
- 最后拼接出scheme:
dingtalk://dingtalkclient/action/switchtab?index=2&corpid=xxxx&appid=158
捷径
iOS 新版系统多了一个叫做捷径
的 APP,可以用来创建 APP 的快捷访问,将上文的 scheme 如下图设定:
添加到主屏幕
在上文做好的捷径里,点击分享,选择「添加到主屏幕」,即可在主屏幕里多了一个直接打开钉钉考勤页的快捷方式了。
此时你也可以直接将你的捷径成果分享给同事,他们可以直接使用。
后语
以上,与大家分享从思路到实现的完整过程,仅供研究。
除了捷径,在老系统中,也可以通过base64网页的方案实现添加到主屏幕的功能,这就是另一件事儿了,下次再说。