2011年7月12日 星期二

Flurry - Mobile Application Analytics


原本想說要一個禮拜寫一篇文章的
想不到才一開始就懶散了
趁今天晚上下雨沒有辦法踢足球的晚上
再來趕功課

今天聽到客戶說要分析我們的ipad app上使用者的行為
希望可以知道使用者點了哪些item 還有做了哪些事情
希望進一步份析使用者的使用狀況
相信有寫web的應該二話不說就直接想到Google Analytics
但是到了mobile領域 還真不知道使用什麼東西勒
經過學長的指點 說有一個service叫做Flurry好像就是在做這樣的服務
用了一下還真的挺簡單易用了
在此就跟大家報告一下

要分析使用者的行為我的需求如下
1. 可以自訂我想監控的行為
2. 很簡單的可以插入我的code
3. 最好可以在離線的時候也可以統計使用者行為
4. server端有類似Google Analytics的報表介面
5. 有API可以抓報表資料整合外部的系統

想不到Flurry是五個願望一次滿足,
而且我只用了一個小時的時間就知道怎麼用了
完全沒有花到太多的功夫。
以下是使用方法及功能介紹

1. 註冊帳號
首先連到它們的官方網站 http://www.flurry.com/
註冊一個帳號 並且新增加一個application 並選擇你的平台 (我當然是選iPad, iPhone, iPod..)
之後就可以根據你選擇的平台Download SDK,而它也會給你這個app的application key
我們之後就必須用這個key來跟Flurry互動

2. 整合進你的project
a. 解開sdk,裡面主要有兩個檔案需要加到我們的project
FlurryLib/FlurryAPI.h
FlurryLib/libFlurry.a

b. 在你的AppDelegate的進入點,塞進初始化function

#import "FlurryAPI.h"

- (void)applicationDidFinishLaunching:(UIApplication *)application {
[FlurryAPI startSession:@"YOUR_API_KEY"];
}



3. 追蹤使用者行為
如果你想監控使用者是否按下一個button,你可以在對應的action加上下面這段code
[FlurryAPI logEvent:@"EVENT_NAME"];
這個event name可以自己定義,每個event name會變成server端的一個獨立數據


如果想用類似網站的pageview概念
可以使用
+[FlurryAPI logAllPageViews:]
+[FlurryAPI logPageView]
前者可以帶一個參數是UINavigationController或是UITabBarController,在每次切換的動作發生時,自動增加一次page view。
後者是手動的增加一次page view

4. 上傳追蹤資料。
上傳的動作是完全自動的。
Flurry會在app開啓或是關閉的時候自動的把這些追蹤資料整包的丟給server,
我們完全不用寫任何一段code。
另外因為他的做法本來就是先把這些使用者的行為放在local,
所以即使離線也可以紀錄,
直到下次使用者打開或是關閉app的時後是有連上網的時候在一併上傳

5. 報表系統
server端有完整的圖形化介面來統計數據
有Dashboard的整體分析
還有Usage, Audience, Events, Technical的細項分析
基本上功能還算完善







6. 數據資料下載
如果你有自己的server,想要把這些統計資料整合到自己的系統的話
我們也可以用它們的REST API去抓取這些資料
如果有需要的話可以連到這邊去看詳細資料
http://wiki.flurry.com/index.php?title=API_Usage


另外提醒一點的是,
在我初次測試的時候,我會想說log的event應該要馬上出現在server
事實上他並沒有那麼快的反應,可能會要等個半個小時左右才會更新一次報表 (詳細間隔還需要確認)
所以如果你的log沒有出現可能要請你等一會唷..

4 則留言:

  1. 有Mobile的分析工具@@
    這可真是有用啊

    回覆刪除
  2. 事實上google也有出google analytics for mobile了..改天看有沒有時間來再分享

    回覆刪除