• 沒有找到結果。

3. 資料蒐集平台介紹

3.2 Log Collector Service

3.2 Log Collector Service

要分析使用者的行為模式,需要取得其在手機上的操作紀錄,因此本研究開 發出可以背景執行不間斷的記錄手機上的行為的程式。

由於 Android 平台上的程式開發便利,本研究可以很快的透過 Android SDK 快速的在手機平台上開發專屬的 User Log Collector Service,收集使用者在日常 生活中使用智慧型手機所出現的行為資訊紀錄,另外也可以透過 SDK 中所提供 的 API 方便的取得其他我們想記錄的項目資料,例如透過 Location Manager 取得 位置資訊等,然而在 SDK 中出現沒有提供可以取得系統與其他應用程式的詳細 資料的情形,所以在此部分藉由 Android SDK 提供的 logcat 工具,logcat 記錄了 Android 手機內部的所有硬體軟體資源執行的記錄,包括出現甚麼錯誤、警告、

正常的程式執行到哪個 Activity,幾點幾分被執行都會有記錄,透過 logcat 應用 程式可以取得 Android 內部各種應用程式所產生的 log (如圖 3-2)。

‧ 國

立 政 治 大 學

N a tio na

l C h engchi U ni ve rs it y

17

圖 3-2 Android SDK 所提供的 logcat

3.2.1. Service dataflow

此處提出使用者處於無網路的環境資料無法上傳的解決方法。一般操作會存 在手機端資料庫,因為要收集的 log 必須上傳到伺服器,而使用者不是隨時隨地 有網路,甚至使用者可能處於無法上網的區域,為了防止使用者因為無法上網而 不能上傳資料到資料庫,經由 Log Collector Service 所取得的 Log 資料將先預存 在 Android 預設的 SQLite 中,直到使用者處於可以將資料傳輸到網路的區域,

此時再將手機中 SQLite 中的 Log 資料寫入到真正儲存資料的資料庫中(如圖 3-3)。

透過記錄使用者開啟的應用程式產生的 log 資料,可以詳細記錄使用者的操作行 為,將資料已透過網路的方式傳送到遠端的資料庫中,使用者不需將設備交回即 可收集手機中儲存的 Log 資訊,透過這種方式可以不中斷實驗以及不打擾使用 者日常生活,如此一來就可以收集到更貼近使用者平日使用手機應用程式的操作 行為。

‧ 國

立 政 治 大 學

N a tio na

l C h engchi U ni ve rs it y

18

圖 3-3:User 產生的 Log 會先存在 Mobile DB 中,之後再透過 3G/WiFi 將資料傳送到遠端的 Database 上,研究者之後可以針對這些 Log 進行查詢

3.2.2. Log Table in Remote Database

為了有系統的記錄使用者的操作行為,本研究對每一筆的資料定義其屬性,

目的是讓研究者可以從記錄中獲得更多的資訊。

在現階段的使用者 Log 記錄中儲存了使用者操作手機產生的各式操作行為,

其中 ID_User 記錄了使用者登入到 Android Market/Google Play 所使用的帳號,

ID_Machine 紀錄受試者所使用的 Android 手機的 IMEI 碼(即為手機的序號),

Name_App 欄位記錄了使用者啟動的應用程式名稱,而 Name_Activity 欄位記錄 了使用者對應用程式的操作行為,其中對於網頁瀏覽或是其他的應用額外產生的 資訊例如:網址,會記錄在 ExternalData 欄位中,最後 Latitude , Longitude 欄位則 記錄了使用者的位置資訊。(如圖 3-4)

‧ 國

立 政 治 大 學

N a tio na

l C h engchi U ni ve rs it y

19

圖 3-4 資料庫中的欄位

3.2.3. Log Collector Service Limited

在目前程式的實作方法上仍然有一些限制,因此本研究採取批次上傳的機制 來防止過度的電源消耗。

透過即時將資訊傳送到遠端資料庫可以進一步做到即時的分析,然而如果進 行即時傳輸的模式往往會造成手機的耗電量大幅上升,影響到使用者的行為模式 以及造成不適感,另外記錄使用者的地理位置一般要透過網路,若要拿到更精準 的經緯度座標則使用者必須願意開放 GPS 的使用權限來取得,而使用 GPS 定位 會造成電力的大幅度消耗,基於本實驗想要記錄的是使用者平常習慣的操作行為,

盡可能不去改變使用者習慣。本實驗所採用的半即時資料傳輸模式架構可以調整 資料上傳的頻率,來盡量降低裝置的耗電量,然而在需要 GPS 定位時所造成的 耗電量現階段仍無法改善。

受限於半即時資料傳輸模式,資料並非即時傳到遠端的伺服器上,如果使用 者上有資料未上傳就將手機回復原廠設定,將導致手機上的資料庫清除,相關實 驗數據也就隨之消失。

‧ 國

立 政 治 大 學

N a tio na

l C h engchi U ni ve rs it y

20

相關文件