1

C# で記述されたデスクトップ アプリケーションがあります。Google アナリティクスでユーザー統計を収集したいと考えています。たとえば、ユーザーが特定のボタンを押したときと、そのボタンを押したときのテキスト コントロールの値を知りたいとします。

ここで説明されているように、イベント データを送信しています。この質問のようにWebClient.UploadValuesWebClient.UploadStringのいずれかを使用してこれを実行しようとしました

新しい Google アナリティクス アカウントを設定しました。何を追跡するか (ウェブサイトまたはモバイル アプリ) を尋ねられたとき、モバイル アプリを選択しました (デスクトップ アプリの選択肢はありませんでした)。

問題は、Google アナリティクス アカウントにデータが表示されないことです。新しいデータが表示されるまでに時間がかかることは承知していますが、3 日間待っています。また、アプリケーションをテストするときにリアルタイム ビューに何も表示されません (また、分析が接続された Web サイトがいくつかあり、それらを参照すると、リアルタイム セクションに新しいページビューが表示されます)。

私は何を間違っていますか?


私が使用するコードは次のとおりです。

    private static string _googleURL = "http://www.google-analytics.com/collect";
    private static string _gaid = "UA-12345678-9";

    public static void TestMethod()
    {
        try
        {
            string data = "";
            data += "v=" + HttpUtility.UrlEncode("1");
            data += "&" + "tid" + "=" + HttpUtility.UrlEncode(_gaid);
            data += "&" + "cid" + "=" + HttpUtility.UrlEncode(Guid.NewGuid().ToString());
            data += "&" + "t" + "=" + HttpUtility.UrlEncode("event");
            data += "&" + "ec" + "=" + HttpUtility.UrlEncode("testevent");
            data += "&" + "ea" + "=" + HttpUtility.UrlEncode("testaction");
            data += "&" + "el" + "=" + HttpUtility.UrlEncode("testlabel");

            using (var client = new WebClient())
            {
                client.UploadString(_googleURL, "POST", data);
            }
        }
        catch (Exception ex)
        {
            Trace.WriteLine(ex);
        }
    }
4

0 に答える 0