Как вы используете Google Analytics / _trackEvent в Mobile Safari (iPad)? - PullRequest
2 голосов
/ 21 июля 2011

Я искал функцию Google Analytics _gaq.push() в одностраничном приложении JavaScript, которое в первую очередь предназначено для iPad (в частности, для Mobile Safari).

Моя страница загружается только один раз и продолжаетсязагружать данные асинхронно, так как пользователь использует приложение.Я хочу отслеживать взаимодействия по мере того, как пользователь перемещается по приложению, поэтому я выбрал асинхронный API (_gaq.push()).

Я слышал, что с помощью этого метода данные GA выталкиваются при выгрузке документа.Если это правда, у меня есть сомнения, будет ли это хорошо работать на мобильном Safari, где пользователь может не выгружать документ в течение длительного времени.

Это лучший способ сделать то, что я хочу, и если нетКакой предпочтительный способ своевременно отправлять в Google Analytics точно отслеживаемые события из такого приложения?

Спасибо.

1 Ответ

7 голосов
/ 21 июля 2011

GA данные НЕ отправляются при выгрузке документа; нет никакой связи между выгрузкой документов и Google Analytics.

При использовании асинхронного синтаксиса Google Analytics загружается в DOM асинхронно, куда бы вы его ни поместили. В то же время _gaq.push() создает очередь функций, которые должны выполняться после загрузки Google Analytics, и выполняться последовательно. Все это происходит без учета выгрузки, загрузки, готовности документа и т. Д.

Когда очередь достигает функции отслеживания (_trackPageview, _trackEvent, _trackSocial и т. Д.), Она выполняет запрос на удаленный пиксель, __utm.gif, который Google использует для создания журналов для анализа и обработки в аналитические данные.

После загрузки ga.js, _gaq.push() действует как непосредственная очередь; Это означает, что если вы продолжите генерировать _gaq.push() из приложения, когда вы хотите отслеживать вещи, эти запросы будут немедленно отправлены.

...