Giter VIP home page Giter VIP logo

google-analytics-plugin's Introduction

google-analytics-plugin

Provides Apache Cordova/Phonegap support for Google Analytics using the native sdks for Android & iOS.

  • Android Native SDK v4 (using Google Play Services SDK)
  • iOS Native SDK v3

This plugin provides support for some of the more specific analytics functions (screen, event & exception tracking, custom metrics & dimensions) and also the more generic set and send functions which can be used to implement all of the Google Analytics collection features.

As an example tracking a screen could be implemented using either the sendAppView function or the send function:

var analytics = navigator.analytics;

// set the tracking id
analytics.setTrackingId('UA-XXXXX-X');

analytics.sendAppView('home', successCallback, errorCallback);

// or the same could be done using the send function

var Fields    = analytics.Fields,
    HitTypes  = analytics.HitTypes,
    LogLevel  = analytics.LogLevel,
    params    = {};

params[Fields.HIT_TYPE]     = HitTypes.APP_VIEW;
params[Fields.SCREEN_NAME]  = 'home';

analytics.setLogLevel(LogLevel.INFO);

analytics.send(params, successCallback, errorCallback);

The send & set functions provide maximum flexibility and allow you to utilize all of the Google Analytics collection calls. Some helper function are also provided to support some of the more common analytic functions.

For more information about measurement protocol refer to the following page:

Measurement Protocol Developer Guide

Installation

cordova plugin add com.cmackay.plugins.googleanalytics

API

analytics

analytics.Fields

GA Field Types

Kind: static property of analytics

analytics.HitTypes

GA Hit Types

Kind: static property of analytics

analytics.LogLevel

Log Levels

Kind: static property of analytics

analytics.setTrackingId(trackingId, [success], [error])

Sets the tracking id

Kind: static method of analytics

Param Type Description
trackingId string the trackingId
[success] function the success callback
[error] function the error callback

analytics.setDispatchInterval(seconds, [success], [error])

Sets the dispatch Interval

Kind: static method of analytics

Param Type Description
seconds number the interval in seconds
[success] function the success callback
[error] function the error callback

analytics.getAppOptOut([success])

Get app-level opt out flag that will disable Google Analytics

Kind: static method of analytics

Param Type Description
[success] function the success callback (value is passed to callback)

analytics.setAppOptOut([enabled], [success], [error])

Set app-level opt out flag that will disable Google Analytics

Kind: static method of analytics

Param Type Default Description
[enabled] boolean true true for opt out or false to opt in
[success] function the success callback
[error] function the error callback

analytics.setLogLevel(logLevel, [success], [error])

Sets the log level

Kind: static method of analytics

Param Type Description
logLevel number the log level (refer to LogLevel for values)
[success] function the success callback
[error] function the error callback

analytics.get(key, success, [error])

Gets a field value. Returned as argument to success callback

Kind: static method of analytics

Param Type Description
key string the key
success function the success callback
[error] function the error callback

analytics.set(key, value, [success], [error])

Sets a field value

Kind: static method of analytics

Param Type Description
key string the key
value the value
[success] function the success callback
[error] function the error callback

analytics.send(params, [success], [error])

Generates a hit to be sent with the specified params and current field values

Kind: static method of analytics

Param Type Description
params object the params
[success] function the success callback
[error] function the error callback

analytics.close([success], [error])

Closes the the tracker

Kind: static method of analytics

Param Type Description
[success] function the success callback
[error] function the error callback

analytics.customDimension(id, [value], [success], [error])

Sets a custom dimension

Kind: static method of analytics

Param Type Description
id number the id
[value] string the value
[success] function the success callback
[error] function the error callback

analytics.customMetric(id, [value], [success], [error])

Sets a custom metric

Kind: static method of analytics

Param Type Description
id number the id
[value] number the value
[success] function the success callback
[error] function the error callback

analytics.sendEvent(category, action, [label], [value], [success], [error])

Sends an event

Kind: static method of analytics

Param Type Default Description
category string the category
action string the action
[label] string "''" the label
[value] number 0 the value
[success] function the success callback
[error] function the error callback

analytics.sendEventWithParams(category, action, [label], [value], params, [success], [error])

Sends an event with additional params

Kind: static method of analytics

Param Type Default Description
category string the category
action string the action
[label] string "''" the label
[value] number 0 the value
params object the params
[success] function the success callback
[error] function the error callback

analytics.sendAppView(screenName, [success], [error])

Sends a screen view

Kind: static method of analytics

Param Type Description
screenName string the screenName
[success] function the success callback
[error] function the error callback

analytics.sendAppViewWithParams(screenName, params, [success], [error])

Sends a screen view with additional params

Kind: static method of analytics

Param Type Description
screenName string the screenName
params object the params
[success] function the success callback
[error] function the error callback

analytics.sendTiming(category, variable, label, time, [success], [error])

Sends a user timing

Kind: static method of analytics

Param Type Description
category string the category
variable string the variable
label string the label
time number the time
[success] function the success callback
[error] function the error callback

analytics.sendException(description, [fatal], [success], [error])

Sends an exception

Kind: static method of analytics

Param Type Description
description string the exception description
[fatal] boolean marks the exception as fatal
[success] function the success callback
[error] function the error callback

analytics.trackUnhandledScriptErrors([opts], [success], [error])

Tracks unhandled scripts errors (window.onerror) and then calls sendException. This function optionally can be passed an object containing a formmatter function which takes in all the args to window.onError and should return a String with the formatted error description to be sent to Google Analytics. Also the object can provide a fatal property which will be passed to sendException (defaults to true).

Kind: static method of analytics

Param Type Description
[opts] object the options { formatter: Function, fatal: Boolean }
[success] function the success callback
[error] function the error callback

google-analytics-plugin's People

Contributors

cmackay avatar davidsharp avatar imaksp avatar jlopezr avatar lugovsky avatar petarov avatar rangerrick avatar supermamie avatar zmagyar avatar

Watchers

 avatar  avatar

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.