こんにちは、最近モバイルAppのアナリティクスに傾倒している清水です。 今回は、iOSアプリにAdobe Analytics(Adobe Mobile Service)のSDK 4.xを組み込み、行動データを計測する方法について具体的に紹介します。最低限のライフサイクル系指標を取得する方法までです。 1. SDKをダウンロードするMobileアプリ管理画面の下部に表示されるリンクからSDKをダウンロードすれば、ZIPファイルに含まれるconfigファイルに設定が反映された状態になるので便利です。バージョンアップでconfigファイルのフォーマットが変わることが多いので、手で編集することはなるべく避けましょう。 2. ファイルをXcodeのプロジェクトに追加するZIPを解凍して生成されるファイルのうち、必要なのは以下の3つ+αです。 ![]() 「AdobeMobileLibrary」というフォルダごと、Xcodeのプロジェクトにドラッグ&ドロップして追加(コピー)します。 場所はプロジェクトの管理方針次第で。以下の例では「Supporting Files」フォルダに入れています。 3. 必要ライブラリを追加プロジェクトのGeneralタブに移動し、ライブラリを3つ追加します。 iOSアプリの場合、必要なのは以下の3つです。
ここで一度アプリを実行し、エラーが発生しないことを確かめておきましょう。 4. 計測用のコードを追加起動時に一度、起動関連のデータ(Lifecycleデータ)を送信するために、以下のコードをAppDelegateのdidFinishLaunchingWithOptionsに追加します。 冒頭にimport文を追加
デフォルトで存在する didFinishLaunchingWithOptions の中に一行追加
たとえば以下のようになります。 ![]() 5. データ送信を確認これだけで最低限の計測はできます。データが実際に送信されるか、テストしてみましょう。 Mac OSXから送信されるHTTPリクエストを確認できるCharles Web Debugging Proxyをインストールして起動し、Proxyメニューの「Mac OS X Proxy」をONにしてからiOS Simulatorでアプリを起動させ、以下のようにリクエストを確認できればokです。 送信されたデータを項目ごとに確認できます。 「internalaction=Lifecycle」を含むのが、上記で実装したLifecycle系のデータですね。このように起動時に一度データを送信するだけで、起動回数や起動頻度、OSバージョン、アプリバージョンなどがレポート画面に反映されるようになります。 アプリを前回に正常終了させなかった場合(アプリを起動させたままiOS Simulatorを終了させるなど)はクラッシュ扱いになるので、「前回はクラッシュだった」というリクエストが先に送信される点にご注意。 なお、Charlesは有料ソフトなので(未登録の場合は時間が経つと終了してしまう)、Adobeが提供するBloodhoudというテストツールを使うという方法もあります。SDKのテストに特化しているので、慣れるとこちらの方が便利かも。 6. Next Step表示画面(Webでの「ページ」に相当)毎の計測や、重要アクション(ゲームクリア、チュートリアル終了、商品閲覧など)のコンバージョン計測をすると、分析の幅が広がります。さらに、アクション間の計測時間、スコアリングによるライフタイムバリュー値の記録、A/Bテスト、iBeacon検知、オプトアウト対応なども可能です。 元情報:英語の公式ヘルプ |
Adobe Analytics > Adobe Analytics実践メモ >