一常侦、背景概述
上一篇文章搞定了蘋果健康應(yīng)用里面的存量數(shù)據(jù)的導(dǎo)出及轉(zhuǎn)換格式倒入自己的維格表格(云端數(shù)據(jù)庫),本篇完成每天新記錄的健康數(shù)據(jù)通過【快捷指令】自動(dòng)化執(zhí)行上傳同步到維格表格浆西。
本篇主要內(nèi)容:
1、通過維格表格標(biāo)準(zhǔn)API接口編寫一個(gè)快捷指令的思路
2移必、實(shí)現(xiàn)批量蘋果健康數(shù)據(jù)每天自動(dòng)化同步到維格表
二室谚、準(zhǔn)備內(nèi)容
快捷指令app
蘋果健康app
ios手機(jī)一臺(tái)
建立好的健康指標(biāo)專用維格數(shù)據(jù)庫
三毡鉴、過程記錄
1)了解維格API與快捷指令URL組件
在維格API里面咱們只需要用到這個(gè)add新增數(shù)據(jù)這個(gè)接口就行崔泵,四部分對(duì)應(yīng)內(nèi)容如圖片所示對(duì)應(yīng)。
什么是token猪瞬,是你維格賬戶的唯一密鑰憎瘸,可以當(dāng)作是往里面添加數(shù)據(jù)的進(jìn)門鑰匙。所以這塊我單獨(dú)拿一個(gè)變量進(jìn)行了存儲(chǔ)陈瘦,方便把快捷指令分享給他人的時(shí)候快速直接復(fù)用幌甘。
data是顧名思義就是要上傳的數(shù)據(jù)內(nèi)容部分,維格限制了一次最多只能新增10條痊项,咱們就建立一個(gè)10條內(nèi)容的文本進(jìn)行賦值就行锅风。在執(zhí)行接口請(qǐng)求的時(shí)候需要帶上。
理解了這個(gè)關(guān)鍵組件使用就可以做很多自己的玩法研究了鞍泉。
2)設(shè)計(jì)編寫快捷指令過程及思路
第〇步皱埠、驗(yàn)證官方API的有效性
避免做無用功,第一步永遠(yuǎn)是先自己測(cè)試一下官方給的接口是否能調(diào)通咖驮,上網(wǎng)隨便搜一個(gè)在HTTP在線調(diào)試工具边器,也是按請(qǐng)求地址、header托修、data三部分把內(nèi)容填進(jìn)去忘巧。
發(fā)送請(qǐng)求后,獲得反饋狀態(tài)碼為200表示請(qǐng)求指令執(zhí)行成功睦刃。同時(shí)也會(huì)返回對(duì)應(yīng)添加內(nèi)容的一些其他例如添加時(shí)間砚嘴、自增序號(hào)之類的屬性字段。
如果返回狀態(tài)碼不是200涩拙,可以根據(jù)官方的手冊(cè)际长、聯(lián)系客服以及自己查看代碼格式等形式找到問題(我就多了一個(gè)逗號(hào)報(bào)錯(cuò)半天),減少后期在快捷指令中出現(xiàn)問題的風(fēng)險(xiǎn)吃环。
第一步也颤、獲取正確的健康樣本數(shù)據(jù)
因?yàn)槟康墓δ芊浅C鞔_,就是要做一個(gè)每天晚上同步手機(jī)里的健康數(shù)據(jù)的自動(dòng)化捷徑郁轻。所以取到正確健康數(shù)據(jù)很關(guān)鍵翅娶。然后才是把數(shù)據(jù)上傳等操作文留。
我是之前在寫格志日記就熟練使用這部分的健康數(shù)據(jù)查找使用了,但是不妨記錄一下思路竭沫。
1燥翅、先在蘋果健康中找到想要記錄的身體指標(biāo),查看所記錄的數(shù)據(jù)詳情蜕提。
以睡眠為例子森书,里面都是一段一段的持續(xù)時(shí)間。
2谎势、所以第二個(gè)就是從樣本數(shù)據(jù)中獲取持續(xù)時(shí)間
例如步數(shù)就是獲取值凛膏、心率也是獲取值
3、對(duì)獲取的數(shù)組內(nèi)容做預(yù)處理
睡眠就是把各段睡眠持續(xù)時(shí)常做累加即可脏榆,但是最高心率就是取最大值猖毫,最低心率就是取最小值。
4须喂、對(duì)獲取的數(shù)據(jù)做單位轉(zhuǎn)換
大部分健康數(shù)據(jù)都可以通過累加綜合等方式就能直接使用吁断,但是睡眠需要做單位轉(zhuǎn)換。
把獲得的持續(xù)時(shí)間觀察一下就知道是多個(gè)以秒為單位的時(shí)間坞生。
從秒的數(shù)值轉(zhuǎn)換為x小時(shí)x分仔役。我用了一個(gè)笨辦法,先把累加計(jì)算的結(jié)果除3600是己,取整數(shù)又兵,就是小時(shí)數(shù)然后設(shè)定小時(shí)變量,完了再用除3600的結(jié)果減去設(shè)定變量的小時(shí)變量就能得到0.幾的小時(shí)直接再乘一個(gè)60就能得到分鐘數(shù)赃泡,再設(shè)定一個(gè)分鐘變量寒波。2個(gè)變量數(shù)文本一拼就是昨晚的睡眠數(shù)據(jù)了。
5升熊、最后一直調(diào)整到能得到想要形態(tài)的結(jié)果數(shù)據(jù)
然后按同樣的方法嘗試其他類型指標(biāo)的提取方式或辦法俄烁,目測(cè)應(yīng)該沒有比睡眠時(shí)長(zhǎng)更麻煩的了,其他的都很簡(jiǎn)單级野。
第二步页屠、實(shí)現(xiàn)一個(gè)最小樣本數(shù)據(jù)上傳
有了前兩步的積累就能實(shí)現(xiàn)一次快速的單健康數(shù)據(jù)同步上傳了。
把從健康中獲得數(shù)據(jù)結(jié)果賦值一個(gè)變量蓖柔,然后直接填到對(duì)應(yīng)的URL數(shù)據(jù)中辰企,運(yùn)行快捷指令。查看返回結(jié)果是不是200况鸣,同時(shí)登陸PC端的維格數(shù)據(jù)表查看是否確實(shí)數(shù)據(jù)更新到位牢贸。沒問題就實(shí)現(xiàn)了一個(gè)最小MVP。
第三步镐捧、編寫完整的快捷指令程序
這部分就比較枯燥了因?yàn)榻涌谙拗剖桥啃略鲎疃?0條潜索,所以咱們就充分利用十條臭增,創(chuàng)建10個(gè)健康數(shù)據(jù)獲取的程序塊,分布賦值指標(biāo)1-10竹习,然后data數(shù)據(jù)文本也擴(kuò)充為10條記錄誊抛。
之前有一個(gè)小偉大神開發(fā)的快捷指令復(fù)制捷徑,現(xiàn)在已經(jīng)失效了整陌,只能用目前我能找到最快的方法:用IPAD編寫拗窃,通過右側(cè)收藏列表,快速拖拽需要的組件到程序序列中泌辫,但是偏偏ipad端又是沒有健康app的随夸,最后還得回到手機(jī)端再挨個(gè)設(shè)置里面的細(xì)項(xiàng),大概花了1小時(shí)做這個(gè)事甥郑。
第四步逃魄、優(yōu)化快捷指令程序使用體驗(yàn)
1荤西、提取賦值變量做公共詞典
在第三步我所有的指標(biāo)名稱都是直接寫死在data的文本框里面的澜搅,如果要修改起來是比較麻煩的,包括請(qǐng)求地址和token其實(shí)都是自定義文本的賦值邪锌,我就干脆設(shè)置了一個(gè)詞典勉躺,然后在data文本中直接使用詞典中指定鍵值。在開篇完成相應(yīng)的定義觅丰,方便自己清晰總覽同時(shí)被他人個(gè)性化使用饵溅。
2、給運(yùn)行結(jié)果添加提醒反饋
簡(jiǎn)單寫一個(gè)如果否則的判斷程序妇萄,對(duì)提交URL請(qǐng)求后返回的內(nèi)容做一個(gè)展示蜕企。如果成功直接告訴已經(jīng)上傳成功的結(jié)果,失敗往前臺(tái)透出相應(yīng)的錯(cuò)誤狀態(tài)碼詳情及說明冠句。
方便使用中定位問題轻掩。
3)設(shè)置自動(dòng)化運(yùn)行捷徑
這部分應(yīng)該還有坑,因?yàn)楸『山】刀际?2點(diǎn)定時(shí)同步數(shù)據(jù)到蘋果健康的懦底,也就是12點(diǎn)之后才能拿到前一天的數(shù)據(jù)唇牧,所以我取的都是最近1天的數(shù)據(jù),而不是「在今天」的數(shù)據(jù)聚唐,然后配合運(yùn)動(dòng)手表的健康運(yùn)動(dòng)的app丐重,需要每天打開之后才能通過藍(lán)牙同步數(shù)據(jù),需要在往維格上傳之前先把手表的數(shù)據(jù)同步都手機(jī)上先杆查,可以做成一連串的自動(dòng)開啟應(yīng)用扮惦,再關(guān)閉,最后再開同步亲桦。
還經(jīng)常有奇怪的地方會(huì)卡住崖蜜。等我研究透再稿一篇好了掺栅。實(shí)在不好自動(dòng)化每天早上起床關(guān)掉鬧鐘后,手動(dòng)點(diǎn)擊一下執(zhí)行同步健康數(shù)據(jù)的快捷指令也行纳猪,剛好拿到完整的睡眠數(shù)據(jù)。
四氏堤、心得體會(huì)
1沙绝、我會(huì)把寫完的快捷指令分享出來鼠锈,關(guān)注我賬號(hào)私信回復(fù)關(guān)鍵詞“維格健康”給您發(fā)送本文完成的快捷指令的下載鏈接。您可以個(gè)性化編輯修改為己所用购笆。
2、除了這種定期同步每天會(huì)產(chǎn)生的健康指標(biāo)之外同欠,還有一些例如不定期的測(cè)尿酸样傍,測(cè)血壓,體重铺遂,體脂及運(yùn)動(dòng)記錄也可以用類似的快捷指令組件完成數(shù)據(jù)的記錄衫哥,但沒必要每日同步上傳了靖秩。
3怜校、有了存量健康數(shù)據(jù)、及每天同步的新數(shù)據(jù)寓辱,下一步就可以搭建「健康指標(biāo)數(shù)字駕駛艙」粮坞。
關(guān)于作者
曾創(chuàng)業(yè)四年蚊荣,期間全年無休住辦公室,工作內(nèi)容涵蓋了弱電莫杈、開發(fā)互例、產(chǎn)品、UI姓迅、測(cè)試敲霍、運(yùn)營、售前丁存、售后肩杈、項(xiàng)目管理、財(cái)務(wù)解寝、人力等填坑經(jīng)歷扩然,企業(yè)最高估值過千萬。
變身打工人后聋伦,充分發(fā)揮分身能力夫偶,投身興趣界睁;曾兼任新華三大學(xué)《時(shí)間管理》課程內(nèi)訓(xùn)講師。
現(xiàn)于500強(qiáng)能源企業(yè)中任職IT產(chǎn)品經(jīng)理兵拢,同是少數(shù)派matrix簽約作者翻斟。