Skip to content

Woopra/woopra-android-sdk

Repository files navigation

Woopra Android SDK

Installation

To declare the mavenCentral() repository. Add mavenCentral() in the project-level build.gradle.

allprojects {
    repositories {
        ...
        mavenCentral()
        ...
    }
}

Or in the app module's build.gradle

repositories {
    ...
    mavenCentral()
    ...
}

Then add dependencies to app/build.gradle

implementation 'com.appier:woopra-android:1.1.0'

Instantiate Tracker Object

To setup your tracker SDK, configure the tracker instance as follows (replace mybusiness.com with your domain name):

// Java
WoopraTracker tracker = Woopra.getInstance(this /* context (e.g. activity) */).getTracker("mybusiness.com");
// Kotlin
val tracker = Woopra.getInstance(this /* context (e.g. activity) */).getTracker("mybusiness.com")

To add custom visitor properties, you should edit the visitor object:

// Java
tracker.setVisitorProperty("name", "User Name");
tracker.setVisitorProperty("email", "user@company.com");
tracker.setVisitorProperty("age", 30);
// Kotlin
tracker.setVisitorProperty("name", "User Name")
tracker.setVisitorProperty("email", "user@company.com")
tracker.setVisitorProperty("age", 30)

Or,

// Java
Map<String, Object> visitorProps = new HashMap<>();
visitorProps.put("name", "User Name");
visitorProps.put("email", "user@company.com");
visitorProps.put("age", 30);
tracker.setVisitorProperties(visitorProps);
// Kotlin
val visitorProps: MutableMap<String, Any> = HashMap()
visitorProps["name"] = "User Name"
visitorProps["email"] = "user@company.com"
visitorProps["age"] = 30
tracker.setVisitorProperties(visitorProps)

Event Tracking

To track an event, you must setup a WoopraEvent object and track it:

// Java
// setup event
WoopraEvent event = new WoopraEvent("app_viewed");
event.setProperty("view", "home screen");
event.setProperty("title", "Home Screen");
event.setProperty("property_boolean", true);

// track event
tracker.trackEvent(event);
// Kotlin
// setup event
val event = WoopraEvent("app_viewed")
event.setProperty("view", "home screen")
event.setProperty("title", "Home Screen")
event.setProperty("property_boolean", true)

// track event
tracker.trackEvent(event)

Identifying

You can send an identify call without tracking an event by using the tracker.push() method:

// Java
tracker.setVisitorProperty("name", "User Name");
tracker.setVisitorProperty("email", "user@company.com");
tracker.setVisitorProperty("age", 30);
// Visitor data has not been sent to Woopra
tracker.push();
// Visitor data has been sent to Woopra, but no event has been tracked
// Kotlin
tracker.setVisitorProperty("name", "User Name")
tracker.setVisitorProperty("email", "user@company.com")
tracker.setVisitorProperty("age", 30)
// Visitor data has not been sent to Woopra
tracker.push()
// Visitor data has been sent to Woopra, but no event has been tracked

Advanced Settings

To add referrer information, timestamp, and other track request properties, look at the WoopraTracker and WoopraEvent class public methods for an exhaustive list of setter methods. Here are some common examples:

Tracker Settings

Track Referrer

// Java
tracker.setReferer(<REFERRER_STRING>);
// Or
tracker.setReferrer(<REFERRER_STRING>);
// Kotlin
tracker.referer = <REFERRER_STRING>
// Or
tracker.referrer = <REFERRER_STRING>

Note

For legacy of this SDK as well as the HTTP, you can use both referer or referrer methods, but it will be stored as referer.

Idle Timeout

You can update your idle timeout (default: 30 seconds) by updating the timeout property in your Woopra tracker:

// Java
tracker.setIdleTimeout(180);
// Kotlin
tracker.idleTimeout = 180

Note

The idle timeout is in seconds.

Event Settings

You can explicitly set a timestamp for an event:

// Java
event.setTimestamp(<LONG_UNIX_MS_TIMESTAMP>);
// Kotlin
event.timestamp = <LONG_UNIX_MS_TIMESTAMP>

Note

The unix epoch time is in milliseconds.

License

Except as otherwise noted, the Woopra Android SDK is licensed under the Apache License, Version 2.0 (http://www.apache.org/licenses/LICENSE-2.0.html).

Ruby on Rails is released under the MIT License

About

Woopra SDK for Android

Resources

License

MIT, Apache-2.0 licenses found

Licenses found

MIT
LICENSE
Apache-2.0
LICENSE.txt

Stars

Watchers

Forks

Packages

No packages published

Languages