public class GooglePlayMonetizationEventBuilder extends MonetizationEventBuilder
org.json.JSONObject
on the completion of a
purchase using Google's In App Billing API. Since Google does not give you
any product information in the purchase object, you must have a way to access
your store inventory when the purchase is being finalized. In the example
below, we use a org.json.JSONObject
that was returned by a
request to Google's In App Billing API for product skus.
Example:
// create a builder that can record purchase events for Google Play IAP
GooglePlayMonetizationEventBuilder builder = GooglePlayMonetizationEventBuilder.create(pinpointManager.getAnalyticsClient());
// build the monetization event with the product id, formatted item price,
// transaction id, and quantity
// product id and formatted item price can be obtained from the JSONObject
// returned by a product sku request to Google's In App Billing API
// transaction id is obtained from the Purchase object that is returned upon the
// completion of a purchase
// Google IAP currently only supports a quantity of 1
Analytics Event purchaseEvent = builder.withProductId(sku).withFormattedItemPrice(price)
.withTransactionId(purchase.getOrderId()).withQuantity(1).build();
// record the monetization event
pinpointManager.getAnalyticsClient().recordEvent(purchaseEvent);Modifier and Type | Method and Description |
---|---|
static GooglePlayMonetizationEventBuilder |
create(AnalyticsClient analyticsClient)
Create a GooglePlayMonetizationEventBuilder with the specified Event
client
|
GooglePlayMonetizationEventBuilder |
withCurrency(java.lang.String currency)
Sets the currency of the item purchased.
|
GooglePlayMonetizationEventBuilder |
withFormattedItemPrice(java.lang.String formattedItemPrice)
Deprecated.
Will be removed. Please set Currency and Item Price. Replaced by
withCurrency(String) and {@link #withItemPrice(Double) |
GooglePlayMonetizationEventBuilder |
withItemPrice(java.lang.Double itemPrice)
Sets the item price of the item purchased.
|
GooglePlayMonetizationEventBuilder |
withProductId(java.lang.String productId)
Sets the product identifier field of the item being purchased.
|
GooglePlayMonetizationEventBuilder |
withQuantity(java.lang.Double quantity)
Sets the quantity of the item purchased.
|
GooglePlayMonetizationEventBuilder |
withTransactionId(java.lang.String transactionId)
The transaction identifier of the purchase.
|
build
public static GooglePlayMonetizationEventBuilder create(AnalyticsClient analyticsClient)
analyticsClient
- The event client to use when creating monetization
eventspublic GooglePlayMonetizationEventBuilder withProductId(java.lang.String productId)
productId
- The product id representing the item being purchased@Deprecated public GooglePlayMonetizationEventBuilder withFormattedItemPrice(java.lang.String formattedItemPrice)
withCurrency(String)
and {@link #withItemPrice(Double)formattedItemPrice
- The localized formatted price of the itempublic GooglePlayMonetizationEventBuilder withQuantity(java.lang.Double quantity)
quantity
- Currently, Google Play only supports purchasing 1 item at
a time.public GooglePlayMonetizationEventBuilder withItemPrice(java.lang.Double itemPrice)
itemPrice
- The numerical price of the itempublic GooglePlayMonetizationEventBuilder withCurrency(java.lang.String currency)
currency
- The currency code of the currency used to purchase this
item (i.e. "USD" or "$")public GooglePlayMonetizationEventBuilder withTransactionId(java.lang.String transactionId)
transactionId
- The orderId found in the INAPP_PURCHASE_DATA of a
purchase requestCopyright © 2018 Amazon Web Services, Inc. All Rights Reserved.