人的一天幾乎有三分之一的時間在睡覺,但現代人時常卻時常因為睡眠問題而困擾!回想一下自己最近的睡眠狀況,你是否遇過無法入睡、睡到一半忽然驚醒、或是醒得太早?偶一為之對身體影響不大,但是若長期處在睡眠不足或睡眠品質低落的狀態,則可能對身心造成影響。這時候也許該求助醫師檢查自己是否有睡眠障礙,但專業的睡眠檢測與治療資源有限,在醫師的檢查之外,如果能輔以居家追蹤,不但能讓個人對自己的睡眠狀況更為了解,也可以協助專業醫療更有效的觀察與診斷。輔仁大學的團隊針對這個需求開發了「基於 HTML5 的跨行動平台響應式睡眠節律服務」,針對三大問題提出解決方案:(1) 睡眠紀錄裝置眾多,但是不一定有睡眠專業的認證,且呈現出來的結果對使用者來說不一定容易理解;(2) 睡眠服務在網路連線或離線狀態變更時,不能與雲端順利銜接,產生資料一致性的問題;(3) 無線行動裝置繁多,針對所有不同裝置設計開發睡眠專用 APP 工程浩大。
在進行開發的時候,遇到什麼樣的問題,又有什麼心得?我們現在就立刻來請梅興老師分享吧!
Q: 能不能先請老師為還不了解這個計畫在做什麼的讀者介紹一下這個計畫?
A: 當然沒問題。我們團隊做睡眠相關的研究已經好多年了,除了輔大自己有醫學系,也有與專業的醫療人員配合,像我們的計畫共同主持人就是新光醫院睡眠中心的主任,同時也是睡眠協會的理事長,他負責診斷,而我負責平台,換句話說,我負責收集病人的健康偵測和後端平台,再交給他診斷。我們研究的重點其中有一個是老人與老人的睡眠,許多人都有睡眠困擾,但因為到大醫院做睡眠檢查需要排隊排很久,有時候甚至幾個月才能輪到,不但昂貴又費時,也不容易進行持續的追蹤,所以我們希望把睡眠服務帶進居家。居家怎麼偵測睡眠,當然是使用裝置來收集睡眠資料,雖然精密度不如大醫院,但優勢在於個人可以長期的紀錄分析。目前市面上也有不少 app 可以進行睡眠偵測,人一個晚上的睡眠分為許多區間,像是深睡期、快速動眼期,手機 app 是利用震動偵測使用者是否有移動來判斷使用者的狀態,也有一些穿戴式的裝置可以偵測,但實際使用過之後,準確度都還有進步的空間。在幾年以前美國有一間公司推出的 Zeo 睡眠偵測裝置的準確度不錯,在當時還曾是聖誕節最受歡迎的禮品,但非常可惜那間公司因為財務因素收了。我們團隊也有關注穿戴式運算,因為硬體軟體的整合繁複,有網路、系統、硬體、資安、設計、UI 等等的整合,很值得研究,不過目前打算先專心在平台的開發。現在很多公司都在發展這一塊,不管是手錶、眼鏡、還是手環,可以預期穿戴式裝置將會是市場下一波發展的焦點,但屆時的重點將會是裝置怎麼和平台整合,還有如何定義裝置和平台之間的溝通標準。
Q: 這個計畫使用 HTML5 開發 app。目前市場上應該只有 Firefox 支援原生 HTML5 開發的 app,在 iOS,Android 與 Windows Phone 目前以 Apache Cordova(或稱 PhoneGap)framework 為開發框架。不知道這個專案的 HTML5 是否也是使用 Apache Cordova 作為開發框架呢?
A: 在iPhone 剛開始有app的時候,有些不想開發 native 或是不想另外學習 Objective C 的開發者會採用 PhoneGap, 因為 PhoneGap 是跨平台的開發框架,理論上開發者就不會被 android 或apple 綁住,蘋果商店也曾覺得用 PhoneGap 開發的程式體驗不如原生或是效能不佳而拒絕上架。我們團隊 PhoneGap 倒是滿早以前就開始用了,大概從 1.0 它剛出來不久,到現在已經四~五年了,當時我們進行的是另一個計畫,同時也是現在這個計畫的前身。因為在學校裡面做 iOS 的開發會有訓練的問題與硬體的問題,開發成本也是一個重要的考量,使用 iOS 的裝置與開發套件都所費不貲,使用 PhoneGap 可以在開發時成為一個有力的輔助。
Q: 使用 HTML5 開發的目的是希望跨平台,從計畫書中可以看出已經有 Android 的 app 了。不知道 iOS 與 Windows Phone 等平台的 app 是否也在開發中?
A: 其實不只 android, iOS 和其他平台我們都有在開發。微軟的也有,這個部份我們是用 Visual Studio 和 JavaScript 來做,不過它和 Windows 綁得很緊,要到不同的作業系統上開發會有困難,但如果是已經習慣微軟工具的開發者也熟悉 C#,那開發起來會比較容易。我們自己實驗室是盡量接觸不同的平台,每一個原生的都有開發,不過在教學的時候會因為一些限制所以不一定每種都可以教,例如 iOS 會受制於設備和開發費用。
Q: 計畫書中提到「我們將以使用者全日的日照與使用 3C 顯示器的行為作為節律睡眠商數設計的主要考量,分析入睡前使用 3C 裝置對睡眠的影響。」請問使用者全日的日照與3C顯示器的使用是依賴裝置和平台之間的溝通標準,這個部份是使用者輸入嗎?或者是 app 會智慧判斷?
A: 光照對睡眠節律的影響頗大,因為光線會影響到大腦視丘褪黑激素的分泌,視丘中的松果體也被認為是影響生理時鐘的重要構造。年紀大的人分泌的褪黑激素一般來說比較少,很多老人會早睡晚起,年輕人比較常晚睡早起,這個變化其實跟光照有很重要的關聯。老年人常在早上運動,早上接受光照會影響褪黑激素分泌的時間,讓睡眠節律往前提;相反地,年輕人如果在下午或傍晚運動,睡眠節律則會往後移動。睡前使用 3C 產品,它的光線也會經由視神經刺激腦部,影響到睡眠,另外在黑暗的環境使用 3C 產品也會影響到視網膜,可能會造成眼睛的疾病。
剛剛提到光線對睡眠影響,我們用 Arduino 做了一個可攜的小裝置,隨身紀錄使用者全天的受光亮,包含在電腦前面的受光量,然後做一個睡眠商數的公式,睡眠商數就是以使用者容易理解的方式呈現每天的睡眠品質。有一些資訊其實是使用者自己沒有意識到的,例如說半夜醒來幾次,這些動作有時候在使用者清醒的時候都沒有記憶,但裝置可以偵測並紀錄下來。除了裝置的偵測之外,我們還有一個「好眠居」的平台,請使用者自行填寫幾點準備睡覺、幾點醒來,這個叫做「睡眠日誌」,如果去醫院進行睡眠檢測的時候他們一樣會請你填,可以幫助了解睡眠狀況。那個睡眠日誌一般人看不太懂,但我們將它化為睡眠商數之後就可以用容易理解的方式呈現睡眠狀況,可以幫助使用者自行判斷影響睡眠的原因。接下來我們將會加入運動的偵測,研究運動對睡眠的影響,持續運動三四個禮拜就會影響到睡眠,一般來說可以感覺到睡眠品質的提昇,但運動的時段也會影響,如果在不對的時間運動可能會適得其反。
專案網址:
評論
用 Cordova 開發出來的 ios app ,
有順利的上架嘛?
需要注意那一些的事項