public static class Tracker.Event
extends java.lang.Object
implements android.os.Parcelable
Kochava standard post-install events have a finite list of event names and event keys. You can instrument your post-install events using one of the event names, and as many of the event keys (per event) as you would like. See the Post-Install Event Examples page for more information.
The standard event names and parameters cover a wide range of uses and should be used when possible. However sometimes your implementation will require something different, for those cases you can use the custom event name and parameter support provided by this class.
Use Tracker.Event(int) to create an Event with a standard name.
Use Tracker.Event(String) to create an Event with a custom name.
Event with Standard Name
Tracker.sendEvent(new Event(Tracker.EVENT_TYPE_ADD_TO_CART)
.setName("Pizza")
.setCurrency("USD")
.setOrderId("1234-5678-1234")
.setQuantity(2)
.setPrice(18.97)
);
Event with Custom Name
Tracker.sendEvent(new Event("Custom Event")
.addCustom("custom_key", "custom_value")
.setName("awesome_event")
);
Event with In App Purchase Receipt
Tracker.sendEvent(new Event(Tracker.EVENT_TYPE_PURCHASE)
.setGooglePlayReceipt("receipt json", "receipt json signature")
.setName("in app purchase")
.setCurrency("USD")
.setPrice(0.99)
);
Notes
If setting the same parameter multiple times the most recent value will be used.
Custom parameters can also conflict with and override built in keys. See the documentation for each parameter for its key to ensure you do not conflict.
| Modifier and Type | Field and Description |
|---|---|
static android.os.Parcelable.Creator<Tracker.Event> |
CREATOR
Creator for building an Event from a Parcel object.
|
| Modifier | Constructor and Description |
|---|---|
|
Event(int type)
Creates an Event with a standard name.
|
protected |
Event(android.os.Parcel in)
Creates an Event with a saved Parcel object.
|
|
Event(java.lang.String eventName)
Creates an Event with a custom name.
|
| Modifier and Type | Method and Description |
|---|---|
Tracker.Event |
addCustom(org.json.JSONObject keyValue)
Adds multiple key value pairs to the event.
|
Tracker.Event |
addCustom(java.lang.String keyName,
boolean value)
Adds a custom boolean value.
|
Tracker.Event |
addCustom(java.lang.String keyName,
java.util.Date value)
Adds a custom Date value.
|
Tracker.Event |
addCustom(java.lang.String keyName,
double value)
Adds a custom double value.
|
Tracker.Event |
addCustom(java.lang.String keyName,
long value)
Adds a custom long value.
|
Tracker.Event |
addCustom(java.lang.String keyName,
java.lang.String value)
Adds a custom String value.
|
int |
describeContents()
There are no special objects in this Parcelable instance.
|
Tracker.Event |
setAction(java.lang.String value)
Set the "action" value.
|
Tracker.Event |
setAdCampaignId(java.lang.String value)
Set the "ad_campaign_id" value.
|
Tracker.Event |
setAdCampaignName(java.lang.String value)
Set the "ad_campaign_name" value.
|
Tracker.Event |
setAdDeviceType(java.lang.String value)
Set the ad "device_type" value.
|
Tracker.Event |
setAdGroupId(java.lang.String value)
Set the "ad_group_id" value.
|
Tracker.Event |
setAdGroupName(java.lang.String value)
Set the "ad_group_name" value.
|
Tracker.Event |
setAdMediationName(java.lang.String value)
Set the "ad_mediation_name" value.
|
Tracker.Event |
setAdNetworkName(java.lang.String value)
Set the "ad_network_name" value.
|
Tracker.Event |
setAdPlacement(java.lang.String value)
Set the ad "placement" value.
|
Tracker.Event |
setAdSize(java.lang.String value)
Set the "ad_size" value.
|
Tracker.Event |
setAdType(java.lang.String value)
Set the "ad_type" value.
|
Tracker.Event |
setBackground(boolean value)
Set the "background" value.
|
Tracker.Event |
setCheckoutAsGuest(java.lang.String value)
Set the "checkout_as_guest" value.
|
Tracker.Event |
setCompleted(boolean value)
Set the "completed" value.
|
Tracker.Event |
setContentId(java.lang.String value)
Set the "content_id" value.
|
Tracker.Event |
setContentType(java.lang.String value)
Set the "content_type" value.
|
Tracker.Event |
setCurrency(java.lang.String value)
Set the "currency" value.
|
Tracker.Event |
setDate(java.util.Date value)
Set the "date" value.
|
Tracker.Event |
setDate(java.lang.String value)
Set the "date" value.
|
Tracker.Event |
setDescription(java.lang.String value)
Set the "description" value.
|
Tracker.Event |
setDestination(java.lang.String value)
Set the "destination" value.
|
Tracker.Event |
setDuration(double value)
Set the "duration" value.
|
Tracker.Event |
setEndDate(java.util.Date value)
Set the "end_date" value.
|
Tracker.Event |
setEndDate(java.lang.String value)
Set the "end_date" value.
|
Tracker.Event |
setGooglePlayReceipt(java.lang.String receiptJson,
java.lang.String receiptSignature)
Set Google Play In App Purchase receipt data.
|
Tracker.Event |
setItemAddedFrom(java.lang.String value)
Set the "item_added_from" value.
|
Tracker.Event |
setLevel(java.lang.String value)
Set the "level" value.
|
Tracker.Event |
setMaxRatingValue(double value)
Set the "max_rating_value" value.
|
Tracker.Event |
setName(java.lang.String value)
Set the "name" value.
|
Tracker.Event |
setOrderId(java.lang.String value)
Set the "order_id" value.
|
Tracker.Event |
setOrigin(java.lang.String value)
Set the "origin" value.
|
Tracker.Event |
setPayload(android.os.Bundle value)
Set the "payload" value.
|
Tracker.Event |
setPayload(org.json.JSONObject value)
Set the "payload" value.
|
Tracker.Event |
setPrice(double value)
Set the "price" value.
|
Tracker.Event |
setQuantity(double value)
Set the "quantity" value.
|
Tracker.Event |
setRatingValue(double value)
Set the "rating_value" value.
|
Tracker.Event |
setReceiptId(java.lang.String value)
Set the "receipt_id" value.
|
Tracker.Event |
setReferralFrom(java.lang.String value)
Set the "referral_from" value.
|
Tracker.Event |
setRegistrationMethod(java.lang.String value)
Set the "registration_method" value.
|
Tracker.Event |
setResults(java.lang.String value)
Set the "results" value.
|
Tracker.Event |
setScore(java.lang.String value)
Set the "score" value.
|
Tracker.Event |
setSearchTerm(java.lang.String value)
Set the "search_term" value.
|
Tracker.Event |
setSource(java.lang.String value)
Set the "source" value.
|
Tracker.Event |
setSpatialX(double value)
Set the "spatial_x" value.
|
Tracker.Event |
setSpatialY(double value)
Set the "spatial_y" value.
|
Tracker.Event |
setSpatialZ(double value)
Set the "spatial_z" value.
|
Tracker.Event |
setStartDate(java.util.Date value)
Set the "start_date" value.
|
Tracker.Event |
setStartDate(java.lang.String value)
Set the "start_date" value.
|
Tracker.Event |
setSuccess(java.lang.String value)
Set the "success" value.
|
Tracker.Event |
setUri(java.lang.String value)
Set the "uri" value.
|
Tracker.Event |
setUri(android.net.Uri value)
Set the "uri" value.
|
Tracker.Event |
setUserId(java.lang.String value)
Set the "user_id" value.
|
Tracker.Event |
setUserName(java.lang.String value)
Set the "user_name" value.
|
Tracker.Event |
setValidated(java.lang.String value)
Set the "validated" value.
|
void |
writeToParcel(android.os.Parcel dest,
int flags)
Writes this object out into a Parcel.
|
public static final android.os.Parcelable.Creator<Tracker.Event> CREATOR
public Event(int type)
type - Event Type. Tracker.EventTypeTracker.sendEvent(Event)public Event(java.lang.String eventName)
Event pre-registration is not required.
Event names may not be prepended with an underscore as that convention is reserved for Kochava events.
eventName - Custom Event Name. Must be NonNull with a length >= 1.Tracker.sendEvent(Event)protected Event(android.os.Parcel in)
Used by the Parcelable interface to allow serialization of this object.
in - Input Parcel.public final Tracker.Event setAdDeviceType(java.lang.String value)
value - Value to set.public final Tracker.Event setAdPlacement(java.lang.String value)
value - Value to set.public final Tracker.Event setAdType(java.lang.String value)
value - Value to set.public final Tracker.Event setAdCampaignId(java.lang.String value)
value - Value to set.public final Tracker.Event setAdCampaignName(java.lang.String value)
value - Value to set.public final Tracker.Event setAdSize(java.lang.String value)
value - Value to set.public final Tracker.Event setAdGroupName(java.lang.String value)
value - Value to set.public final Tracker.Event setAdGroupId(java.lang.String value)
value - Value to set.public final Tracker.Event setAdNetworkName(java.lang.String value)
value - Value to set.public final Tracker.Event setAdMediationName(java.lang.String value)
value - Value to set.public final Tracker.Event setCheckoutAsGuest(java.lang.String value)
value - Value to set.public final Tracker.Event setContentId(java.lang.String value)
value - Value to set.public final Tracker.Event setContentType(java.lang.String value)
value - Value to set.public final Tracker.Event setCurrency(java.lang.String value)
value - Value to set.public final Tracker.Event setDate(java.lang.String value)
Overrides setDate(Date)
value - Value to set.public final Tracker.Event setDate(java.util.Date value)
Overrides setDate(String)
Format in UTC: 2017-09-27T17:12:39.706Z
value - Value to set.public final Tracker.Event setDescription(java.lang.String value)
value - Value to set.public final Tracker.Event setDestination(java.lang.String value)
value - Value to set.public final Tracker.Event setDuration(double value)
value - Value to set.public final Tracker.Event setEndDate(java.lang.String value)
Overrides setEndDate(Date)
value - Value to set.public final Tracker.Event setEndDate(java.util.Date value)
Overrides setEndDate(String)
Format in UTC: 2017-09-27T17:12:39.706Z
value - Value to set.public final Tracker.Event setItemAddedFrom(java.lang.String value)
value - Value to set.public final Tracker.Event setLevel(java.lang.String value)
value - Value to set.public final Tracker.Event setMaxRatingValue(double value)
value - Value to set.public final Tracker.Event setName(java.lang.String value)
value - Value to set.public final Tracker.Event setOrderId(java.lang.String value)
value - Value to set.public final Tracker.Event setOrigin(java.lang.String value)
value - Value to set.public final Tracker.Event setPrice(double value)
value - Value to set.public final Tracker.Event setQuantity(double value)
value - Value to set.public final Tracker.Event setRatingValue(double value)
value - Value to set.public final Tracker.Event setReceiptId(java.lang.String value)
value - Value to set.public final Tracker.Event setReferralFrom(java.lang.String value)
value - Value to set.public final Tracker.Event setRegistrationMethod(java.lang.String value)
value - Value to set.public final Tracker.Event setResults(java.lang.String value)
value - Value to set.public final Tracker.Event setScore(java.lang.String value)
value - Value to set.public final Tracker.Event setSearchTerm(java.lang.String value)
value - Value to set.public final Tracker.Event setStartDate(java.lang.String value)
Overrides setStartDate(Date)
value - Value to set.public final Tracker.Event setStartDate(java.util.Date value)
Overrides setStartDate(String)
Format in UTC: 2017-09-27T17:12:39.706Z
value - Value to set.public final Tracker.Event setSuccess(java.lang.String value)
value - Value to set.public final Tracker.Event setUserId(java.lang.String value)
value - Value to set.public final Tracker.Event setUserName(java.lang.String value)
value - Value to set.public final Tracker.Event setValidated(java.lang.String value)
value - Value to set.public final Tracker.Event setSpatialX(double value)
value - Value to set.public final Tracker.Event setSpatialY(double value)
value - Value to set.public final Tracker.Event setSpatialZ(double value)
value - Value to set.public final Tracker.Event setGooglePlayReceipt(java.lang.String receiptJson, java.lang.String receiptSignature)
It is recommended that every time you detect a new purchase or subscription renewal that you send the receipt along with any other known details such as the price and currency to Kochava.
Note: In order to validate the In App Purchase receipt you must include your Google Play License Key within Partner Configuration -> Credentials -> Google AdMob - Android -> Public Key.
receiptJson - Data Json.receiptSignature - Data Signature.public final Tracker.Event setPayload(android.os.Bundle value)
Only simple types long, String, boolean, etc are supported. Unsupported types will be dropped.
Overrides setPayload(JSONObject)
value - Value to set.public final Tracker.Event setPayload(org.json.JSONObject value)
Overrides setPayload(Bundle)
value - Value to set.public final Tracker.Event setBackground(boolean value)
value - Value to set.public final Tracker.Event setAction(java.lang.String value)
value - Value to set.public final Tracker.Event setCompleted(boolean value)
value - Value to set.public final Tracker.Event setUri(android.net.Uri value)
value - Value to set.public final Tracker.Event setUri(java.lang.String value)
value - Value to set.public final Tracker.Event setSource(java.lang.String value)
value - Value to set.public final Tracker.Event addCustom(java.lang.String keyName, double value)
keyName - Custom key name.value - Custom value to set.public final Tracker.Event addCustom(java.lang.String keyName, long value)
keyName - Custom key name.value - Custom value to set.public final Tracker.Event addCustom(java.lang.String keyName, java.lang.String value)
Convert values of unsupported types into Strings to pass in with this method.
keyName - Custom key name.value - Custom value to set.public final Tracker.Event addCustom(java.lang.String keyName, java.util.Date value)
Format in UTC: 2017-09-27T17:12:39.706Z
keyName - Custom key name.value - Custom value to set.public final Tracker.Event addCustom(java.lang.String keyName, boolean value)
keyName - Custom key name.value - Custom value to set.public final Tracker.Event addCustom(org.json.JSONObject keyValue)
keyValue - JSONObject containing key value pairs.public final int describeContents()
describeContents in interface android.os.Parcelablepublic final void writeToParcel(android.os.Parcel dest,
int flags)
writeToParcel in interface android.os.Parcelabledest - Destination Parcel.flags - Flags.