H5 and Mini Program are two end products, and the generated device identifiers are different, so anonymous access to ssid is different. If you want to unify the user identity, you can achieve the behavior after logging in, that is, both ends report the same real-name uuid. It is impossible to get through both ends anonymously.
(1) Because the page access event has no duration attribute, it is necessary to use the page active and page closed events to see the duration of stay; enable_stay_duration this switch is for the two events of page active and page closed to collect the duration.
(2) Page exit: Record the timestamp of each action of the user [entering the page, switching to the inactive state, returning to the active state, leaving the page], report the predefine_page_close event tracking when leaving the page, and add the duration of each active state as the user's single use time.
Please check the relevant settings. The specific instructions are: After setting auto_report: true in init initialization, predefined events such as app_launch, app_terminate, predefine_pageview, on_share (forwarding and sharing) will be automatically reported.
The differences are as follows:
Duration: is the active duration, which is simply the time the user actually uses it.
total_duration: is the total time the page is open to close, including the length of inactivity (the user switched the page is not in actual use). For example, minimization, background, etc., switching the page will be understood as "leaving the page" and a close event will be reported at this time.
Background: Disable IMEI and MAC after Android 10.
The Mobile Security Alliance has launched a set of ad tracking identifiers for domestic mobile phone manufacturers, called OAID. OAID can be accessed across apps, but users can reset it at any time in the system settings. OAID has certain authority and can meet the usage scenarios of user behavior statistics.
The Android SDK will intercept the LoadUrl method to identify the H5 address when connecting with H5. If there is a LoadUrl method in the user's Activity, it may be intercepted by the SDK, resulting in WebView failing to load content.
In the event of a network abnormality or a service failure.
The mobile attribute value is the mobile network connection, and the value logic is: when the sdk cannot recognize that it is 3G, 4G, and 5G, it returns mobile (mobile network connection, a collective term for 3G, 4G, and 5G).
In the SDK initialization code, after setting log: true, the debug log will be printed. If it does not need to be enabled, it can be set to false.
predefine_pageview: the page is opened and sent when the sdk initialization is completed;
predefine_page_alive: Open the stay time, send it every 1 minute, switch the page to send it once, and close the page to send it once;
predefine_page_close: Open the stay time, record the timestamp of each time the user [enters the page, switches the state, leaves the page], and then report the predefine_page_close event when leaving or closing the page;
predefine_pageview_hide: This is a Mini Program specific event that will be reported when each page leaves pv_hide.
platform platform type, not required field, you can customize the value to upload;
However, random transmission may affect the analysis of the application profile function; the end point platform field value in the application profile is mp is Mini Program, web, wap is web, ios, android is mobile end; other data can only be viewed in all.
Recommendation: Try to assign values according to the correct platform type.
app_platform: End of application
For example, the customer's application has an app side, a web side, and a Mini Program side.
Platform: Platform
This field is a field that distinguishes between different ends. The field values are ios, android, mp (Mini Program), web, wap (H5).
Overall, the platform is more detailed.
The specific instructions are as follows:
Field: mp_platform
Field values: 0, 1, 2
Type: string
Use: Use in custom in the header, as follows:
"header": {
"app_name": "android",
"device_model": "vivo X20A",
"client_ip": "223.91.16.13",
"custom": "{"is_vip":"2","mp_platform":"0"}"
},
0 WeChat Mini Program
1 Alipay Mini Program
2 Headlines Mini Program
3 Quick applications
4 Mini games
5 Baidu Mini Program
6 QQ Mini Program
7 uniApp Mini Program
Android_id not available on Android 10 or above.
Preset properties cannot be deleted, which will affect the calculation of some basic metrics.
Event tracking cannot be added, it can only be added on the data management page.
Android 6.9.0 and above.
bav2b_page event: The reporting time is divided into independent page and SPA (single page application), and the independent page is reported once after the page is opened and the SDK initialization is completed. If it is a SPA page, it will be reported once after the SDK initialization is completed, and once when clicking to switch the page. The main data collected are some parameters of page browsing, which are used to analyze page browsing behavior.
bav2b_page_statistics event: the reporting opportunity is after the page is opened, the SDK initialization is completed and reported once (both the independent page and the SPA are reported only once), the data collected is mainly the page loading time, page width and height statistics, used to analyze page loading statistics and other information.
A. When no custom web_id is used, the SDK will go to the data stream interface to obtain web_id, cache it to storage, and reuse it later;
B. If the custom web_id is turned on, the customer needs to manually set the web_id (need the value of the number type), or by using the setWebIDviaUnionID method to set the unionid to generate web_id, or by using the setWebIDviaOpenID method to set the openid to generate web_id, in this case, it is controlled by the business itself;
Another: The generation rules of webID are the same as those of H5. The specific rules are as follows:
When sdk is initialized, that is, when the init method is called, a webid request is made to the server. The request parameters are: app_id, the current URL, the referer of the URL, the useragent of the current browser, and user_unique_id (usually null). The request will generate a unique webid return at the server level, and will return ssid. (Description: The url and referer values on the Mini Program side are all null values).
AndroidSDK 6.4.0 version only adapted to the 1.0.26 version, it is recommended that customers upgrade the Android SDK version.
No, what is obtained through the did interface exposed by the sdk is bd_did, bd_did is encrypted did. If you want to decrypt the bd_did, you can use the bddid robot internally to obtain it, and the decryption is not provided externally. bd_did is encrypted using group id + did via AES.
For Mini Program, our SDK does not actively monitor the network, open enable_storage parameters will save the event first, if the report is unsuccessful, there is a chance to supplement the report after the next SDK initialization.
Note: The storage in the Mini Program has a size limit, and the event will be thrown when the limit is exceeded.
(1) If this parameter is false, the data that causes the upload to fail will be lost regardless of the circumstances
(2) If this parameter is true, all events will be stored in the storage, and then reported. If the report is successful, the uploaded data will be deleted. If it is unsuccessful, it will always be stored in the storage. When the SDK re-initializes the process, it will see if there is any in the storage, and if there is any, it will be reported.
Scenario example:
When the Mini Program is currently running, there is no network at this time, and then suddenly there is a network, then the follow-up behavior is reported normally, and those that have existed in Storage before will not be transmitted now. The Mini Program must be re-initialized before the step of going to the storage to see if there is any.
There is a high probability that the reason is that the heat map does not support viewing the heat map of non-HTTPS sites in the finder due to browser security policy factors. It is recommended to use https or view it on the original page.
It is recommended to check the web SDK version first. The JS SDK version of the web integration needs to be 5.1.2 and above
Web/JavaScript SDK supports real-time event tracking verification from V5.1.2.
The data detected by real-time event tracking is read and displayed in real time according to the reported data, and the displayed logic will not be exactly the same as the actual database; the actual database is accurate data.
Real-time event tracking detection, what you see is used as a reference, which is a bit similar to the function of grabbing bags; the database will compensate for a lot of information, and the database shall prevail.
A. Verify at the data sending end, refer to the document Finder product event tracking verification manual;
B. Verify in the Finder product; you can find the user behavior through user scrutiny for comparison, and you can also detect the behavior data reported by real-time observation in real-time event tracking;
C. You can see the error report of the reported event in the data quality module.
This field is left in the predefined position of the Mini Program SDK, but the Mini Program SDK itself does not set this field value, but the business can set it;
iOS and Android can set channels at initialization, such as "XiaoMi, HuaWei, Baidu" and other channels. iOS if not set, generally default "App Store" channel.
app_name fields are the app name and App Name set when creating the app;
The application name can be modified in the application list, but modification is not supported after app_name setting.
iOS, Android SDK: 6.10.1 version starts to support
Web SDK: 5.1.1 version is supported
(1) The privatized version
WeChat Mini Program: You need to report the address of the private deployment to the whitelist of the WeChat Mini Program's domain name.
Alipay Mini Program: You need to report the data of the private deployment to the address and add it to the whitelist of the Alipay Mini Program's domain name.
When initialized not in the application, but in the activity, since the initialization is displayed after the activity, the event will not be started, and a third parameter needs to be added to the initialization init () method to the current Activity object.
Uuid (user_unique_id) can not be set when the user is not logged in. After the user logs in, it can be set as the ID of the user's login status on the business. Our statistical caliber will identify the user before and after login as the same user.
Attention: Please do not set the UUID to a fixed value, as this will identify a large number of users as the same user, causing statistical differences.
"User ID" document please see: https://www.volcengine.com/docs/6285/65987
is_first_time build premise: need to report $is_first_time in params (note to add dollar sign);
App-side launch, predefine_pageview, Mini Program-side app_launch These three events do not require customers to customize and report $is_first_time to build
Reporting side logic:
Follow (ssid, event, is_first_time) to record whether an event is generated for the first time locally, if the event has occurred, $is_first_time is directly set to "false", otherwise set to "true" (note that string is not a boolean value)
Receiving side logic:
(1) If the received event $is_first_time "false", no processing is done;
(2) If the received event $is_first_time is "true", the client side time (local_time_ms) reported by the [user of the event] [first time] will be recorded, set only once, the recorded timestamp will be compared with the client side time reported by the subsequent [user of the event], if equal, keep $is_first_time = "true", otherwise correct to "false"
When the user installs, uninstalls and reinstalls, and installs updates for the first time, the app activation will be triggered and returned in real time.
The dwell time is the time spent on the current page, and the session time for opening the app this time is from opening the app to closing the app.
The data brought by the crawler has no analytical value and affects the real data. It is recommended that you refer to the "Crawler Data Filtering" document, turn on the anti-crawl configuration, and clean up the dirty data.
For the "Crawler Data Filtering" document, please see: https://www.volcengine.com/docs/6285/69052
Cause: If there is a time difference, confirm whether the value of the timezone field reported on the server level is 0;
Take fast 8 hours as an example, the solution: the timezone field of the server level is changed to 8.0
Attention: The timezone must be placed under the header.
Mobile: Mobile network connection
Value logic: It is the bottom of the mobile network connection. For example, if we cannot identify that it is 3G, 4G, or 5G, return to mobile (mobile network connection).
Whether using server level or client side sdk, upload user, user properties, events, event properties
(1) You can see the corresponding event and attribute data in the data management in about 10 minutes, because this piece of data is metadata.
(2) In about 15 minutes, you can see the uploaded user details in the user's careful inspection
(3) For user attributes and event attributes, the old attributes will directly display the uploaded attribute values, and the new attributes will be built first, but they will be built after the metadata falls into the library (that is, 10 minutes later). (When the new attribute is not built successfully, the uploaded new attribute value data will be lost). After the construction is completed, the new attribute values will fall into the library. The attribute values can be found in about 2 hours.
app_Launch: When the user launches the app or enters the foreground, a Launch event will be generated inside the AppLog;
app_terminate: iOS is when the user cuts the background (including the lock screen), immediately counted as the end of the session, will generate a Terminate event; while Android is when the user stays in the background for 30s (including the lock screen), and then the next time you open the monitor to more than 30s will generate terminate.
Events can be roughly divided into three categories:
(1) Preset events (actively reported) are used to preset the analysis model
Like app_launch, app_terminate
(2) Full event tracking event (controlled by the full event tracking switch, turn on the switch to actively upload, do not turn on the switch to upload)
For example bav2b_page full event tracking page access, bav2b_click full event tracking element click
(3) custom event (design event tracking scheme according to business needs and then develop code event tracking)
SDK does not collect the IP field, the value is parsed by the server level through the network request and then added.
Imei is not warehoused and cannot be exported.
For historical data, it is defined as data from 7 days ago. If the client side time of the data exceeds seven days, it cannot be imported under normal circumstances. If you need to import historical data, you need to add the identity __is_history of the historical data in the custom field of the header, and the attribute value is set to string "true".
The details are as follows:
(1) This property of historical data is displayed as null
(2) Uploading new data of string type will be displayed normally
(3) Uploading new data of non-string type will be corrected string, that is, four operations cannot be performed
Allows modification, but the historical data can no longer be queried, and then changed back to the original type, it is still available. For example, string- > int- > string.
You can set it in Finder Products, App Settings - > General Events.
The use of date comparison function needs to meet: 1. It must be a line chart 2. It cannot be in the abnormal detection state 3. It cannot be set to remove weekends.
Yes, real-time data is refreshed every 10 minutes, with no limit on the number of items.
According to the user first reported data on the day is the first day, the query time and the first day is the same day, the day is a new user, query filter conditions can use $is_first_day = true.
Whether the first day of access is an event attribute depends on the event and will not change. Whether the new user is related to the query time range can be checked by detailed verification. Whether the first day of access is different from whether the new user is used.
Generate method: The generated method is the hash value calculated by combining user_id and app_id with cityhash, hash_uid = cityhash ("< app_id >:")
Field function: hash_uid is a user id field, which is used for transaction table and user table join. Since hash_uid is a numerical type, it can effectively improve performance when using hash_uid association.
When only the Mini Program is connected and no events from other terminals are reported, the heat map now does not support the use of the Mini Program application.
The total count is the number of people who happened the event, and the total is deduplicated according to the ssid dimension.
Whether it is real-time data or offline data, when you click Download, you will restart the query, and the cache that has been checked before will not be used.
The calculation logic of LTV is as follows:
LTV per capita on a given day LTVn = the amount spent by the daily news user in the following n days/the number of daily news users
The numerator is: the sum of the payment amounts that triggered "payment" within n days for new users who triggered "application launch" on that day
The denominator is: new users who triggered "app launch" on that day
Virtual events are only logically constructed when participating in analysis and are not saved as entities, so querying in custom SQL is not supported
There are two main types of historical data changes:
(1) Differences between real-time and offline data: The data of the day is a real-time caliber, and T + 1 will become an offline caliber (completed before T + 1 18:00). Due to the differences in real-time and offline logic, there will be a certain amount of data change, generally no more than 5%.
(2) Cache data replenishment: Due to network problems or closing the app immediately after access, there will be a small amount of data that cannot be reported when the event occurs. This part of the data will be reported when the app is opened next time, and the network situation is normal. Because the time is the actual time of the event, not the time of the replenishment, the phenomenon is that the historical data will increase. As long as the event occurs within 7 days, a supplementary report will be made, and those that exceed 7 days will be discarded; the magnitude of this part of the data will vary depending on the situation of the operating area network and the business characteristics of the app itself; in most cases, the proportion is actually very small, but some applications will account for a larger proportion.
The histogram display data is to view the distribution of elements by the number of clicks, click on the corresponding bar diagram of the element, and the corresponding element will be highlighted in the heat map below. Empty is because if the target of the click is a non-text content like the picture, and then there is no circling event, empty will be displayed. For customers, you can add the circling event to the key elements, but there is no guarantee that there is no empty in this histogram.
This "-" means empty string, and empty string is also considered to have a value.
Event analysis - any event - select the promotion properties - click the filter box - toggle the network of the developer tool to find the preview-data-values of the properties interface. It can also be obtained through metadata OpenAPI, see: API Description and Public Parameters.
After configuring the query analysis parameters in the advanced analysis page of DataFinder, click Query to view the query results on the current page. After copying the URL of the current query results page, the query results can be temporarily retained. The temporary storage time of this URL is about 1 month. After more than 1 month, it will expire. Clicking the page URL again will prompt that the analysis results do not exist. It is recommended to save query results that require long-term retention as Kanban boards.
You can use the push API of the advertising monitoring module to pull the activation event, which contains these three fields.
Ad click data is accounted for once.
activation_channel this public attribute is null because: old users, no activation event is triggered, and ad monitoring will not be reported.
Channel: Corresponding field channnel, generally refers to the channel of the app, that is, the channel field when SDK is integrated, such as Huawei, oppo, appstore, etc.;
The activation channel is the same as the channel: the channel in the package is the channel written when the app is packaged;
The first advertising promotion channel and advertising promotion channel are promotion channels. The first advertising promotion channel refers to which channel the user was first brought to, and the advertising promotion channel refers to which channel the user is now brought to.
(1) There is no strong dependency between the package name and appid filled in when creating the application. At present, only the advertising module will use the package name, and other functions are not involved.
(2) If the customer has multiple applications, it is recommended that each application app needs to create an application ID. The disadvantage is that the data between applications is isolated, and multiple apps cannot be connected.
(3) Package names and appids are one-to-one, and a package name cannot have multiple appids.
Possible reasons: This application has been launched in large quantities, appid is applied in appcloud, and appcloud requires appid package name to be globally unique;
Solution:
(1) Confirm whether you have created other applications with this package name before? If not, you can synchronize with our customer service classmates or customer success manager to further investigate the cause.
(2) If the previously created application has been enabled and you want to create an application with the same package name again, if the historically created application is enabled to be deleted, you can provide the application ID that was accessed at that time, and we will assist in deleting the original application. After deletion, you can start the new creation process again.
After entering the finder product, click the file icon icon in the lower right corner, select "Allow DataRangers' operation and maintenance personnel to enter your group", and set the group opening time.
Based on the perspective of security compliance; there are loopholes in the way the group administrator reset the password before, if the user creates a new group and invites other accounts to enter the group, you can directly reset the password of other accounts and log in. Therefore, from a security perspective, the authority to reset passwords is currently reserved for the super administrator (the system initialization user).
Yes, it is recommended to integrate the same piece of business-related applications under the same Appid.
No, only the user can modify the username under the main account-account information.
When querying and analyzing, display the date, select the corresponding time zone, and the date seen by the query and analysis is the time in the corresponding time zone.
You need to configure the sending mailbox at the finder server level to send emails, otherwise there will be an error prompt.
It is generated every morning around 9 am.
(1) OpenAPI is used 600 times a minute
(2) File cutting: app_launch is the application startup event, a csv, origin_event is the event other than app_launch, 1 CSV, but more than 90M will be cut