Google Analytics Native SDK modules for Titanium
Objective-C Python Java JavaScript
Switch branches/tags
Nothing to show
Permalink
Failed to load latest commit information.
.settings Merge updates Feb 12, 2017
Android Update zip with new Play framework Feb 13, 2017
android Update zip with new Play framework Feb 13, 2017
assets Merge updates Feb 12, 2017
documentation Merge updates Feb 12, 2017
example Merge updates Feb 12, 2017
iphone Merge updates Feb 12, 2017
.classpath Merge updates Feb 12, 2017
.gitignore Merge updates Feb 12, 2017
.project Merge updates Feb 12, 2017
LICENSE Merge updates Feb 12, 2017
README.md Merge updates Feb 12, 2017

README.md

Ti.GA

A Google Analytics module that provides just what you need, in a consistent way.

This module was developed as a result of the frustration in chasing Google's changing API between SDK versions. Since most developers only care about a few features of the SDK that is what this module provides.

Downloads

Download the compiled modules at:

Source

Looking for the source? Check out the following:

How to...

Add to your project

You add the Ti.GA module into your project using the require keyword as shown below.
var ga = require('ti.ga');

Module Level Options

Enable Trace You can enable or disable trace by calling ga.setDebug. Provide true to enable or false to disable this option.

The following shows how to enable this feature

ga.setDebug(true);

OptOut Google Analytics provides the ability to opt out of collecting information. By default you are opt'ed into collecting information.

The following is an example on how to optout of collecting information:

ga.setOptOut(false);

If you have at one point opt'ed out you need to explicitly opt back in. Below is an example of opt'ing into collecting information:

ga.setOptOut(true);

setDispatchInterval The dispatch interval is how often in seconds that Google Analytics information should be submitted to Google.

The following show how to set the dispatch interval to 15 seconds.

ga.setDispatchInterval(15);

setTrackUncaughtExceptions On iOS you can set use the setTrackUncaughtExceptions to track unhandled exceptions.

The following is an example on how to enable this feature.

ga.setTrackUncaughtExceptions();

Dispatch The dispatch method submits data to Google Analytics. Google Analytics will automatically do this for your, but you can "force" this programmatically. If you are going to use this it should only be done while your application is not active and has a network connection.

ga.dispatch();

Creating a tracker

~~~ var tracker = ga.createTracker({ trackingId:'YOUR GOOGLE ANALYTICS TRACKER ID', useSecure:true, debug:true }); ~~~

Adding User ID

If you want to associate user IDs with your analytics data, you'll first need to create a view with User ID enabled.

Then, when a user logs in, pass a unique identifier for that user with the setUserID method on the tracker. You only need to set this once, and all hits for the session from then on will be attributed to that ID.

tracker.setUserID('my-user-id');

Adding Screen Viewed

More coming... here is an example for now

tracker.addScreenView('my-cool-view2');

Adding Timing

More coming... here is an example for now

    tracker.addTiming({
        category:"myCategory-Timing",
        label:"myLabel",
        name:"myName",
        time:1
    });

Adding Event

More coming... here is an example for now

    tracker.addEvent({
        category:"myCategory-Event",
        action:"myAction",
        label:"myLabel",
        value:1
    });  

Adding Social Network

More coming... here is an example for now

    tracker.addSocialNetwork({
        network:"facebook",
        action:"myAcount",
        target:"myTarget"
    });  

Adding Exception

More coming... here is an example for now

    tracker.addException({
        description:"my error description",
        fatal:false
    });  

Contributors

Thank you to all of the contributors.

A special thank you to Mauro Piccotti for helping to address Google Play conflicts

Licensing & Support

This project is licensed under the OSI approved Apache Public License (version 2). For details please see the license associated with each project.

Developed by Ben Bahrenburg available on twitter @bencoding