This document explains what you need to do to analyze user behavior using the DFINERY SDK. is required to use this.
Before you start
Before linking an event, register the event in . To register an event, go to the console's Additional Settings > Data Linkage > Event Management > Event List page and click the Create Event button to create standard and custom events.
Note
Events will not be logged if unregistered events or event properties are entered.
If the type of the event attribute entered does not match the event attribute type, the event will not be recorded.
If an event property that is required for an event is missing, the event will not be logged.
A maximum of 100 can be entered per event.
Event Log
logEvent
Log user events using methods. provide constants.
Copy void logEvent(String eventName)
void logEvent(String eventName, JSONObject properties)
Each parameter means:
properties
: Event properties
Event log example
Java Kotlin
Copy // If there is no attribute
Dfinery.getInstance().logEvent(DFEvent.SIGN_UP);
// If there is an attribute
JSONObject properties = new JSONObject();
properties.put(DFEventProperty.SHARING_CHANNEL, "Kakao");
Dfinery.getInstance().logEvent(DFEvent.SIGN_UP, properties);
Copy // If there is no attribute
Dfinery.getInstance().logEvent(DFEvent.SIGN_UP)
// If there is an attribute
val properties = JSONObject()
properties.put(DFEventProperty.SHARING_CHANNEL, "Kakao")
Dfinery.getInstance().logEvent(DFEvent.SIGN_UP, properties)
Standard Events and Properties
Standard events, standard event properties, and product properties are as follows:
Standard Events
Standard event names are provided as predefined static constants:
Constant
Event name
Notation name
DFEvent.VIEW_PRODUCT_DETAILS
DFEvent.VIEW_SEARCH_RESULT
Enter purchase information
Standard event properties
For property names of standard events, event property names are provided as predefined static constants as follows:
Constant
Event attribute name
Notation name
DFEventProperty.TOTAL_REFUND_AMOUNT
Total refund (cancellation) amount
DFEventProperty.DELIVERY_CHARGE
DFEventProperty.PAYMENT_METHOD
DFEventProperty.TOTAL_PURCHASE_AMOUNT
DFEventProperty.SHARING_CHANNEL
DFEventProperty.SIGN_CHANNEL
Product Attributes
Information about standard event properties for products, which are loaded as an array in DFEventProperty.ITEMS. ITEM_ID, ITEM_NAME, ITEM_PRICE, ITEM_QUANTITY, and ITEM_DISCOUNT are required values and must be included.
Constant
Event attribute name
Type
Explanation
Essential
DFEventProperty.ITEM_NAME
DFEventProperty.ITEM_PRICE
DFEventProperty.ITEM_QUANTITY
DFEventProperty.ITEM_DISCOUNT
DFEventProperty.ITEM_CATEGORY1
DFEventProperty.ITEM_CATEGORY2
DFEventProperty.ITEM_CATEGORY3
DFEventProperty.ITEM_CATEGORY4
DFEventProperty.ITEM_CATEGORY5
Example of using standard events
Log in
This event indicates that a user has signed up as a member of the service.
Java Kotlin
Copy Dfinery.getInstance().logEvent(DFEvent.LOGIN);
Copy Dfinery.getInstance().logEvent(DFEvent.LOGIN)
Log out
This event indicates that a user is logging out of the app.
Java Kotlin
Copy Dfinery.getInstance().logEvent(DFEvent.LOGOUT);
Copy Dfinery.getInstance().logEvent(DFEvent.LOGOUT)
Join the membership
This event indicates the action taken by a user to sign up as a member.
Java Kotlin
Copy JSONObject properties = new JSONObject();
try {
properties.put(DFEventProperty.SHARING_CHANNEL, "Kakao");
} catch (JSONException e) {
e.printStackTrace();
}
Dfinery.getInstance().logEvent(DFEvent.SIGN_UP, properties);
Copy val properties = JSONObject()
try {
properties.put(DFEventProperty.SHARING_CHANNEL, "Kakao")
} catch (e: JSONException) {
e.printStackTrace()
}
Dfinery.getInstance().logEvent(DFEvent.SIGN_UP, properties)
Standard event properties
Name
Type
Explanation
Essential
DFEventProperty.SHARING_CHANNEL
Purchase
An event that represents a user's action of purchasing a product or service.
Java Kotlin
Copy JSONObject item = new JSONObject();
try {
item.put(DFEventProperty.ITEM_ID, "Product Number");
item.put(DFEventProperty.ITEM_NAME, "Product Name");
item.put(DFEventProperty.ITEM_CATEGORY1, "Food");
item.put(DFEventProperty.ITEM_CATEGORY2, "Snack");
item.put(DFEventProperty.ITEM_PRICE, 5000.0);
item.put(DFEventProperty.ITEM_DISCOUNT, 500.0);
item.put(DFEventProperty.ITEM_QUANTITY, 5L);
} catch (JSONException e) {
e.printStackTrace();
}
JSONArray items = new JSONArray();
items.put(item);
JSONObject properties = new JSONObject();
try {
properties.put(DFEventProperty.ITEMS, items);
properties.put(DFEventProperty.ORDER_ID, "Product Number");
properties.put(DFEventProperty.PAYMENT_METHOD, "BankTransfer");
properties.put(DFEventProperty.TOTAL_PURCHASE_AMOUNT, 25500.0);
properties.put(DFEventProperty.DELIVERY_CHARGE, 3000.0);
properties.put(DFEventProperty.DISCOUNT, 0);
} catch (JSONException e) {
e.printStackTrace();
}
Dfinery.getInstance().logEvent(DFEvent.PURCHASE, properties);
Copy val item = JSONObject()
try {
item.put(DFEventProperty.ITEM_ID, "Product Number")
item.put(DFEventProperty.ITEM_NAME, "Product Name")
item.put(DFEventProperty.ITEM_CATEGORY1, "Food")
item.put(DFEventProperty.ITEM_CATEGORY2, "Snack")
item.put(DFEventProperty.ITEM_PRICE, 5000.0)
item.put(DFEventProperty.ITEM_DISCOUNT, 500.0)
item.put(DFEventProperty.ITEM_QUANTITY, 5L)
} catch (e: JSONException) {
e.printStackTrace()
}
val items = JSONArray()
items.put(item)
val properties = JSONObject()
try {
properties.put(DFEventProperty.ITEMS, items)
properties.put(DFEventProperty.ORDER_ID, "Product Number")
properties.put(DFEventProperty.PAYMENT_METHOD, "BankTransfer")
properties.put(DFEventProperty.TOTAL_PURCHASE_AMOUNT, 25500.0)
properties.put(DFEventProperty.DELIVERY_CHARGE, 3000.0)
properties.put(DFEventProperty.ITEM_DISCOUNT, 0)
} catch (e: JSONException) {
e.printStackTrace()
}
Dfinery.getInstance().logEvent(DFEvent.PURCHASE, properties)
Standard event properties
Name
Type
Explanation
Essential
DFEventProperty.PAYMENT_METHOD
DFEventProperty.TOTAL_PURCHASE_AMOUNT
DFEventProperty.DELIVERY_CHARGE
View Home Screen
View product detailsThis event indicates that the user is viewing the app's home screen.
Java Kotlin
Copy Dfinery.getInstance().logEvent(DFEvent.VIEW_HOME);
Copy Dfinery.getInstance().logEvent(DFEvent.VIEW_HOME)
View product details
This event represents an action taken by a user to view detailed information about a specific product.
Java Kotlin
Copy JSONObject item = new JSONObject();
try {
item.put(DFEventProperty.ITEM_ID, "Product Number");
item.put(DFEventProperty.ITEM_NAME, "Product Name");
item.put(DFEventProperty.ITEM_CATEGORY1, "Food");
item.put(DFEventProperty.ITEM_CATEGORY2, "Snack");
item.put(DFEventProperty.ITEM_PRICE, 5000.0);
item.put(DFEventProperty.ITEM_DISCOUNT, 500.0);
item.put(DFEventProperty.ITEM_QUANTITY, 5L);
} catch (JSONException e) {
e.printStackTrace();
}
JSONArray items = new JSONArray();
items.put(item);
JSONObject properties = new JSONObject();
try {
properties.put(DFEventProperty.ITEMS, items);
} catch (JSONException e) {
e.printStackTrace();
}
Dfinery.getInstance().logEvent(DFEvent.VIEW_PRODUCT_DETAILS, properties);
Copy val item = JSONObject()
try {
item.put(DFEventProperty.ITEM_ID, "Product Number")
item.put(DFEventProperty.ITEM_NAME, "Product Name")
item.put(DFEventProperty.ITEM_CATEGORY1, "Food")
item.put(DFEventProperty.ITEM_CATEGORY2, "Snack")
item.put(DFEventProperty.ITEM_PRICE, 5000.0)
item.put(DFEventProperty.ITEM_DISCOUNT, 500.0)
item.put(DFEventProperty.ITEM_QUANTITY, 5L)
} catch (e: JSONException) {
e.printStackTrace()
}
val items = JSONArray()
items.put(item)
val properties = JSONObject()
try {
properties.put(DFEventProperty.ITEMS, items)
} catch (e: JSONException) {
e.printStackTrace()
}
Dfinery.getInstance().logEvent(DFEvent.VIEW_PRODUCT_DETAILS, properties)
Standard event properties
Name
Type
Explanation
Essential
This event represents the action of a user adding a product to the shopping cart.
Java Kotlin
Copy JSONObject item = new JSONObject();
try {
item.put(DFEventProperty.ITEM_ID, "Product Number");
item.put(DFEventProperty.ITEM_NAME, "Product Name");
item.put(DFEventProperty.ITEM_CATEGORY1, "Food");
item.put(DFEventProperty.ITEM_CATEGORY2, "Snack");
item.put(DFEventProperty.ITEM_PRICE, 5000.0);
item.put(DFEventProperty.ITEM_DISCOUNT, 500.0);
item.put(DFEventProperty.ITEM_QUANTITY, 5L);
} catch (JSONException e) {
e.printStackTrace();
}
JSONArray items = new JSONArray();
items.put(item);
JSONObject properties = new JSONObject();
try {
properties.put(DFEventProperty.ITEMS, items);
} catch (JSONException e) {
e.printStackTrace();
}
Dfinery.getInstance().logEvent(DFEvent.ADD_TO_CART, properties);
Copy val item = JSONObject()
try {
item.put(DFEventProperty.ITEM_ID, "Product Number")
item.put(DFEventProperty.ITEM_NAME, "Product Name")
item.put(DFEventProperty.ITEM_CATEGORY1, "Food")
item.put(DFEventProperty.ITEM_CATEGORY2, "Snack")
item.put(DFEventProperty.ITEM_PRICE, 5000.0)
item.put(DFEventProperty.ITEM_DISCOUNT, 500.0)
item.put(DFEventProperty.ITEM_QUANTITY, 5L)
} catch (e: JSONException) {
e.printStackTrace()
}
val items = JSONArray()
items.put(item)
val properties = JSONObject()
try {
properties.put(DFEventProperty.ITEMS, items)
} catch (e: JSONException) {
e.printStackTrace()
}
Dfinery.getInstance().logEvent(DFEvent.ADD_TO_CART, properties)
Standard event properties
Name
Type
Explanation
Essential
Add to Wishlist
This event indicates that a user has added a product to their interest list.
Java Kotlin
Copy JSONObject item = new JSONObject();
try {
item.put(DFEventProperty.ITEM_ID, "Product Number");
item.put(DFEventProperty.ITEM_NAME, "Product Name");
item.put(DFEventProperty.ITEM_CATEGORY1, "Food");
item.put(DFEventProperty.ITEM_CATEGORY2, "Snack");
item.put(DFEventProperty.ITEM_PRICE, 5000.0);
item.put(DFEventProperty.ITEM_DISCOUNT, 500.0);
item.put(DFEventProperty.ITEM_QUANTITY, 5L);
} catch (JSONException e) {
e.printStackTrace();
}
JSONArray items = new JSONArray();
items.put(item);
JSONObject properties = new JSONObject();
try {
properties.put(DFEventProperty.ITEMS, items);
} catch (JSONException e) {
e.printStackTrace();
}
Dfinery.getInstance().logEvent(DFEvent.ADD_TO_WISHLIST, properties);
Copy val item = JSONObject()
try {
item.put(DFEventProperty.ITEM_ID, "Product Number")
item.put(DFEventProperty.ITEM_NAME, "Product Name")
item.put(DFEventProperty.ITEM_CATEGORY1, "Food")
item.put(DFEventProperty.ITEM_CATEGORY2, "Snack")
item.put(DFEventProperty.ITEM_PRICE, 5000.0)
item.put(DFEventProperty.ITEM_DISCOUNT, 500.0)
item.put(DFEventProperty.ITEM_QUANTITY, 5L)
} catch (e: JSONException) {
e.printStackTrace()
}
val items = JSONArray()
items.put(item)
val properties = JSONObject()
try {
properties.put(DFEventProperty.ITEMS, items)
} catch (e: JSONException) {
e.printStackTrace()
}
Dfinery.getInstance().logEvent(DFEvent.ADD_TO_WISHLIST, properties)
Standard event properties
Name
Type
Explanation
Essential
Search for products
This event represents the action of a user searching for a product and checking the results.
Java Kotlin
Copy JSONObject item = new JSONObject();
try {
item.put(DFEventProperty.ITEM_ID, "Product Number");
item.put(DFEventProperty.ITEM_NAME, "Product Name");
item.put(DFEventProperty.ITEM_CATEGORY1, "Food");
item.put(DFEventProperty.ITEM_CATEGORY2, "Snack");
item.put(DFEventProperty.ITEM_PRICE, 5000.0);
item.put(DFEventProperty.ITEM_DISCOUNT, 500.0);
item.put(DFEventProperty.ITEM_QUANTITY, 5L);
} catch (JSONException e) {
e.printStackTrace();
}
JSONArray items = new JSONArray();
items.put(item);
JSONObject properties = new JSONObject();
try {
properties.put(DFEventProperty.ITEMS, items);
properties.put(DFEventProperty.TOTAL_REFUND_AMOUNT, 22500.0);
} catch (JSONException e) {
e.printStackTrace();
}
Dfinery.getInstance().logEvent(DFEvent.REFUND, properties);
Copy val item = JSONObject()
try {
item.put(DFEventProperty.ITEM_ID, "Product Number")
item.put(DFEventProperty.ITEM_NAME, "Product Name")
item.put(DFEventProperty.ITEM_CATEGORY1, "Food")
item.put(DFEventProperty.ITEM_CATEGORY2, "Snack")
item.put(DFEventProperty.ITEM_PRICE, 5000.0)
item.put(DFEventProperty.ITEM_DISCOUNT, 500.0)
item.put(DFEventProperty.ITEM_QUANTITY, 5L)
} catch (e: JSONException) {
e.printStackTrace()
}
val items = JSONArray()
items.put(item)
val properties = JSONObject()
try {
properties.put(DFEventProperty.ITEMS, items)
properties.put(DFEventProperty.TOTAL_REFUND_AMOUNT, 22500.0)
} catch (e: JSONException) {
e.printStackTrace()
}
Dfinery.getInstance().logEvent(DFEvent.REFUND, properties)
Standard event properties
Name
Type
Explanation
Essential
DFEventProperty.TOTAL_REFUND_AMOUNT
Search for productsTotal refund (cancellation) amount
Share this product
This event represents a user's action of sharing a product.
Java Kotlin
Copy JSONObject item = new JSONObject();
try {
item.put(DFEventProperty.ITEM_ID, "Product Number");
item.put(DFEventProperty.ITEM_NAME, "Product Name");
item.put(DFEventProperty.ITEM_CATEGORY1, "Food");
item.put(DFEventProperty.ITEM_CATEGORY2, "Snack");
item.put(DFEventProperty.ITEM_PRICE, 5000.0);
item.put(DFEventProperty.ITEM_DISCOUNT, 500.0);
item.put(DFEventProperty.ITEM_QUANTITY, 5L);
} catch (JSONException e) {
e.printStackTrace();
}
JSONArray items = new JSONArray();
items.put(item);
JSONObject properties = new JSONObject();
try {
properties.put(DFEventProperty.ITEMS, items);
properties.put(DFEventProperty.KEYWORD, "Pork belly");
} catch (JSONException e) {
e.printStackTrace();
}
Dfinery.getInstance().logEvent(DFEvent.VIEW_SEARCH_RESULT, properties);
Copy val item = JSONObject()
try {
item.put(DFEventProperty.ITEM_ID, "Product Number")
item.put(DFEventProperty.ITEM_NAME, "Product Name")
item.put(DFEventProperty.ITEM_CATEGORY1, "Food")
item.put(DFEventProperty.ITEM_CATEGORY2, "Snack")
item.put(DFEventProperty.ITEM_PRICE, 5000.0)
item.put(DFEventProperty.ITEM_DISCOUNT, 500.0)
item.put(DFEventProperty.ITEM_QUANTITY, 5L)
} catch (e: JSONException) {
e.pThis event represents a user's action of sharing a product.
Java Kotlin
Copy JSONObject item = new JSONObject();
try {
item.put(DFEventProperty.ITEM_ID, "Product Number");
item.put(DFEventProperty.ITEM_NAME, "Product Name");
item.put(DFEventProperty.ITEM_CATEGORY1, "Food");
item.put(DFEventProperty.ITEM_CATEGORY2, "Snack");
item.put(DFEventProperty.ITEM_PRICE, 5000.0);
item.put(DFEventProperty.ITEM_DISCOUNT, 500.0);
item.put(DFEventProperty.ITEM_QUANTITY, 5L);
} catch (JSONException e) {
e.printStackTrace();
}
JSONArray items = new JSONArray();
items.put(item);
JSONObject properties = new JSONObject();
try {
properties.put(DFEventProperty.ITEMS, items);
properties.put(DFEventProperty.SHARING_CHANNEL, "Facebook");
} catch (JSONException e) {
e.printStackTrace();
}
Dfinery.getInstance().logEvent(DFEvent.SHARE_PRODUCT, properties);
Copy val item = JSONObject()
try {
item.put(DFEventProperty.ITEM_ID, "Product Number")
item.put(DFEventProperty.ITEM_NAME, "Product Name")
item.put(DFEventProperty.ITEM_CATEGORY1, "Food")
item.put(DFEventProperty.ITEM_CATEGORY2, "Snack")
item.put(DFEventProperty.ITEM_PRICE, 5000.0)
item.put(DFEventProperty.ITEM_DISCOUNT, 500.0)
item.put(DFEventProperty.ITEM_QUANTITY, 5L)
} catch (e: JSONException) {
e.printStackTrace()
}
val items = JSONArray()
items.put(item)
val properties = JSONObject()
try {
properties.put(DFEventProperty.ITEMS, items)
properties.put(DFEventProperty.SHARING_CHANNEL, "Facebook")
} catch (e: JSONException) {
e.printStackTrace()
}
Dfinery.getInstance().logEvent(DFEvent.SHARE_PRODUCT, properties)
Standard event properties
Name
Type
Explanation
Essential
DFEventProperty.SHARING_CHANNEL
View product list
This event indicates the user's action of viewing a product list.
Java Kotlin
Copy JSONObject item = new JSONObject();
try {
item.put(DFEventProperty.ITEM_ID, "Product Number");
item.put(DFEventProperty.ITEM_NAME, "Product Name");
item.put(DFEventProperty.ITEM_CATEGORY1, "Food");
item.put(DFEventProperty.ITEM_CATEGORY2, "Snack");
item.put(DFEventProperty.ITEM_PRICE, 5000.0);
item.put(DFEventProperty.ITEM_DISCOUNT, 500.0);
item.put(DFEventProperty.ITEM_QUANTITY, 5L);
} catch (JSONException e) {
e.printStackTrace();
}
JSONArray items = new JSONArray();
items.put(item);
JSONObject properties = new JSONObject();
try {
properties.put(DFEventProperty.ITEMS, items);
} catch (JSONException e) {
e.printStackTrace();
}
Dfinery.getInstance().logEvent(DFEvent.VIEW_LIST, properties);
Copy val item = JSONObject()
try {
item.put(DFEventProperty.ITEM_ID, "Product Number")
item.put(DFEventProperty.ITEM_NAME, "Product Name")
item.put(DFEventProperty.ITEM_CATEGORY1, "Food")
item.put(DFEventProperty.ITEM_CATEGORY2, "Snack")
item.put(DFEventProperty.ITEM_PRICE, 5000.0)
item.put(DFEventProperty.ITEM_DISCOUNT, 500.0)
item.put(DFEventProperty.ITEM_QUANTITY, 5L)
} catch (e: JSONException) {
e.printStackTrace()
}
val items = JSONArray()
items.put(item)
val properties = JSONObject()
try {
properties.put(DFEventProperty.ITEMS, items)
} catch (e: JSONException) {
e.printStackTrace()
}
Dfinery.getInstance().logEvent(DFEvent.VIEW_LIST, properties)
Standard event properties
Name
Type
Explanation
Essential
View Cart
This event indicates the user's action of viewing the shopping cart.
Java Kotlin
Copy JSONObject item = new JSONObject();
try {
item.put(DFEventProperty.ITEM_ID, "Product Number");
item.put(DFEventProperty.ITEM_NAME, "Product Name");
item.put(DFEventProperty.ITEM_CATEGORY1, "Food");
item.put(DFEventProperty.ITEM_CATEGORY2, "Snack");
item.put(DFEventProperty.ITEM_PRICE, 5000.0);
item.put(DFEventProperty.ITEM_DISCOUNT, 500.0);
item.put(DFEventProperty.ITEM_QUANTITY, 5L);
} catch (JSONException e) {
e.printStackTrace();
}
JSONArray items = new JSONArray();
items.put(item);
JSONObject properties = new JSONObject();
try {
properties.put(DFEventProperty.ITEMS, items);
} catch (JSONException e) {
e.printStackTrace();
}
Dfinery.getInstance().logEvent(DFEvent.VIEW_CART, properties);
Copy val item = JSONObject()
try {
item.put(DFEventProperty.ITEM_ID, "Product Number")
item.put(DFEventProperty.ITEM_NAME, "Product Name")
item.put(DFEventProperty.ITEM_CATEGORY1, "Food")
item.put(DFEventProperty.ITEM_CATEGORY2, "Snack")
item.put(DFEventProperty.ITEM_PRICE, 5000.0)
item.put(DFEventProperty.ITEM_DISCOUNT, 500.0)
item.put(DFEventProperty.ITEM_QUANTITY, 5L)
} catch (e: JSONException) {
e.printStackTrace()
}
val items = JSONArray()
items.put(item)
val properties = JSONObject()
try {
properties.put(DFEventProperty.ITEMS, items)
} catch (e: JSONException) {
e.printStackTrace()
}
Dfinery.getInstance().logEvent(DFEvent.VIEW_CART, properties)
Standard event properties
Name
Type
Explanation
Explanation
This event represents the action of a user entering purchase information.
Java Kotlin
Copy Dfinery.getInstance().logEvent(DFEvent.ADD_PAYMENT_INFO);
Copy Dfinery.getInstance().logEvent(DFEvent.ADD_PAYMENT_INFO)
Delete Cart
This event indicates that a user removes a product from their shopping cart.
Java Kotlin
Copy JSONObject item = new JSONObject();
try {
item.put(DFEventProperty.ITEM_ID, "Product Number");
item.put(DFEventProperty.ITEM_NAME, "Product Name");
item.put(DFEventProperty.ITEM_CATEGORY1, "Food");
item.put(DFEventProperty.ITEM_CATEGORY2, "Snack");
item.put(DFEventProperty.ITEM_PRICE, 5000.0);
item.put(DFEventProperty.ITEM_DISCOUNT, 500.0);
item.put(DFEventProperty.ITEM_QUANTITY, 5L);
} catch (JSONException e) {
e.printStackTrace();
}
JSONArray items = new JSONArray();
items.put(item);
JSONObject properties = new JSONObject();
try {
properties.put(DFEventProperty.ITEMS, items);
} catch (JSONException e) {
e.printStackTrace();
}
Dfinery.getInstance().logEvent(DFEvent.REMOVE_CART, properties);
Copy val item = JSONObject()
try {
item.put(DFEventProperty.ITEM_ID, "Product Number")
item.put(DFEventProperty.ITEM_NAME, "Product Name")
item.put(DFEventProperty.ITEM_CATEGORY1, "Food")
item.put(DFEventProperty.ITEM_CATEGORY2, "Snack")
item.put(DFEventProperty.ITEM_PRICE, 5000.0)
item.put(DFEventProperty.ITEM_DISCOUNT, 500.0)
item.put(DFEventProperty.ITEM_QUANTITY, 5L)
} catch (e: JSONException) {
e.printStackTrace()
}
val items = JSONArray()
items.put(item)
val properties = JSONObject()
try {
properties.put(DFEventProperty.ITEMS, items)
} catch (e: JSONException) {
e.printStackTrace()
}
Dfinery.getInstance().logEvent(DFEvent.REMOVE_CART, properties)
Standard event properties
Name
Type
Explanation
Essential
Custom Events
This is an event that reflects the user's input of an arbitrary event name and properties. You can also use standard events by adding custom properties in the DFINERY Console.
If there is no attribute
Java Kotlin
Copy Dfinery.getInstance().logEvent("CUSTOM_EVENT_NAME", null);
Copy Dfinery.getInstance().logEvent("CUSTOM_EVENT_NAME", null)
If there is an attribute
Java Kotlin
Copy JSONObject properties = new JSONObject();
properties.put("CUSTOM_PROPERTY_KEY", "CUSTOM_PROPERTY_VALUE");//Custom property values(Optional)
Dfinery.getInstance().logEvent("CUSTOM_EVENT_NAME", properties);
Copy val properties = JSONObject()
properties.put("CUSTOM_PROPERTY_KEY", "CUSTOM_PROPERTY_VALUE")//Custom property values(Optional)
Dfinery.getInstance().logEvent("CUSTOM_EVENT_NAME", properties)
Date and time formats yyyy-MM-dd'T'HH:mm:ss.SSS'Z'
must be entered as strings in the format.
Java Kotlin
Copy JSONObject properties = new JSONObject();
SimpleDateFormat simpleDateFormat = new SimpleDateFormat(DFEventProperty.FORMAT_DATETIME, Locale.US);
Date currentDate = new Date();
try {
properties.put("CUSTOM_PROPERTY_KEY", simpleDateFormat.format(currentDate));
} catch (JSONException e) {
throw new RuntimeException(e);
}
Dfinery.getInstance().logEvent(DFEvent.SIGN_UP, properties);
Copy val properties = JSONObject()
val simpleDateFormat = SimpleDateFormat(DFEventProperty.FORMAT_DATETIME, Locale.US)
val currentDate = Date()
try {
properties.put("CUSTOM_PROPERTY_KEY", simpleDateFormat.format(currentDate))
} catch (e: JSONException) {
throw RuntimeException(e)
}
Dfinery.getInstance().logEvent(DFEvent.SIGN_UP, properties)
Data collected automatically
DFINERY automatically collects the following information:
Session Analysis
App Set ID
DFINERY automatically collects the following terminal information:
This value may not be collected depending on the app's environment and granted permissions.
Operating system of the terminal
The carrier currently connected to the terminal
The language set on the terminal
The terminal's set region
Set Time Zone Offset of the terminal
Whether the terminal has a phone function
The type of network the terminal is currently connected to.
Device manufacturer of the terminal
DFINERY automatically collects the following application information:
App version of the application
The package name of the application