FreelyApps

個人によるアプリ開発の日記です。アプリの収入だけで生活できるようになるのが目標です。UnityでAndroid向けのゲームアプリを作成しています。


    アプリ『トランプ・7並べ』を公開しました。
    Android/iOS https://goo.gl/zsFces

    カテゴリ:Unity > Unity Analytics

      このエントリーをはてなブックマークに追加 Clip to Evernote
    Unity5.4以前ではAnalyticsのメソッドには以下の
    public static AnalyticsResult CustomEvent(string customEventName, IDictionary<string, object> eventData);
    という形式でカスタムイベントが発生したことを伝えていました。
    この形式しかなかったので、カスタムイベントに付随するパラメータがない場合は、eventDataにnullを渡し
    Analytics.CustomEvent("something" , null);
    というようにしていました。
    見た目からしてもnullを置くのは変な感じですが、これでうまくいっていたのです。 

    Unity5.4.0f3にしたところ、パラメータなしのカスタムイベントでエラーが発生しました。(NullReferenceExceptionが発生するので、とても危険です。Unityはこのエラーが発生しても落ちないのですが、ふつうは落ちます。なぜか処理が一部飛ばされて動き続けるようです。)
    ce_nre


    5.4では、Analyticsクラスに以下の2つのカスタムイベント用のメソッドが追加されています。
    public static AnalyticsResult CustomEvent(string customEventName); 
    public static AnalyticsResult CustomEvent(string customEventName, Vector3 position); 
    パラメータなしのカスタムイベントは上の引数が1つだけのものを呼び出すとエラーがなくなりました。おそらくこの対応で問題ないと思います。
    下の位置を渡すものはヒートマップに使うと思われます。 

      このエントリーをはてなブックマークに追加 Clip to Evernote
    Unity Analyticsのカスタムイベントにはパラメータをつけることができます。Custom Eventについてでも書きましたが、Analytics.CustomEventの第2引数にパラメータをIDictionary<string,object>として渡します。パラメータの名前と値をセットにした配列を渡すだけなので、使い方を覚えれば簡単です。

    こんな感じに使います。実際のアプリで使っているコードを撮ったので、VariableManagerだのrefResultDataだのがありますが、気にしないで良いです。名前と値がセットになって並んでいるということが重要です。
    ts-old-analytics

    このカスタムイベントの情報を集めると、管理サイトでは以下のようにパラメータの一覧が見れます。上の2つはデフォルトで存在するもので、timeから下がスクリプトで書いたパラメータになります。(大文字小文字の区別はなくなるので、アンダーバーを使って名前を見やすくするのがコツらしいです。)
    ts-params

    levelパラメータは数字を区別したいため、文字列化(数字が頭につくと数字と解釈されているらしい。)して送っています。ゲームの難易度ごとでユーザーがどれくらい遊んでいるかを知ることができます。
    ts-level

    resultパラメータはユーザーの勝敗です。どれくらい勝ったり負けたりしているかわかれば、強すぎたり弱すぎたりするのを改善できます。
    ts-result

    これらの情報は非常に有用なのですが、実は失敗したことがあります。
    ある難易度を選んだユーザーの結果がどうなったのかということを知ることができないのです。Level1を遊んだ人がどれくらい勝ったのか負けたのかはわかりません。

    あるカスタムイベントに付属するパラメータのそれぞれは独立して記録されているため、組み合わせた分析ができないのです。上で言うと、levelがいくつでresultが何々のユーザーのグラフを表示することができないです。(いずれできて欲しいところです。)

    現状ではいくつかのパラメータを組み合わせた分析は以下のようにstringに情報を含めることになるでしょう。組み合わせにより、stringの種類が莫大になりやすいのでそこに注意する必要があります。
    ts-new-analytics

    Summaryという新しい項目に難易度とレベルと結果をすべて含めました。難易度の数、レベルの数、結果の種類の掛け合わせ分でも100いかない位だったので、とりあえずこのようにしました。Summaryという新しいパラメータ名にしたのは、過去のデータと区別するためです。

      このエントリーをはてなブックマークに追加 Clip to Evernote
    正確なことはわかりませんが、おそらくは4月中旬くらいにUnityAnalyticsの管理サイトが更新されました。(UNITEの後で変わったのではないかと思います。UNITEで新機能など発表→いろいろ更新という流れ。)

    EVENT MANAGERという項目が以前と大分変わりました。それ以外は見た目が少し変わっていますが、機能的には大きくは変わってないと思います。以前の記事のスクリーンショットを見たら、EVENT WATCHERというものだったようです。名前も変わっているようです。

    EVENT MANAGERはこんな感じです。
     analytics-em-ts

    カスタムイベントのポイントの上限が1000から5000へと増えました。多くなったことでよりたくさんのカスタムイベントを作っても記録されるようになり、色々解析できるようになります。普通に使う分では1000でも多いので、増やす必要があるのかと思います。
    しかし、今後ヒートマップという新機能が作られるのでそのためなのかもしれません。これがどれくらいポイントを消費するの不明であり多くのポイントを消費しそうなのです。(位置情報を文字列にして、これをパラメータとして持つカスタムイベントを作れば現時点でもヒートマップに似たようなものを実装できます。位置情報の空間分解能によりますが、1mの立方体で10mの立方体の空間を覆うなら1000個の区別がされます。これだとポイントの消費が大きすぎて実用的ではないです。)

    カスタムイベントの消費ポイントが以前と異なるようです。
    以前は0か1個のパラメータを持つ場合の消費ポイントは1でした。今回からはカスタムイベント1つにつきまず1消費します。そしてパラメータごとに1ずつ消費ポイントが増えていくようです。文字列の場合は送る取りうる値の数だけポイントを消費することは以前と変わらないようです。
    消費するポイントは、カスタムイベントの分1と取りうる値の数分(数値のみパラメータの個数分)です。

    analytics-em-ts-custom
    EVENT MANAGERではカスタムイベントごとにどのようにポイントを消費しているか見れます。これで簡単に内訳が分かるようになりました。(やったね!超便利。) 
    またカスタムイベントの有効、無効が選択できるようになります。新しい実行ファイルでは使わなくなったカスタムイベントがある場合などはDisabledにするとよいでしょう。無効化してあるとポイントの消費が0になりますが、データの参照などそのカスタムイベントはアナリティクスでは全く使えなくなります。
    Disabledにしても後でEnabledにして復活することはできます。無効にしていた間のデータは存在しませんが、Enabledにしたときから集計が行われます。

     

      このエントリーをはてなブックマークに追加 Clip to Evernote
    Unity Analyticsの管理サイトでDATA EXPLORERを選ぶと、カスタムイベントの情報を見ることができます。

    下の図は、ナポレオンを1ゲームするときに呼び出しているカスタムイベントのグラフです。個のイベントを呼んだユーザー数の変化が表されています。(本来は左端にユーザー数が表示されますが、ここでは消してあります。)
    tn-analytics-1page

    これだけだとアプリを起動した人数とほぼ一致するはずです。なぜなら、このアプリを起動して遊ばずに抜けることはほぼないと思われるためです。DAUと比較してどれくらいの人が何もせずにアプリを落とすのかを知りたいときには役立つと思います。

    カスタムイベントが呼ばれた回数を知りたいことがあります。ユーザーごとではなく、各々のユーザーが呼び出したカスタムイベントの総量です。
    これの見方についての説明は載っていないのですが、おそらく以下で説明する方法で見れると思います。(正しいやり方かの保証はないのでご注意ください。)

    Add Custom Eventで見たいイベントを追加するなりして、特定のカスタムイベントを選んだら、対象となるユーザーを選び、View Parametersボタンを押します。
    そうすると2枚目のページにいけます。このページはあるカスタムイベントの詳細を見れる画面です。ここでパラメータの指定をunity.nameにします。どうもこれはカスタムイベント名を表しているようです。countというのは数字型のパラメータを指定したときの呼び出し回数です。つまりこれが発生回数になります。
    (本来は左端に回数が表示されますが、ここでは消してあります。)
    tn-analytics-2page

    何回か検証したところカスタムイベントの発生回数と一致したので、この方法で発生回数を調べられます。
     

      このエントリーをはてなブックマークに追加 Clip to Evernote
    結構前の話ですが、5.2以降でも通じる話なので書いておこうと思います。

    Unity5.1においてUnity AnalyticsがUnity内部に組み込まれました。これによりアセットストアからSDKを落としてきて組み込むといった手間はなくなり、使いやすくなりました。Project IDというものをWebサイトから取得し、PlayerSettingsで設定するという方法でUnity Analyticsが有効になったと思います。(この記事を見ると、現在は5.1のProject IDはあまり推奨されていないみたいです。またしても5.1ではSDK方式でも対応できるようになっています。)

    Unity5.2以降もUnity AnalyticsがUnity内部に組み込まれているため、SDKは不要です。サービスウィンドウができたため、ここでUnity Analyticsの有効にすることができます。サービスウィンドウに色々なサービスがまとめられたため、やり方が変わったのが5.2です。つまり、使い方が変わっただけで5.1から進歩していません。(内部的には変わっているかもしれませんが……)

    サービスウィンドウを開くと下のようになっています。Unityアカウントにログインしないと何もできないということです。
    sw-start

    ログインすると、新しくProject IDを作るか既にあるIDをリンクするかを選ぶことができます。既にProject IDがあるというのは、古いバージョンのUnityでAnalyticsを使っていたとか、管理サイト上でProject IDを取得したということが考えられます。そのような場合はそのIDを設定すれば良いです。
    sw-start-after-login
     
    Project IDも新しく作る場合(新しいプロジェクトならそのはず)はUnityアカウントの所属する組織を選びます。Select organizationにリストが出るので、適当なものを選びます。そうするとCreateボタンが押せるようになるので押してください。
     
    新しくProject IDが生成され、ウィンドウにProduct Nameが表示されるようになりました。Analytics以外のサービスも設定できますが、今回はAnalyticsのボタンを押して有効にします。
    sw-projectid-created
     
    後は画面に沿ってEnable Analyticsボタンを押すか右上の有効・無効切り替えのトグルを押します。有効化するときに年齢制限の確認が聞かれます。(これはアメリカの法律でCOPPAというものに対応するためのものです。13歳未満の子供の個人情報を収集する際に制限があります。13歳未満対象かどうかをUnityが知るためアプリごととに設定することを求められているのでしょう。)詳細についてはここを見ると良いです。

    以上で設定は終了です。サービスウィンドウ上でもAnalyticsがONになっていることを確認できます。
    この設定が終わったら一度はEditor上で起動しておいてください。これによりPCから管理サイトにAnalyticsの情報を送ります。管理サイト上にValidateチェック用のページがあるので、それを見るとすぐに正しく接続できたかがわかるようになっています。ここらへんは以前と同じです。
    カスタムイベントの集積には最長6時間程度かかるそうなので、6時間待ってからチェックすれば良いです。


    最後に注意点を書いておきます。かなり重要なので、覚えておくとたぶん役に立つでしょう。

    Analytics.CustomEventメソッドはUnity Analyticsが有効にされていないと、「The name `Analytics' does not exist in the current context」というエラーが発生します。
    カスタムイベントのメソッドがエラーを起こすため、自分でカスタムイベントをラップして呼び出しておくのがお勧めです。

    Unityを閉じると、サービスウィンドウで設定したはずのProject IDのリンクが解除されています。内部的にはProjectSettings.assetにProject IDが保存されているためリンクされていますが、ウィンドウ上では新たにはじめる状態が表示されていてIDがなくなってしまったのかと勘違いします。
    ここでCreateしてしまうと新たにIDが増えていくので、「I already have a Unity Project ID」 を選んでリンクするのが通常の使い方だと思います。設定を変えなければ開くことはないかもしれませんが、これは結構驚く挙動です。

      このエントリーをはてなブックマークに追加 Clip to Evernote
    Unity Analyticsのカスタムイベントを呼び出すときにはイベント名だけでなく追加の情報を送ることができます。

    public static Analytics.AnalyticsResult CustomEvent(string customEventName, IDictionary<string,object> eventData); 

    というメソッドを使ってカスタムイベントを送信するのですが、 第2引数のeventDataにパラメータの名前と値をセットにした配列を渡すことでカスタムイベントに追加の情報がつけられます。
    つけた情報を見るにはウェブ上の管理ページのDATA EXPLORERで見ることができます。このあたりは以前の記事にも書いたのでご参照ください。 

    eventDataの個々のパラメータ名は日本語で書かない方が良さそうです。わかりやすさのため日本語で設定していたのですが、文字化けしてすべて?で表示されていました。
    aunk

    アルファベットで書いたところは正しく表示されていたので、ASCIIコードの文字だけに対応しているのだろうと思います。日本語のパラメータ名は全部こんな感じでわからなくなっていました。

    Unity Analyticsのメソッドの全てが対応しているかまでは調べていませんが、カスタムイベント名などでも日本語を使わない方が良さそうです。

      このエントリーをはてなブックマークに追加 Clip to Evernote
    以前の記事ではUnity Analyticsの導入までを行いました。今回はCustom Event(カスタムイベント)について説明します。

    Custom Eventとは統計を取りたいイベントを開発者が自由に決められるものです。例えばゲーム内の特定のUIを押したとかゲームをクリアしたといったところにCustom Eventを入れることでユーザーの行動を追跡できます。もちろん個別のユーザーの状況を調べることは不可能ですが、多くのユーザーの平均的な行動を推測することができます。
    Analytics.CustomEventを使ってカスタムイベントを設定できます。今のところ英語のサイトのリファレンスにしか載っていないようです。
    第1引数にはカスタムイベントの名前を指定します。管理サイト上で表示されるのでわかりやすい名前をつけた方が後で困らなくて良いでしょう。 「unity.」で始まらないようにだけ気をつけてください。
    第2引数はオプションです。指定した名前のイベントについての補足情報をキーと値のペアで自由に与えることができます。 これのキーも 「unity.」で始まらないようにだけ気をつけてください。

    string key = "number";
    int value = 0;
    Analytics.CustomEvent("test",
    new Dictionary<string, object> { { key, value } }); 
    このように書くと、 testという名前のイベントにnumberというパラメータがありその値が0として記録されます。

    カスタムイベントは1000ポイント(Analysis Pointsと呼ばれています)まで登録できるという制限があります。ひとつのカスタムイベントを作ると最低1ポイント消費します。最大でカスタムイベントは1000個まで作れるということになります。このAnalysis Pointsはプロジェクトごとに1000ポイントになります。
    このポイントの計算の詳細はここに載っています。 今のところフォーラムにしかないですが、将来的にはマニュアルの方にも載ると思います。結構わかりづらい方式だと思うので説明します。パラメータの値についてはint、bool、stringの3種しか試したことがないのでそれ以外のことについてはどうなるかは知りません。int、bool、stringで十分だと思いますけど……

    【Example 1: Custom Events with No Parameters】
    パラメータなしのカスタムイベントの場合

    これはイベントひとつごとに1ポイントです。

    【Example 2: Custom Events with Numeric Parameters Only】
    数値パラメータのみ持つカスタムイベントの場合

    イベントに含まれるパラメータの数が消費するポイントに等しくなります。1つの数値パラメータを持つカスタムイベントの場合は1ポイントです。3つの数値パラメータを持つカスタムイベントの場合は3ポイントとなります。
    1つの数値パラメータを持つカスタムイベントの場合は、パラメータなしのカスタムイベントの消費ポイントと同じです。パラメータがあるからといってポイントが増えるわけではないことに注意してください。

     【Example 3: Custom Events with Numeric and Non-Numeric Parameters】
    数値と非数値パラメータを持つカスタムイベントの場合

    含まれる数値的パラメータの数 + 非数値的パラメータ(boolとstring)それぞれの取りうる値の個数の合計が消費ポイントになります。数値的なパラメータの消費ポイントはExample2と同様です。個数の分だけ消費します。
    非数値的パラメータは取りうる値の数だけポイントを消費します。

    boolのパラメータがひとつあったとします。取りうる値はtrueとfalseの2種類が限度です。よって、ふつうは2ポイント消費します。わかりづらいことにboolがあったら2ポイント消費ではないのです。
    boolのパラメータを持つカスタムイベントがあり、trueもしくはfalseのどちらかの値が設定された状態でAnalytics.CustomEventが呼ばれます。その情報がサーバーで処理されるわけですが、そのときにtrueの情報しか来ていないならそのカスタムイベントの消費ポイントは1です。いずれfalseが設定された状態でAnalytics.CustomEventが呼ばれるでしょうから、そのときには消費ポイントが2になります。boolをパラメータにした場合ふつうはtrue/falseのどちらの値も取るでしょう。(そうでなければ統計を取る必要がありませんし)何らかのバグで片方の値しか取らないようになると、いつまでも消費ポイントが1になったりします。

    stringのパラメータは無限にポイントを消費する可能性があります。string型のパラメータを使う場合は渡すデータの取りうる値がどのようなものになるかを見積もることが重要です。
    例えばプレイヤー名をパラメータにして統計を取ろうとするのは使い方として間違っています。プレイヤー名が任意ではなくいくつかのうちから選ぶ方式なら統計を取っても数が決まっているので問題ないですが、自由に決められる名前だった場合はプレイヤー名はどのような値もありえます。したがって新しいプレイヤー名が設定されるたびにポイントを消費していくことになるでしょう。

    このように取りうる値の数だけポイントを消費する仕組みは非数値のパラメータの特徴です。取りうる値が増えていくとそれを検知するたびにポイントを消費していくのです。非数値のパラメータは数値パラメータと違い追跡できる情報量が多いため、消費するポイントが多いのだと思われます。この後で管理サイトのスクリーンショットの解説もするのでそれを見ると納得できると思います。

    ポイントをどれくらい消費しているのかを見るページがあります。管理サイトのEVENT WATCHERに今、何ポイント使っているかが表示されます。内訳は出ないので少し不便ですが、目安として使うには役に立つと思います。以下のような見た目です。

    ewatcher



    dexparam

    管理サイトのDATA EXPLORERに行き、Add Custom Eventを押します。Analytics.CustomEventで指定した名前が一覧になっているので見たいイベントを選びます。Segmentはどのようなユーザーを対象とするかを指定するものです。この2つを設定したら、View Parametersからパラメータの統計を見ることができます。
    カスタムイベントのパラメータの種類による見え方の違いを載せておきます。


    int型の場合(数値)
    数値パラメータではsum、count、averageを指定することができます。これにより表示される情報が切り替わります。それぞれ合計、回数、平均を表しています。数値パラメータの特徴は個々の値を参照することができないということです。
    int




    bool型の場合(非数値)
    trueとfalseのそれぞれの統計が集計されています。数値とは違い個々の統計がわかります。個別に集計しているためにポイントを多く消費してしまうのでしょう。細かく分析できるメリットの方がポイントの消費するデメリットより大きいと思います。
    bool



    string型の場合(非数値)
    渡される文字列ごとの統計が集計されています。個別の統計がわかります。stringの場合は際限なく指定できてしまうのが便利でもあり、ポイントを消費しすぎる危険でもあります。
    以下の例はロードしたシーンの名前が何かを表しているのだと思います。
    string



    1000ポイントは使い切ろうと思ってもすぐにはなくなりません。ポイントがどれくらい使われているか把握しておくことは重要ですが、はじめからポイントが足らなくなるかもしれないという不安を持たなくても大丈夫です。足りなくなってから考えても遅くはありません。
    リリースしてしまったアプリの場合でもアップデートのタイミングでUnity Analyticsを新しいプロジェクトに切り替えるといったこともできます。それを利用すれば統計が一新されるので、どのような状況でも対応できるでしょう。



    調べていないけれど気になることもあります。実用上はどうでもいいことなのですが、同じイベント名で違うパラメータを指定したりしなかったりしたらどうなるのだろうということです。
    つまり、
    Analytics.CustomEvent("paramTest" , null);//パラメータなし.
    Analytics.CustomEvent("paramTest",
    new Dictionary<string, object> { { "param1", 0} });//パラメータあり.
    のようにparamTestイベントはどのように記録されるのかといったことです。 
    こんな風に同じイベントを別のパラメータで書こうとすること自体があり得ないので、問題にはなりません。単なる興味本位なスクリプトです。

      このエントリーをはてなブックマークに追加 Clip to Evernote
    Unity AnalyticsをUnityのバージョン4.x/5.0で入れた場合、5.1にアップデートするときに対応が必要です。公式ではフォーラムにやり方が書いてあります。ここでの説明もこれに則ったものです。英語が読める人は公式ページを見てやっていけば良いと思います。

    手順は以下の通りです。
    1. Unity AnalyticsのSDKを消す
    2. 管理サイトの設定を行う
    3. PlayerSettingsにIDを設定する
    4. スクリプトの修正
    Unityを5.1にした時点でUnityを起動すると、Unity Analyticsに関する警告ダイアログが出ると思います。 Unity AnalyticsのSDKが入っているために出る警告です。これを消すことが最初に行うことです。
    Unity AnalyticsのSDKを全て消します。消すものがどれかは次の全てです。Assets/Pluginsの中にあるはずです。
    • Android/unityengine-cloud-1.0.0.jar
    • iOS/UnityEngineCloudiOS.mm
    • Metro/UnityEngine.Cloud.Analytics.dll
    • Metro/UnityEngine.Cloud.Analytics.Util.dll
    • UnityAnalyticsフォルダ全て
    • UnityEngine.Cloud.Analytics.dll
    • UnityEngine.Cloud.Analytics.Util.dll
    • WP8/UnityEngine.Cloud.Analytics.dll
    これらを消して、Unityを再起動したときに警告ダイアログが出なければSDKの消去は完了です。

    管理サイト上でUnity5.1への対応を行います。既に使っているプロジェクトをそのまま使う場合はプロジェクトの設定ページに行き、対象とするUnityのバージョンを5.1に設定してSaveします。

    管理サイトに載っているProject IDをPlayerSettingに追加されたCloud Project Idというところに入力してください。これを設定することでUnityが自動でAnalyticsを実行します。
    cpid

    スクリプトの対応をしないとおそらくエラーが出ていると思います。
    初期化のために今までUnityAnalytics.StartSDKを呼んでいたと思います。これは必要ないので消してください。

    カスタムイベントやユーザー情報の設定などを行っていた場合は、初期化以外にもエラーが出ているはずです。
    using UnityEngine.Cloud.Analytics;はSDKを消したのでエラーになります。これは全て消してください。代わりにusing UnityEngine.Analytics;が5.1で新しく追加されているので、これを使います。Analyticsクラスの静的メソッドとして今までの処理が実装されるようになりました。
    UnityAnalytics.CustomEventというように書いていたところをAnalytics.CustomEventとすれば正しく動くようになります。

      このエントリーをはてなブックマークに追加 Clip to Evernote
    Unity Analytics の使い方を説明します。実装についてはUnity 5.1以前のものになります。

    Unity Analytics というサービスがあります。これはUnity で作ったゲームに組み込むもので、ユーザーの情報を取得できるようにするものです。ユーザーの情報といっても個人情報というものではありません。
    ゲーム内の特定の処理を通ったところで通信し、 サーバーにその情報を記録するというものです。ゲームの開発者が任意のタイミングで通信を発生させられるので、どういった使い方をするかによって得られる情報は異なります。
    ごく一般的にはある重要なボタン(ゲーム開始とかツイートするとか)を押したときを記録するといった使い方やゲームのステージクリアごとに記録するということが考えられます。ゲームごとに異なるこのようなイベントをUnity Analytics ではCustom Event というものを使って記録することができます。一人の情報だけではあまり意味がなく大勢のデータを集めて、統計的な情報を得るというのがUnity Analytics の目的になります。

    統計を取ることによってどのような利点があるのかということが知りたくなるでしょう。
    例えば面をクリアして次の面を解放して進行していくゲームの場合、どこまでユーザーは遊んでいるのだろうかということが知りたくなります。あるところで大量のユーザーが遊ぶのをやめている場合、そこは難しすぎたりバグがあったりするのかもしれません。
    純粋にどれくらい遊ばれているのか知る以外にもゲームの改善にも使えます。分析することで発見や予想の裏付けを行うことができることがあります。
     


    Unity Analytics はこのページにリンクがあります。Unity アカウントが必要です。
    管理ページに入ったら、PROJECTSというページの右上にあるAdd Project を押します。
    ua-addp
     
    下のような画面になるので必要な情報を入力します。
    Nameは必須なので、とりあえずここをわかりやすい名前(アプリの名前など)にします。Google API Key は課金の情報をUnity Analytics で取得する場合に使います。私は使いませんので、使用する方はこちらの説明を参照してください。Organization は入力しなくてもUnity アカウントに登録してある情報が自動で入力されると思います。
    Unity Engine Version は4.x / 5.0 を選んでください。(いずれUnity をアップデートしたらそのときにまたそのバージョンでの解説を書こうと思います。今回はUnity 5.0.2 を使っているので、Unity 5.1 以降とは違います。)
     ua-np
    最後に一番下の質問に答えます。Unity Ads でも似たような質問がありました。子供向けに作ったゲーム以外であれば下の方を選ぶことになると思います。Unity Ads の場合と異なり、後で変更できるので間違ってもすぐに直せます。
    登録する情報を書き終えたら、SAVE を押して完了です。



    登録したプロジェクトを選んで、Dashboad の中のINTEGRATION を選ぶと実装についての説明が載っています。これに沿って行けば良いだけですが、英語で書いてあるので一応説明しておきます。
    ua-inte

    まず実装についてはSDK が必要です。(Unity 5.1 以降では必要なくなります。)
    INTEGRATION の初めのページにボタンがあるので、そこからダウンロードしてください。パッケージのインポートが終わったら、
    というコードをゲームオブジェクトにアタッチすれば、Unity Analytics の初期化ができます。
    "Project IDが入ります"と書いてある所には登録したプロジェクトごとに固有のIDを入れます。

    スクリプトをアタッチしたら、Unity Editor 上でゲームを開始してください。BASIC INTEGRATION の5ページ目でUnity Analytics が正しく動いているか確認できます。
    とりあえずここまでがUnity Analytics を使うのに必須です。この状態だとユーザーがゲームをしているかくらいの情報しかとれません。
    この後、行うのがCustom Event(カスタムイベント)というもので開発者が取得したいデータを実装できるものです。

    今回は長くなってしまったので、Custom Event については今度説明することにします。Custom Eventの記事はこちらになります。 

    このページのトップヘ