Использование числовых пользовательских показателей в Google Analytics на iOS

#ios #swift #google-analytics

#iOS #быстрый #google-аналитика

Вопрос:

Мне нужно установить пользовательскую метрику с помощью простого события Google Analytics.

Я использую следующий метод: чтобы установить событие, затем установите пользовательскую метрику, а затем отправьте все это:

 GAIDictionaryBuilder.createEvent(withCategory: <#T##String!#>, action: <#T##String!#>, label: <#T##String!#>, value: <#T##NSNumber!#>).set(<#T##value: String!##String!#>, forKey: <#T##String!#>).build()
 

Но мне нужно передать INT в параметре значения пользовательской метрики, а не СТРОКУ. Моя пользовательская метрика — это числовое значение.

Я не понимаю, почему я не нахожу ни одной функции «set» с значением INT в значении.

На практике:

 let build = GAIDictionaryBuilder.createEvent(withCategory: "cat", action: "act", label: "lab", value: nil).set("100", forKey: GAIFields.customMetric(for: 1)).build() as [NSObject : AnyObject]
GAI.sharedInstance().defaultTracker.send(build)
 

Результат:

 Saved hit: {
    parameters =     {
        "amp;_crc" = 0;
        "amp;_s" = 0;
        "amp;_u" = ".nteoyAL";
        "amp;_v" = "mi3.1.7";
        "amp;a" = 114102722;
        "amp;aid" = "com.dve.apptest";
        "amp;an" = PrizeeTestGA;
        "amp;av" = "1.0";
        "amp;cid" = "28c24faa-f546-43e6-b596-e5a1c4e61373";
        "amp;cm1" = 100;
        "amp;dm" = "x86_64";
        "amp;ds" = app;
        "amp;ea" = act;
        "amp;ec" = cat;
        "amp;el" = lab;
        "amp;ev" = "<null>";
        "amp;sr" = 750x1334;
        "amp;t" = event;
        "amp;tid" = "UA-108352-26";
        "amp;ul" = "en-us";
        "amp;v" = 1;
        "amp;z" = 17487374570739913012;
        gaiVersion = "3.17";
    };
    timestamp = "2016-10-14 10:02:38  0000";
 

}

где «amp;cm1» = 100 в виде СТРОКИ…

Комментарии:

1. и вы не можете просто отправить cm1 =»100″?

2. но это будет рассматриваться как строковое значение?

3. Нет, сервер будет преобразовывать его, метрики всегда должны быть int. Однако это rest API, который использует строки. Это странно, но попробуйте

Ответ №1:

Действительно, сервер преобразует строку в Int. Очевидно!