Как сделать мобильную аналитику с помощью Jquery mobile - PullRequest
8 голосов
/ 12 августа 2011

Я ищу хорошее решение для мобильной аналитики для Jquery mobile. Я проверил этот вопрос

Flurry Analytics и Google Analytics на мобильной платформе

но это все решения для конкретной платформы / конкретного производителя телефона, но jquery mobile работает на всех платформах независимо от производителя или операционной системы. По сути, я ищу аналитическое решение для веб-приложений.

Дополнительная информация: - Банго кажется дорогим на $ 49 / месяц. Admob не будет работать, так как он нам не нужен для рекламы, а не для размещения рекламы.

Ответы [ 2 ]

2 голосов
/ 24 ноября 2011

Я использую следующее:

<script>
    var _gaq = _gaq || [];
    _gaq.push(['_setAccount', 'UA-xxxxxx-xx']);

    (function() {
      var ga = document.createElement('script'); ga.type = 'text/javascript'; ga.async = true;
      ga.src = ('https:' == document.location.protocol ? 'https://ssl' : 'http://www') + '.google-analytics.com/ga.js';
      var s = document.getElementsByTagName('script')[0]; s.parentNode.insertBefore(ga, s);
    })();

$('[data-role=page]').live('pageshow', function (event, ui) {
    try {

        hash = location.hash;

        if (hash && hash.length > 1) {
            _gaq.push(['_trackPageview', hash.substr(1)]);
        } else {
            _gaq.push(['_trackPageview']);
        }
    } catch(err) {

    }

});
</script>

Событие 'pageshow' запускается даже для первой страницы, поэтому не думайте, что вы хотите включить _trackPageview в настройку GA.Кроме того, location.hash будет возвращать URL с символом «#», поэтому hash.subtr (1) удаляет это, что нормализует посетителей хеш / pushstate.

Обновление 30.11.11: добавлена ​​проверка длины хешанапример, ошибка (от: Пауло Мануэль Сантос).

1 голос
/ 12 августа 2011

Я использую следующие фрагменты кода для Google Analytics, и он хорошо работает:

Ниже приведен пример нормальной настройки Google Analytics:

var _gaq = _gaq || [];
_gaq.push(['_setAccount', '**-*****-**']);

(function() {
    var ga = document.createElement('script'); ga.type = 'text/javascript'; ga.async = true;
    ga.src = ('https:' == document.location.protocol ? 'https://ssl' : 'http://www') + '.google-analytics.com/ga.js';
    var s = document.getElementsByTagName('script')[0]; s.parentNode.insertBefore(ga, s);
})();

Обновление для jQuery Mobile находится здесь, так что каждая псевдостраница регистрируется:

$(document).delegate('[data-role=page]', 'pageshow', function (event, ui) {
    var url = location.href;
    try  {
        if (location.hash) {
            url = location.hash;
        }
        _gaq.push(['_trackPageview', url]);
    } 
    catch(error) {
        // error catch
    }
});
...