アイディアボード

Just another WordPress site

スマホアプリ解析ツール『Flurry』についてまとめ。iPhone・Android両対応

   

flurry_industry
某社にて働いてた時、『Flurry ってのがあるんだけど調査しといてね。今開発してるスマホアプリに組み込むから〜(意訳)』という感じで仕事を言い渡され、翌週にはプレゼンの形にするという事がありました。プレゼン資料を全て英語で作れとの事だったので、日本語の下書きを書いていたので、それを自分でも解るようにまとめ直しました。

  1. Flurryって何?
  2. 誰が使ってるの?
  3. どんな機能があるの?
  4. どうやって使うの?
  5. 使うとどうなるの?何が良いの?

1.Flurryって何?

flurry_logo
まずはコレを読まないと話が始まらない

「Flurry Analytics」無料で使える!アプリのアクセス解析ツール | スマートフォンアプリ開発会社ディレクターブログ

ふ〜んそうなんだ~と納得した後、そもそもアプリ解析ツールって何だよと思ってサクッと調べると、
Startup Lab さんの説明が一番カンタンで理解できた。
2013年3月現在、公式Twitterと一緒に5ヶ月更新されてないのでそのうち消えちゃうかも。

Startup Lab. • 【Flurry】vs【Kontagent】モバイルアプリ解析の未来

ホントに消えちゃうと悲しいので、要点だけつまみ食い。
概要は

  • 開発者が作ったアプリに Flurry のコードを仕込む
  • ユーザーがアプリ使う
  • アプリの利用時間やどのボタンを使ったか、バグの有無、課金レート等を Flurry が解析
  • 解析したデータはスマホの中に一時保存され、後から Flurry のサーバーに送信
  • そのデータを基に開発者はもっと使いやすいアプリを作れる

というもの。使用料は無料

ウェブサイトのアクセス解析に近いけど、アプリの中に組み込まれる機能なのでネット接続が切れても問題なし。アプリ内でどういう情報を入力したかを調べる訳ではなく(入力欄があった場合、年齢と性別は収集できるけど)、あくまでも調べるのはUX(ユーザー体験)の解析。

Flurry は解析サービスの他に、これで得られたデータを基にした広告ターゲティングサービス(誤解を恐れず言えば、ユーザーが欲しいを推測してジャストミートで表示するサービス)等を提供していて、そっちで6億人超のお客さんがいるので解析サービスの方は無料で使えるとの事。
というかこの広告サービスの利用者増やすために解析サービスを無料でやってるみたい。釣り餌的な。

2.誰が使ってるの?

flurry_index
公式サイトでは9万5千以上の開発者が使っていると言っていて、日本でも有名なトコロだと

  • ワーナー・マイカル
  • スターバックス
  • アングリーバード
  • SEGA
  • Skype
  • グルーポン
  • Hulu
  • Yahoo!(Yahoo!JAPANではない)

が並んでいます。
世の Android のアプリの4つに1つは Flurry が入っているという話も。スゲー。

世界中に Flurry が組み込まれたアプリが存在するため、ニュースサイトの情報源にもなってる様です。
信頼されてるんだな〜

3.どんな機能があるの?

flurry1
さっきの Startup Lab さんの説明 によると、
ファンネル分析 /カスタムセグメンテーション/コンバージョントラッキングなど、どんなユーザーが、どこのシーンまで利用し、購買につながっているかを可視化できるそうな。
ファンネル分析ってなんだろうね。オールレンジなビーム攻撃ができる様になるんですかね。今はちょっとよく判らんのです。
一応ファンネル分析の解説記事は見つけたけど、お腹が減って理解力が出ない(執筆時は12:45)

無料のモバイルアプリアクセス分析サービスFlurryが大改造でファンネル分析などを導入

しかし世の中には説明上手な方が居らっしゃる。
こちらの記事ではストンと1発で理解出来ました。

ファンネル分析とやらを勉強したよ - ku-sukeのブログ

もうちょい調べるとメニューの日本語訳発見。

Flurry(スマートフォン向けアクセス解析ツール)のメニューを調べてみたログマニアックス | ログマニアックス

こちらも5ヶ月前のブログですが、どんな機能があるのか抜粋させてもらうと、

  • UIDでカウントした新規ユーザー数
  • UU数(日/週/月/各期間の平均)
  • セッション数と時間の中央値・平均値
    (基本的にはアプリの起動から終了まで。アプリの仕様に依る)
  • 1ユーザーあたりのセッション数
  • ログイン継続率
  • 利用開始からの継続率
  • アプリのバージョン
  • ユーザーが利用している他のアプリのカテゴリー
  • 推定年齢/推定性別/推定地域/推定言語別のUU
  • 遷移分析(どんな感じで画面が切り替わってるか)
  • ファネル分析
  • イベントログ(画面遷移の頻度とか)
  • デバイス別集計
  • キャリア別集計
  • OSのバージョン集計
  • エラー集計

だいたいこんな感じ。

4.どうやって使うの?

flurry_industry
iPhone アプリに組み込むなら、
1.アプリのプロジェクト開いて、XcodeからSystemConfiguration.frameworkを追加。

2.Flurryでアカウントを作成し、SDKをダウンロード。2013年3月現在はFlurry.hを使うSDK4.1.0が最新版。
(ちょいと調べると2011年の古い情報が多く、SDK3.xの頃はFlurryAnalytics.hというファイル名だったそうな。)

3.SDKの中からFlurryフォルダ内の

  • Flurry.h
  • libFlurry.a

の2つをプロジェクトの中に突っ込む。
また、SDKの中にAPIキーが書いたテキストファイル(ProjectApiKey.txt)があるハズなので確認しておく。

4.AppDelegate.m に

- (BOOL)application:(UIApplication *)application didFinishLaunchingWithOptions:(NSDictionary *)launchOptions
{
   [Flurry startSession:”あなたのプロジェクトのAPIキー”];
   return YES;
}

でOK。超簡単。

なお、公式サイトの説明では

applicationDidFinishLaunching:(UIApplication *)application

メソッドを使っているけど、上に書いたように

application:(UIApplication *)application didFinishLaunchingWithOptions:(NSDictionary *)launchOptions

メソッドの方がいいです。内容的にほぼ同じだし、両方あったときにはこっちが優先されます。

*参考:applicationDidFinishLaunchingでハマる - 安藤ひつじのメモ帳

5.ここまででもある程度は解析できますが、さらに個別のイベント(ボタンをクリックした等)を解析したいなら、その機能を書いた実装ファイル.m に

#import "Flurry.h";
 [FlurrylogEvent:@"解析したいイベントの名前"];

みたいな感じでOK。ちょうかんたん。
年齢と性別については、

[Flurry setAge:(int)];
[FlurrysetGender:@"m"];
[FlurrysetGender:@"f"];

こんな感じで何とかなります。

6.さらに、エラーログを抽出したい場合は、一番最初の AppDelegate.m にて

#import ”Flurry.h”
- (BOOL)application:(UIApplication *)application didFinishLaunchingWithOptions:(NSDictionary *)launchOptions
{
    NSSetUncaughtExceptionHandler(&uncaughtExceptionHandler);
    [Flurry startSession:@"あなたのプロジェクトのAPIキー"];
    return YES;
}

と、さっきの宣言に1行追加した上で

void uncaughtExceptionHandler(NSException *exception)
{
    [FlurrylogError:@”Uncaught”
             message:@”Crash!”
           exception:exception];
}

としておけばOK。XCode上でデバッグしてる時みたいに、不意にアプリが落ちた時のログを拾ってきてくれます。

大まかな使い方は公式サイトのクイックスタートガイドを、細かなメソッドはクラスリファレンスをよく読みませう。
iOS / Android / BlackBerry / Windows の4つが解説されてます。

4.使うとどうなるの?何が良いの?

segment-powerfully
解析ツールを組み込んだアプリをリリースしてユーザーに使ってもらい、あり得ないけど例えば
『中年のオッサン向けに作ったアプリだったんだけど、実際にはJKにめっちゃウケてた』
という解析データが採れた場合、開発者は
『うおおJKにウケてんのかよ!!デザインをゆるふわな感じにしたらもっと人気出るんじゃね!?』
と考え、デザイン変更を検討する事が出来ます。
うまい事いって人気が出れば当然売上が上がり、使う側も作る側も幸せになれるという寸法です。
いやーあり得ないけど。

どんなデータが採れるかはアプリにも依るのでなんとも言い難いけど、アプリを改善するための判断材料になるのは間違いなし。
GoogleAnalyticsでも似たようなことができるらしいけど、そっちは触ったこと無いのでワカリマセン(・_・)
知ってる人によると、Flurryの方がグラフィカルでパッと見でわかりやすいそうですが。
確かにUserPath(ユーザー導線)はわかりやすかったなぁ。

 - 解説記事