Android: Tagging an application with the Digital Analytics Android SDK

This page outlines each tag function and parameters for the Acoustic Digital Analytics SDK. Android applications are tagged by using direct image requests with native Java methods for tag creation and firing.

Each tag has required parameters with a maximum length. If a required parameter is missing or a value is greater than the length identified, the SDK will return false and will attempt to send data to the server.

Page view tag

The Page View tag is used to capture clickstream data as the visitor moves from page to page within the site. A Page View tag tells Digital Analytics that someone viewed a page that is uniquely identified by the Digital Analytics 'Page ID' collected as parameter 1. The Page View tag also captures data that is related to onsite keyword searches.

The following table contains the Page View tag parameters:

ParameterDescriptionLength
Page IDRequired. Uniquely identifies the page. This can be any alphanumeric string and should be set according to the agreed upon page naming conventions.256
Category IDOptional. Category ID for the leaf node to which this page belongs. This should match with a category ID sent in the CDF file.256
Search termOptional. Onsite search term that was used to generate the search results page.256
Search resultOptional. Number of results that are returned by the keyword search. This value should equal the total results for this search across all results pages. If the search returned no results, this value be "0."10
AttributesOptional. A string array of up to 50 attribute values accessible in Explore reporting.256 per value
cm_mmcOptional. Use this parameter on the first page view of the session to flag a session as a Marketing Center session (MMC). Four delimited values should be passed in this parameter (-_-").256

Examples
Examples of using the Page View tag for Android applications.

Defining all parameters:

DigitalAnalytics.firePageview("AND:PAGEID","AND:CATID","boots","123",new String[]
{“att1”,”att2”, “”, “ att4”},"Vendor-_-Category-_-Placement-_-Item");

Defining null values for categoryID, search term, and search results, attributes, and cm_mmc:

DigitalAnalytics.firePageview("AND:PAGEID",null,null,null,null,null);

Product view tag

The Product View tag captures information about views of product detail pages. The Product View tag should be called on the lowest level detail page for products, which is typically the Product Details page. You can view example Product View tags below.

These are the Product View tag parameters:

ParameterDescriptionLength
Page IDRequired. Uniquely identifies the page. This can be any alphanumeric string and should be set according to the agreed upon page naming conventions.256
Product IDRequired. Uniquely identifies the product. This can be any alphanumeric string.256
Product nameRequired. Name of the product being viewed.256
Category IDOptional. Category ID for the leaf node to which this page belongs. This should match with a category ID sent in the CDF file.256
AttributesOptional. A string array of up to 50 attribute values accessible in Explore reporting.256 per value

Example
Here is an example of using the Product View tag for Android:

DigitalAnalytics.fireProductview("AND:PID1", "AND:PROD1", "AND:PNAME",
"AND:CAT1",new String[]{“att1”,”att2”, “”, “ att4”});

Shop Action 5 tag

The Shop Action 5 tag captures data about selected products and which products are present in a shopping cart if any when the cart is viewed.

These are the Shop Action 5 tag parameters:

ParameterDescriptionLength
Product IDRequired. Uniquely identifies the product. This can be any alphanumeric string.256
Product nameRequired. Name of the product being viewed.256
QuantityRequired. Quantity of this product currently selected or viewed in a cart.8
Unit base priceRequired. Price of each unit of the product. This value should be a decimal number and should not include a dollar sign ($).16.2
Category IDOptional. Category ID for the leaf node to which this page belongs. This should match with a category ID sent in the CDF file.256
Currency codeRequired. Digital Analytics supports capturing different currencies for purchases under a single client ID. Even if you are not sending multiple currency types, the currency code parameter is required. A currency code that conforms to the ISO4217 specification must be sent in this parameter. See http://www.xe.com/iso4217.php for reference.N/A
AttributesOptional. A string array of up to 50 attribute values accessible in Explore reporting.256 per value

Example

Here is an example of using the Shop Action 5 tag for Android applications:

DigitalAnalytics.fireShopAction5("AND:PROD1", "AND:PRODNAME", "1", "9.98",
"AND:CAT1", "USD", new String[]{“att1”,”att2”, “”, “ att4”});

Shop action 9 tag

The Shop Action 9 tag captures data about what products were purchased by a customer. Like the Shop Action 5 tag, one tag should be sent for each product line item purchased. These tags should be sent on the receipt or other completion page confirming a successful order.

These are the Shop Action 9 tag parameters:

ParameterDescriptionLength
Product IDRequired. Uniquely identifies the product. This can be any alphanumeric string.256
Product nameRequired. Name of the product being viewed.256
QuantityRequired. Quantity of this product currently selected or viewed in a cart.6
Unit base priceRequired. Price of each unit of the product. This value should be a decimal number and should not include a dollar sign ($).16.2
Category IDOptional. Category ID for the leaf node to which this page belongs. This should match with a category ID sent in the CDF file.256
Order IDRequired. Order ID for the order to which this line belongs. This should match the Order ID in the accompanying Order Tag.64
Order subtotalRequired. Subtotal for the order to which line item belongs. This should not include shipping and handling or tax and should match the Order Subtotal in the accompanying Order Tag. This value should be a decimal number and should not include a dollar sign ($). The Order Subtotal should match the sum of Quantity * Unit Price for all Shop Action 9 tags (products) purchased in this order.16.2
Customer IDRequired. Customer ID for the customer who purchased the product. This should match the Customer ID field in the accompanying Order Tag.256
Currency codeRequired. Digital Analytics supports capturing different currencies for purchases under a single client ID. Even if you are not sending multiple currency types, the currency code parameter is required. A currency code that conforms to the ISO4217 specification must be sent in this paramter. See http://www.xe.com/iso4217.htm for reference.N/A
AttributesOptional. A string array of up to 50 attribute values accessible in Explore reporting.256 per value

Example

Here is an example of using the Shop Action 9 tag for Android applications:

DigitalAnalytics.fireShopAction9("AND:PID1", "AND:PRODNAME", "1", "9.99",
"AND:CAT1", "ORDERID123", "9.99", "CUSTOMERID", "USD",new String[]{“att1”,”att2”,
“”, “ att4”});

Order tag

The Order tag captures order header information such as Registration ID, order ID, order subtotal, and shipping and handling. The Order tag should be sent on the receipt page confirming order completion.

These are the Order tag parameters:

ParameterDescriptionLength
Order IDRequired. Order ID for the order to which this line belongs. This should match the Order ID in the accompanying Order Tag.64
Order subtotalRequired. Subtotal for the order to which line item belongs. This should not include shipping and handling or tax and should match the Order Subtotal in the accompanying Order Tag. This value should be a decimal number and should not include a dollar sign ($). The Order Subtotal should match the sum of Quantity*Unit Price for all Shop Action 9 tags (products) purchased in this order.16.2
Shipping chargeRequired. Shipping and Handling for this order.16.2
Customer IDRequired. Customer ID for the customer who purchased the product. This should match the Customer ID field in the accompanying Order Tag.256
Customer cityOptional. City of the billing address for this customer.256
Customer stateOptional. State of the billing address for this customer.256
Customer postal codeOptional. Postal code of the billing address for this customer.256
Currency codeRequired. Digital Analytics supports capturing different currencies for purchases under a single client ID. Even if you are not sending multiple currency types, the currency code parameter is required. A currency code that conforms to the ISO4217 specification must be sent in this parameter. See http://www.xe.com/iso4217.htm for reference.N/A
AttributesOptional. A string array of up to 50 attribute values accessible in Explore reporting.256 per value

Example

Here is an example of using the Order tag for Android applications:

DigitalAnalytics.fireOrder("ORDERID", "9.99", "4.99", "CUSTOMERID", "AUSTIN", "TX",
"78735", "USD", new String[]{“att1”,”att2”, “”, “ att4”});

Registration tag

The Registration tag creates a Lifetime Visitor Experience Profile (LIVE Profile) by associating a single common Registration ID with the Acoustic Digital Analytics permanent cookie set in every browser visit to the tagged site.

The full fireRegistration API contains the customer ID, email address, customer city, customer state, customer postal code, customer country, and any additional attributes:

+ (BOOL)fireRegistration:(NSString *)customerId email:(NSString *)email 
customerCity:(NSString *)customerCity customerState:(NSString *)customerState 
customerZip:(NSString *)customerZip customerCountry:(NSString*)customerCountry 
attributes:(NSArray *)attributes;

These are the registration tag parameters:

ParameterDescriptionLength
Customer IDRequired. Customer ID for the customer who purchased the product. This should match the Customer ID field in the accompanying Order Tag.256
Email addressOptional. Email address of the billing address for this customer.256
Customer cityOptional. City of the billing address for this customer.256
Customer stateOptional. State of the billing address for this customer.256
Customer postal codeOptional. Postal code of the billing address for this customer.256
Customer countryOptional. Country of the billing address for this customer.256
AttributesOptional. A string array of up to 50 attribute values accessible in Explore reporting.256 per value

Registration attribute 50

Registration Attribute 50 is reserved to syndicate an opt-in status for a registered visitor.

By using information recorded in the Digital Analytics Registration tag attributes, you can determine your visitors' opt-in or out status for email communications. As a best practice, alias attribute 50 as contactConsent to reduce the odds of it being repurposed.

📘

Note:

The -_- delimiter cannot set apart individual opt-in or opt-out instructions. To send more than one opt-in or opt-out instruction, you must use multiple registration tags.

Tagging values for Attribute 50

Attribute valueValue options (case sensitive)
Channel valuesemail, mobile, sms
Instruction valuesopt-in, opt-out, [null]

Example registration attribute usage
Attribute Slot: 50

Attribute Alias: contactConsent

Attribute Value: email | opt-in

Example
Here is an example of using the Registration tag for Android applications:

DigitalAnalytics.fireRegistration("CUSTOMERID", "[email protected]", "AUSTIN", "TX",
"78735", "US",new String[]{“att1”,”att2”, “”, “ att4”});

Element tag

The Element tag and its associated reports provide organizations with the flexibility to track interaction with various intrapage elements and how these elements drive objective attainment. Below are some examples of elements that could be tracked using the Element tag:

  • Portlets
    • Search portlets
    • News portlets
  • AJAX Detail Hovers
    • Product detail hover-overs
    • Customer review hover-overs
  • Video Plays
    • Play
    • Stop
    • Rewind
  • Dynamic Page Content.
    • Price slider bars
    • Brand filter check boxes
    • Feature selectors
    • Page or Form error messages
  • Clicks on File Downloads or 3rd Party Content or Banners
    • PDF downloads
    • 3rd Party Banners or Content

These are the Element tag parameters:

ParameterDescriptionLength
Element IDRequired. The unique identifier or name for the Element and the value that will be displayed in the Elements report.50
Element categoryOptional. The unique identifier or name for the Element and the value that is displayed in the Elements report. 50-character limit. This limit is in 'characters', which vary in byte length depending on encoding.50
AttributesOptional. A string array of up to 50 attribute values accessible in Explore reporting.256 per value

Example

Here is an example of using the Element tag for Android applications:

DigitalAnalytics.request.fireElement("AND:EID", "AND:ECAT",new String[]
{“att1”,”att2”, “”, “ att4”});

Conversion Event tag

The Conversion Event tag is employed for tracking general non-commerce conversion events. The Conversion Event tag is used to populate values in the Conversion Events Reports and to create Key Segments. This tag and the reports it populates enable an analysis of a wide variety of site activities.

Following are some examples of events that could be tracked via the Conversion Event Tag:

  • Increase site stickiness
    • Play online game
    • View account information
    • Use online calculator
    • Use trip planner
    • Use comparison tool
  • Improve self-service
    • Sign up for bridal registry
    • Download help documents
    • Download form
    • Download marketing information
  • Improve retention marketing
    • Register for specific newsletter
    • Sign up for Webinar
    • Add items to wish list
    • Set email alerts
  • Multichannel behavior
    • Use store locator
    • Visit the contact us page
    • Initiate chat session
    • Register for callback

These are the Conversion Event tag parameters:

ParameterDescriptionValue
Event IDRequired. A unique identifier for the type of conversion, such as Account Creation or Special Registration. The value that is passed in the tag is the value that is displayed in the Digital Analytics reports.256
Action typeRequired. A value of 1 or 2 depending upon whether a conversion initiation or a successful conversion completion is generated. A value of 1 should be used when an event is initiated. A value of 2 should be used when an event is successfully completed. Single-Step conversions should be represented by a value of 2.1
Event categoryOptional. Allows grouping of event IDs into categories. The value that is passed in the tag is the value that is displayed in reports. The Event Category ID is self-contained and not related to the Category Definition File contents (CDF).256
Event pointsOptional. A point value used in establishing an arbitrary value for a converison. The point value allows relative weighting of and Event's initiation and completion. For example, a visitor initiating a low value event might be work 5 points, whereas a visitor completing a high value event might be worth 50 points.16
AttributesOptional. A string array of up to 50 attribute values accessible in Explore reporting.256 per value

Example

Here is an example of using the Conversion Event tag for Android applications:

DigitalAnaltics.fireConversionEvent("AND:CID", "2", "AND:CCAT", "10",new String[]
{“att1”,”att2”, “”, “ att4”});

Manual Impression tag

Use the Manual Impression tag to collect marketing impressions for individual tracked Onside Marketing Links (Site Promotions or Real Estate).

Manual Impression tags are typically implemented in conjunction with a related Manual Link Click tag. One Impression tag is called for each related Site Promotion or Real Estate link object on a given page.

Common Use Case:

  • Manual 'Link Click' tags have been implemented to track JavaScript, AJAX, Flash, Silverlight, or other non-HTML/HREF link objects with Site Promotions and Real Estate parameters: equivalent 'Manual Impression' tags must be implemented if impression tracking is wanted for the related link objects.

These are the Manual Impression tag parameters:

ParameterDescriptionLength
Page IDRequired. Uniquley identifies the originating page. This can be any alphanumeric string and should be set according to the agreed upon page naming conventions.256
Site promotionSite Promotion (cm_sp) marketing link parameter. Optional. A string array of values promotionGroup-_-promotion-_-link.256
Real estate promotionReal estate (cm_re) marketing link parameter. Optional. A string array of values pageVersion-_-pageArea-_-link.256

Example

Here is an example of using the Manual Impression tag for Android applications:

DigitalAnalytics.fireImpression("PAGEID", new String[]{"ONE”,”TWO”,”THREE"},
 new String[]{"ONE”,”TWO”,”THREE"});

Manual Link Click tag

The Manual Link Click tag is used when the automated collection of link click data does not occur and LIVEview or Site Promotions/Real Estate reporting is desired for the affected links. Digital Analytics testing tools, including Tag Bar/Tag Monitor and Implementation Test Tool (ITT) can assist in determining if automatic Link Click tags are generated for the links in question.

These are the Manual Link Click tag parameters:

ParameterDescriptionLength
Page IDRequired. Uniquely identifies the originating page. This can be any alphanumeric string and should be set according to the agreed upon page naming conventions.256
Link nameOptional. Name attribute of the link. If link has no name, then use href.256
Link hrefRequired. Link href. This parameter should contain any site promotion (cm_sp) or real estate (cm_re) parameters.256

Example

Here is an example of using the Manual Link Click tag for Android applications:

DigitalAnalytics.fireLinkClick("PAGEID", "LINKNAME", "/HOME/END.HTML");