public class Tracker
extends java.lang.Object
| Modifier and Type | Field and Description |
|---|---|
protected static java.lang.String |
PREF_KEY_DISPATCHER_MODE |
protected static java.lang.String |
PREF_KEY_OFFLINE_CACHE_AGE |
protected static java.lang.String |
PREF_KEY_OFFLINE_CACHE_SIZE |
protected static java.lang.String |
PREF_KEY_TRACKER_FIRSTVISIT |
protected static java.lang.String |
PREF_KEY_TRACKER_OPTOUT |
protected static java.lang.String |
PREF_KEY_TRACKER_PREVIOUSVISIT |
protected static java.lang.String |
PREF_KEY_TRACKER_USERID |
protected static java.lang.String |
PREF_KEY_TRACKER_VISITCOUNT |
| Constructor and Description |
|---|
Tracker(Piwik piwik,
TrackerConfig trackerConfig)
Use Piwik.newTracker() method to create new trackers
|
| Modifier and Type | Method and Description |
|---|---|
void |
dispatch()
Processes all queued events in background thread
|
boolean |
equals(java.lang.Object o) |
java.net.URL |
getAPIUrl() |
protected java.lang.String |
getApplicationBaseURL() |
protected java.lang.String |
getApplicationDomain() |
TrackMe |
getDefaultTrackMe()
Piwik will use the content of this object to fill in missing values before any transmission.
|
long |
getDispatchInterval() |
DispatchMode |
getDispatchMode()
The current dispatch behavior.
|
int |
getDispatchTimeout()
|
java.util.List<Packet> |
getDryRunTarget()
If we are in dry-run mode then this will return a datastructure.
|
TrackMe |
getLastEventX()
For testing purposes
|
java.lang.String |
getName() |
long |
getOfflineCacheAge()
|
long |
getOfflineCacheSize()
Maximum size the offline cache is allowed to grow to.
|
Piwik |
getPiwik() |
android.content.SharedPreferences |
getPreferences() |
long |
getSessionTimeout()
Default is 30min (30*60*1000).
|
protected int |
getSiteId() |
java.lang.String |
getUserId() |
java.lang.String |
getVisitorId() |
int |
hashCode() |
boolean |
isOptOut() |
static java.lang.String |
makeRandomVisitorId() |
Tracker |
setApplicationDomain(java.lang.String domain)
Domain used to build required parameter url (http://developer.piwik.org/api-reference/tracking-api)
If domain wasn't set `Application.getPackageName()` method will be used
|
Tracker |
setDispatchGzipped(boolean dispatchGzipped)
Defines if when dispatched, posted JSON must be Gzipped.
|
Tracker |
setDispatchInterval(long dispatchInterval)
Set the interval to 0 to dispatch events as soon as they are queued.
|
void |
setDispatchMode(DispatchMode mode)
Sets the dispatch mode.
|
void |
setDispatchTimeout(int timeout)
|
void |
setDryRunTarget(java.util.List<Packet> dryRunTarget)
Set a data structure here to put the Dispatcher into dry-run-mode.
|
void |
setOfflineCacheAge(long age)
For how long events should be stored if they could not be send.
|
void |
setOfflineCacheSize(long size)
How large the offline cache may be.
|
void |
setOptOut(boolean optOut)
Use this to disable this Tracker, e.g.
|
void |
setSessionTimeout(int milliseconds) |
Tracker |
setUserId(java.lang.String userId)
Defines the User ID for this request.
|
Tracker |
setVisitorId(java.lang.String visitorId)
The unique visitor ID, must be a 16 characters hexadecimal string.
|
void |
startNewSession() |
Tracker |
track(TrackMe trackMe) |
protected boolean |
tryNewSession() |
protected static final java.lang.String PREF_KEY_TRACKER_OPTOUT
protected static final java.lang.String PREF_KEY_TRACKER_USERID
protected static final java.lang.String PREF_KEY_TRACKER_FIRSTVISIT
protected static final java.lang.String PREF_KEY_TRACKER_VISITCOUNT
protected static final java.lang.String PREF_KEY_TRACKER_PREVIOUSVISIT
protected static final java.lang.String PREF_KEY_OFFLINE_CACHE_AGE
protected static final java.lang.String PREF_KEY_OFFLINE_CACHE_SIZE
protected static final java.lang.String PREF_KEY_DISPATCHER_MODE
public Tracker(@NonNull
Piwik piwik,
@NonNull
TrackerConfig trackerConfig)
piwik - piwik object used to gain access to application params such as name, resolution or langtrackerConfig - configuration for this Tracker.java.lang.RuntimeException - if the supplied Piwik-Tracker URL is incompatiblepublic void setOptOut(boolean optOut)
optOut - true to disable reportingpublic boolean isOptOut()
public java.lang.String getName()
public Piwik getPiwik()
public java.net.URL getAPIUrl()
protected int getSiteId()
public TrackMe getDefaultTrackMe()
TrackMe object as already set values will not be overwritten.public void startNewSession()
public void setSessionTimeout(int milliseconds)
protected boolean tryNewSession()
public long getSessionTimeout()
public int getDispatchTimeout()
public void setDispatchTimeout(int timeout)
public void dispatch()
public Tracker setDispatchInterval(long dispatchInterval)
dispatchInterval - in millisecondspublic Tracker setDispatchGzipped(boolean dispatchGzipped)
dispatchGzipped - booleanpublic long getDispatchInterval()
public void setOfflineCacheAge(long age)
>0 = limit in ms
0 = unlimited
-1 = disabled offline cache
age - in millisecondspublic long getOfflineCacheAge()
public void setOfflineCacheSize(long size)
>0 = limit in byte
0 = unlimited
size - in bytepublic long getOfflineCacheSize()
public DispatchMode getDispatchMode()
DispatchModepublic void setDispatchMode(DispatchMode mode)
DispatchModepublic Tracker setUserId(java.lang.String userId)
When specified, the User ID will be "enforced". This means that if there is no recent visit with this User ID, a new one will be created. If a visit is found in the last 30 minutes with your specified User ID, then the new action will be recorded to this existing visit.
userId - passing null will delete the current user-id.public java.lang.String getUserId()
public Tracker setVisitorId(java.lang.String visitorId) throws java.lang.IllegalArgumentException
java.lang.IllegalArgumentExceptionpublic java.lang.String getVisitorId()
public Tracker setApplicationDomain(java.lang.String domain)
domain - your-domain.comprotected java.lang.String getApplicationDomain()
public static java.lang.String makeRandomVisitorId()
public android.content.SharedPreferences getPreferences()
public boolean equals(java.lang.Object o)
equals in class java.lang.Objectpublic int hashCode()
hashCode in class java.lang.Objectprotected java.lang.String getApplicationBaseURL()
public TrackMe getLastEventX()
public void setDryRunTarget(java.util.List<Packet> dryRunTarget)
dryRunTarget - a data structure the data should be passed intopublic java.util.List<Packet> getDryRunTarget()