Прежде всего, я должен отдать должное парням здесь. Их блог оказал огромную помощь, но мне все же пришлось сделать еще несколько вещей, чтобы наконец заставить его работать.
Я собираюсь пройти через это шаг за шагом, чтобы вы могли заставить его работать на самом базовом уровне, а затем вы можете взять его оттуда. Я обнаружил, что даже малейшая ошибка может все испортить.
Я предполагаю, что вы установили PhoneGap 1.2.0 и используете Xcode 4.2
ЧАСТЬ A
Получите базовое приложение PhoneGap. Следуйте инструкциям PhoneGap и приведите это в действие.
ЧАСТЬ B
Загрузите плагин Google Analytics для PhoneGap.
Я считаю, что самое простое, что можно сделать, это просто загрузить zip-файл с здесь. Вы получаете кучу вещей, которые вам не нужны, но это не имеет значения.
Разверните файл в вашем каталоге загрузки. Перейдите в расширенный каталог .. в папку iPhone , и вы увидите папку GoogleAnalytics .
В XCode щелкните правой кнопкой мыши на проекте (синий блок вверху) и выберите «Добавить файлы». Перейдите в расширенную папку. Нажмите на папку «GoogleAnalytics». Убедитесь, что выбрано «Копировать файлы в папку целевой группы (если необходимо)» и что оно добавлено в целевую папку. Нажмите «Добавить». Перетащите файлы в папке в Xcode в папку плагинов.
Вернитесь в Finder и откройте каталог проекта. Скопируйте GoogleAnalyticsPlugin.js
из папки GoogleAnalytics в папку «www». Xcode выдаст предупреждение о повторном сохранении файла. Просто нажмите Закрыть.
Перейдите в файл index.html. В function onDeviceReady()
добавьте следующую строку в начало функции.
window.plugins.googleAnalyticsPlugin.startTrackerWithAccountID("YOUR UA CODE");
Затем добавьте следующую функцию в функцию onDeviceReady
(внутри того же блока скрипта)
function trackpage(id)
{
console.log("start trackpage: " + id);
window.plugins.googleAnalyticsPlugin.trackPageview(id);
console.log("end trackpage: " + id);
}
Теперь, все еще в файле index.html, найдите строку
<li>Check your console log for any white-list rejection errors.</li>
(помните, что это телефонный разрыв 1.2.0)
добавить следующую строку после него.
<li class="arrow"><a href="javascript:trackpage('/TEST');">test analytics</a></li>
Это дает ссылку, по которой вы можете щелкнуть в тестовом приложении.
NB. У вас ДОЛЖЕН косая черта (/) на отслеживаемой странице. Так что javascript:trackpage('/TEST')
будет работать, а javascript:trackpage('TEST')
НЕ будет.
Наконец, еще в index.html добавьте следующую строку
<script type="text/javascript" charset="utf-8" src="GoogleAnalyticsPlugin.js"></script>
ниже
<script type="text/javascript" charset="utf-8" src="phonegap-1.2.0.js"></script>
Пока не пытайтесь запустить его. Это не сработает.
ЧАСТЬ C
Далее перейдите к файлу GoogleAnalytics.h
. Просто протрите .. Здесь куча проблем. Кажется, JSON теперь JSONKit, а PhoneGapCommand теперь PGPlugin. Просто вставьте это. Документация PhoneGap, кажется, повсюду.
#import <Foundation/Foundation.h>
#ifdef PHONEGAP_FRAMEWORK
#import <PhoneGap/PGPlugin.h>
#import <PhoneGap/NSData+Base64.h>
#import <PhoneGap/JSONKit.h>
#else
#import "PGPlugin.h"
#import "NSData+Base64.h"
#import "JSONKit.h"
#endif
#import "GANTracker.h"
@interface GoogleAnalyticsPlugin : PGPlugin<GANTrackerDelegate> {
}
- (void) startTrackerWithAccountID:(NSMutableArray*)arguments withDict:(NSMutableDictionary*)options;
- (void) trackEvent:(NSMutableArray*)arguments withDict:(NSMutableDictionary*)options;
- (void) trackPageview:(NSMutableArray*)arguments withDict:(NSMutableDictionary*)options;
@end
ЧАСТЬ D
Затем добавьте часть Google Analytics в проект. Это та часть, которую предоставляет Google, но ее удобно включить в папку с плагинами ios GoogleAnalytics / GoogSDK.
В Xcode перейдите в папку GoogleAnalytics/GoogSDK
и перетащите файлы GANTracker.h
и libGoogleAnalytics.a
в каталог плагинов.
В основном вам нужно скопировать их из «синей» папки GoogleAnalytics/GoogSDK
в «желтую» папку, чтобы их можно было найти по заголовочным файлам.
ЧАСТЬ E
Затем нам нужно добавить в проект sqlite (где Google Analytics хранит данные, когда он не в сети) и CFNetwork (чтобы Google Analytics мог загружать данные).
В Xcode нажмите на проект (синяя вещь вверху файла). Нажмите на основную цель. Затем нажмите на этапы сборки. Третий пункт в списке - это «Связь бинарных файлов с библиотеками». Обратите внимание, что есть два из них .. выберите верхний. Откройте его и нажмите на знак +. Добавьте libsqlite3.0.dylib
, затем добавьте CFNetwork.framework
.
ЧАСТЬ F
Наконец (почти там) нам нужно настроить плагин. Перейдите к файлу PhoneGap.plist
. Под плагинами добавьте еще одну запись с ключом как googleAnalyticsPlugin
(имя javascript) и значением как GoogleAnalyticsPlugin
(часть Obj-C).
Под ExternalHosts добавить запись *
Теперь попробуйте и запустите.Скрестив пальцы, это сработает.
Лучший способ протестировать его, запустить программу, а затем использовать новый режим Google Analytics Real Time (BETA), поскольку вы можете видеть, как страницы отслеживаются в реальном времени.
Вам необходимо перейти на новую версию Google Analytics (это должна быть очевидная ссылка вверху, чтобы перейти на новую версию).Откройте учетную запись GA, перейдите на Home..REAL_TIME ... Обзор.Вы должны увидеть трек страницы TEST, который появится через несколько секунд.
Примечание. Вы не можете отслеживать события в режиме реального времени.Вам нужно дождаться их обработки.
ПРОБЛЕМЫ
У меня возникли некоторые проблемы при просмотре источников компиляции и СсылкаБинарный с библиотеками .Части GoogleAnalytics будут отображаться красным цветом.Если они выделены красным, это означает, что ваш проект не может их найти, и я думаю, как вы решите это, зависит от вашей версии XCode, поэтому вам, возможно, придется немного погуглить, чтобы решить эту проблему.Я удалил GoogleAnalytics (нажмите знак -) и перетащил файл внутрь. Если он отображается как «правильный значок» (в отличие от красной рамки), он должен был сработать.
Вы также делаете это на Android?
Я предполагаю, что если вы используете PhoneGap, вы, вероятно, также делаете версию для Android.Если это так, вы можете проверить это сравнение Q + A для различий.