Google Universal Analytics – デスクトップ アプリケーションに関する完全な洞察
アナリティクスとは何ですか?
アナリティクスという名前が示すように、それはデータ管理と分析に関する分野です。過去の歴史的データを研究し、特定の決定やイベントの影響を分析し、使用中のツールのパフォーマンスを評価することを含みます。アナリティクスはビジネスにとって非常に重要であり、製品の改善や変更に活用できる知識を提供します。
そもそもなぜアナリティクスを使用するのでしょうか?
あらゆる成功したビジネスにとって、リソースと時間の最適な利用は不可欠です。そして、現代において、データ以上に貴重なものはありません。このデータを適切に読み取らないと、多くのビジネスがユーザーコミュニティで最も人気のない機能を向上させるのに時間を費やす可能性があります。つまり、貴重なリソースと時間の浪費になります。したがって、アナリティクスを実装して顧客の活動を追跡することで、アプリケーションの最も人気のある機能を特定するためのエッジと情報を得ることができます。ユーザーの活動だけでなく、アナリティクスはユーザーに関連するさまざまな情報も提供できます。
- インストール数
- ユーザーが使用するデバイスやネットワーク
- 地理的な位置
- ユーザーのワークフロー
- ユーザーの変換率
- ユーザーが費やす時間
ユーザーベースからこのデータを得ると、消費者がアプリをどのように使用しているか、アプリを使用する間の彼らの行動、および彼らがアプリを終了/アンインストールする場合の状況を理解するのに役立ちます。アプリのクラッシュや不具合も効果的に追跡できます。アナリティクスはまた、どの機能が最も使用されているか、なぜ使用されているかを理解するのに役立ちます。
この情報は、まさに宝の山であり、より効果的なビジネス上の意思決定を行うのに役立ちます。それはコストと労働力の効率性の両方においてより効果的です。
どのような種類のアプリケーションが Analytics を統合できますか?
すべてのアプリケーションは、可能な限りアナリティクスを統合すべきです。ウェブ、モバイル、またはデスクトップのいずれであってもです。アプリケーションにアナリティクスを追加する場合、これがユーザーのプライバシーをある程度侵害する可能性があるため、エンドユーザーの契約条件を更新する必要があるかもしれません。アナリティクスの法的側面については、この記事の範囲を超えています。契約条件を更新するために法的顧問に連絡してください。
市場にはどのような選択肢がすでに存在していますか?
市場には多くのアナリティクスツールがありますが、個人的な経験からすると、Mixpanel、Deskmetrics、およびGoogle Analyticsがデスクトップアプリケーションにとって最も効率的です。それぞれに利点と欠点があります。以下に、それらの3つのツールの簡単な比較を示します:

読者が自分のアプリケーションに最も適したアナリティクスを選択するかどうかは、読者自身の判断に委ねられます。この記事では、Googleのユニバーサルアナリティクスを中心に、イベントを追跡する方法に焦点を当てます。
ユニバーサル アナリティクスについて
ユニバーサルアナリティクスは、昨年発売されたGoogle Analyticsの新バージョンです。あらゆる種類のイベントトラッキング機能を備えています。異なるデバイス間でユーザーの行動を追跡する機能も持っています。Googleがこのアナリティクスに追加した重要な新機能の1つは、計測プロトコルです。これにより、オンラインおよびオフラインのデバイスからデータをインポートすることができます。ユニバーサルアナリティクスは、データを直接Googleサーバーに送信できるため、Google Analyticsよりも優れています。
ユニバーサル アナリティクスの入門
まず始めに、Googleアナリティクスアカウントでプロパティ(アプリケーション設定)をセットアップする必要があります。プロパティはデータを送信し、レポート表示を設定する場所です。Googleアナリティクスを初めて使用する場合、サインアップすると、アカウント作成ページに移動します(これはGoogleアカウントとは異なります)。Googleアナリティクス内では、選択したすべてのものが別々のアカウントで追跡されます。アカウント作成ページでは、プロパティ設定を行うことができます。新しいアカウント作成ページに移動できない場合は、Googleアナリティクスダッシュボードに移動し、管理をクリックして、アカウントのドロップダウンボックスから新しいアカウントを作成します。
プロパティを設定する際には、「モバイルアプリ」のオプションを選択してください。設定が完了すると、アプリの名前とトラッキングID(UA-xxxx-x)が表示されますので、それをメモしておいてください。
このトラッキングIDを使用して、アプリケーションに関連するトラッキング情報をGoogle Analyticsサーバーに送信します。このトラッキング情報を送信するために、計測プロトコルを使用します。
測定プロトコルについて:
Google Analyticsの計測プロトコルを使用すると、開発者はHTTPリクエストを行って、ユーザーの操作データを直接Google Analyticsサーバーに送信できます。これにより、開発者はほとんどすべての環境からビジネスとのユーザーの相互作用を測定できます。開発者は次に、計測プロトコルを使用して以下のことができます:
-新しい環境でのユーザーのアクティビティを測定します。
-オンラインとオフラインの動作をリンクします。
-ウェブとサーバーからデータを送信します。
アプリケーションに測定プロトコルを実装するにはどうすればよいですか?
- データを Google Analytics サーバーに送信するには、 www.google-analytics.com/collect に対して http post リクエストを行う必要があります。
- アプリケーションを追跡するには、リクエストに特定のパラメーターを追加する必要があります。(例: アプリケーション名、トラッキング ID、クライアント ID、アプリケーションのバージョン)
- 分析サーバーはこの情報を使用して、どのプロファイルでイベントを更新する必要があるかを認識します。
- イベント追跡の目的では、イベント カテゴリ、イベント アクション、イベント ラベル、イベント値などのパラメーターを追加する必要があります。詳細については、こちらをご覧ください。
デスクトップ アプリケーションへの分析の統合を容易にするために、C++ ライブラリを作成しました。
図書館の詳細は以下の通りです。
このライブラリは、イベントデータをUniversal Analyticsサーバーに送信するために主に計測プロトコル(V1.0)を使用しています。ライブラリ内では、適切なHTTP POSTリクエストを作成し、WinHttpClientを使用してアナリティクスサーバーにデータを送信しています。
このライブラリには主に2つの関数が含まれています:
1)SetApplicationSetting() : 主に次の 4 つのパラメータを取ります。
アプリケーション名:
アプリケーションを追跡するために、プロパティの設定中に選択したアプリケーション名と同じである必要があります。
トラッキングID:
その値は、ユニバーサル アナリティクスでプロパティを設定した後に取得するアプリ ID と同じである必要があります。
クライアントID(CID):
アプリ用のUUIDは、各特定のアプリケーションインストールのインスタンスごとにランダムに生成されます。このフィールドの値は、http://www.ietf.org/rfc/rfc4122.txt で説明されているように、ランダムなUUID(バージョン4)である必要があります。訪問者が特定のウェブサイトを訪れるために異なるブラウザやデバイスを使用している場合、それは複数の一意のユーザとして追跡されます。このCIDのおかげで、Universal Analyticsは複数のデバイスやブラウザ間で同じユーザのトラッキングを可能にします。
2)SendEventToGoogleAnalytics():次の 5 つのパラメータを取ります。
イベントカテゴリー:
このパラメータはイベントのカテゴリを指定します。空であってはなりません。 (たとえば、Web ページにビデオセクションがある場合、そのパラメータは「ビデオ」になります)
イベントアクション:
このパラメータはイベントのアクションを指定します。空であってはなりません。 (たとえば、ユーザーがビデオセクションからビデオを再生する場合、このパラメーターは「再生」になります)
イベントラベル
このパラメータはイベントラベルを指定します。動画のタイトルでもいいです
イベント値:
このパラメータは、イベントに関連付けられている場合はイベント値を指定します。その値は負ではない必要があります。
ハンドルネーム:
このパラメータは、特定のページやタブでのユーザーのアクティビティを追跡するために使用されます。主にページビューのカウントを取得するのに役立ちます。
このライブラリをアプリケーションに統合する際には、イベントトラッキングの開始時に1度だけSetApplicationSetting()関数を呼び出し、その後SendEventToGoogleAnalytics()関数を使用してイベントを追跡します。
将来の記事では、収集したデータを分析する方法について取り上げます。
