Example Titanium project that uses Google Analytics to track page views
Pull request Compare This branch is 16 commits behind rogchap:master.
Fetching latest commit…
Cannot retrieve the latest commit at this time.
Failed to load latest commit information.


Welcome to the Titanium Mobile Google Analytics Example Project

I started this project by creating a Titanium Module for wrapping 
the Google Analytics SDK iOS static library. However that effort 
faild; due to using the sql dynamic library 3.0. I just could not get it working!

So, I rolled out the functionality directly in Titanium.

It works exacly the same by tracking pageviews in a database and periodically sending them to Google
Analytics, if and when a network conection is available.

Note: To make sure that the database does not get flooded with data it holds a max of 1000 events.
This also helps load when it sends the events to Google. Once the event is sent to Google it is ejected
from the database.

To use: all you need is the analytics.js file and follow the examples in the app.js.

WARNING: Although I've writen the "trackEvent" function, I haven't updated the Google Analytics
parameters to handle traking of events....ie. I still need to finish this off! :)

From Google: You must indicate to your users, either in the application itself or in your 
terms of service, that you reserve the right to anonymously track and report a user's activity 
inside of your app. 

In order to generate the user-agent and one of the analytics parameters I needed the users country;
I had to add a method into the Titanium SDK as it did not exist.

In the Titanium SDK add the following:


	NSLocale *locale = [NSLocale currentLocale];
	return [locale objectForKey:NSLocaleCountryCode];


@property(readonly,nonatomic) NSString *countryCode;

Now I can call Titanium.Platform.countryCode

I hope some people find this useful.


Copyright (c) 2010 by Roger Chapman. All Rights Reserved.

This code is licensed under the MIT License. Please
see the LICENSE file for the full license.