SDK testing on the Airbridge dashboard
The Airbridge dashboard offers a testing console to test whether the Airbridge SDK is working properly. Install the Airbridge SDK first before proceeding with the test.
After completing the Airbridge iOS SDK setup, you can test whether it works properly using real-time logs, test sites, etc. Prepare the following information before testing the iOS SDK.
Airbridge uses IDFA (Identifier For Advertisers) provided by Apple as an identifier in the attribution process. To test whether the Airbridge SDK operates properly, you must find the IDFA of your test device.
Airbridge offers the "My Device ID by Airbridge" app, which allows you to quickly find a device's IDFA. Scan the QR code below with the test device and download the app.
Check whether the Airbridge iOS SDK is operating properly.
Follow the steps below to check whether the Install events are being collected by the iOS SDK.
1. Prepare a test device where the app is not installed, or if the app is already installed, delete it before testing.
2. Set the SDK log level to debug
.
3. Install the app on the test device. After installing the app, launch it so that the Install event is collected.
The first Open event collected by Airbridge is recorded as an Install event. Therefore, the Open may not be recorded when the app install event is collected.
4. Navigate to [Raw Data]>[App Real-Time Log] in the Airbridge dashboard and find the events with the test device's IDFA in the real-time logs. If the Install event can be found in the real-time log, you can confirm that the SDK is working as intended. It may take up to 10 minutes to check the Install event in the [App Real-time Log].
5. If the Install event is not confirmed in the [App Real-time Log] even after a sufficient amount of time, check whether the Install event is in the SDK log. When the Install event is in the SDK log, delete the app from the test device and reinstall it.
If the Install event is still not confirmed, contact your Airbridge CSM and share your SDK logs. If you don't have a designated Airbridge CSM, contact the Airbridge Help Center.
Airbridge initiates the attribution process when a Target Event occurs. The Install event is a typical Target Event. By checking the attribution result of the Install event, you can confirm whether the process from event collection to attribution is operated successfully.
Attention
The app you're testing must provide the ATT prompt asking the user's content for data tracking. In general, if it is not possible to know the user's consent status or the user does not allow data tracking, the app install attribution result cannot be determined.
1. 1. Prepare a test device where the app is not installed, or if the app is already installed, delete it before testing. Set the Tracking Authorise Timeout (TAT) to a sufficient length.
2. Set the SDK log level to Debug
.
3. Access the Attribution Integration Test site on your test device.
4. Enter the App Name and IDFA, then click Submit. The App Name can be found on the [Settings]>[Tokens] page in the Airbridge dashboard.
5. Click Test Install Attribution to move to the Apple App Store to install the app. If the Airbridge iOS SDK is not installed on the app that is available for download in the App Store, you need to install the app with the Airbridge iOS SDK through the IDE.
6. Install the app on the test device. You must launch the app after install to collect the Install event. When the ATT prompt comes up, click Allow to allow data tracking.
The first Open event is recorded as an Install event in Airbridge. Therefore, the Open event may not be recorded if the Install event is collected.
7. Check the SDK logs. If the Install event is sent to the Airbridge server as intended, the addABInstallEvent to the queue
log will be confirmed.
8. Navigate to [Raw Data]>[App Real-Time Log] in the Airbridge dashboard and find the events with the test device's IDFA in the real-time logs. If the Install event can be found in the real-time log, you can confirm that the SDK is working as intended. It may take up to 10 minutes to check the Install event in the [App Real-time Log].
9. Make sure that the information in the app install event is as shown below. If it looks like the information below, the attribution process went well.
Event Category: Install
ifa
: IDFA entered in the attribution test site
attributionResult.channel
: test_sdk
attributionResult.attributedTouchpointOriginURL
: https://abr.ge/@sfYOUR_APP_NAME}/test_sdk?campaign=test_sdk_campaignadevice_uuid=${YOUR_IDFA}
10. If the Install event is not confirmed in the [App Real-time Log] even after sufficient time, check whether the Install event is in the SDK log. When the Install event is in the SDK log, uninstall the application on the test device and reinstall it.
Also, make sure you have clicked Allow in the ATT prompt. If you allowed data tracking and the Install event is still not confirmed, check whether the TAT is set to an appopriate length.
If the Install event is still not confirmed, contact your Airbridge CSM and share your SDK logs. If you don't have a designated Airbridge CSM, contact the Airbridge Help Center.
Check whether the event and user data are being collected as intended.
Check whether the events are being collected by the Airbridge iOD SDK as defined in your Airbridge event taxonomy by following the steps below.
Navigate to [Raw Data]>[App Real-time Log] in the Airbridge dashboard and check whether the event data is being collected as defined in your Airbridge event taxonomy.
Category: Check data at eventData.goal.category
.
Action: Check data at eventData.goal.action
.
Label: Check data at eventData.goal.label
.
Value: Check data at eventData.goal.value
. Make sure to check whether the value data of purchase-related events are being collected properly.
Semantic Attributes: Check data at eventData.goal.semanticAttributes
.
Custom Attributes: Check data at eventData.goal.customAttributes
.
If you don't complete the hybrid app setup, events that occur in the app's WebView are recorded as web events, and the attribution results are not measured correctly. Proceed with the hybrid app setup before checking whether events that occurred from WebView are being collected properly.
You can check in the SDK logs whether events are being properly sent to the Airbridge server. You can solve problems based on the SDK logs.
Problem | Solution |
---|---|
| Check whether the event transmission function is being called. |
| Check whether you are in a network state where you can send data to the server located outside. |
| May need up to 10 minutes to confirm the app installation event in the real-time log. Please wait a moment. Alternatively, please adjust the event payload size to be less than 1MB. Event payloads larger than 1MB will not be properly collected by Airbridge. |
Below is an example of the eventData.goal
payload.
{
...
"eventData": {
...
"goal": {
"category": "airbridge.ecommerce.order.completed",
"semanticAttributes": {
"value": 10000.0,
"totalQuantity": 1000,
"currency": "krw",
"transactionID": "transaction_1",
"products": [
{
"quantity": 10,
"productID": "coca_1",
"price": 1.99,
"name": "Coca cola",
"currency": "usd",
"position": 1
},
{
"quantity": 5,
"productID": "fanta_1",
"price": 2.5,
"name": "Fanta Orange",
"currency": "usd",
"position": 2
},
{
"quantity": 1,
"productID": "terra_pack_1",
"price": 10.99,
"name": "Terra 12 Pack",
"currency": "usd",
"position": 3
}
],
"inAppPurchased": true
}
}
},
...
}
Attention
If you haven't set up user data collection in the Airbridge iOS SDK, the checkup process described below is not necessary.
Verify that user information is being collected in the iOS SDK as configured.
Navigate to [Raw Data]>[App Real-time Log] to check whether the events are collected as intended.
User data: Check data at user
. The collected user data should be included in the user
.
If you can find the following logs, you can confirm that the user data is sent to the Airbridge server as intended.
Client request: method={method} url={url} header={header} body={pretty printed json body}
If you find the following SDK log, you can confirm that the user data has been modified after collection.
User data is modified: user={user json}
Below is an example of a payload of the collected user data.
{
...
"eventData": {
...
},
"user": {
"externalUserID": {User ID},
"externalUserPhone": {User Phone},
"alias": {
"key": {value}
},
"attributes": {
"key": {value}
},
"isClientSideHashed": true
},
...
}
You can follow the steps below to verify that the deep link feature you set up in the Airbridge iOS SDK is working properly.
Before testing the deep link, make sure the following items have been set up.
|
Description |
Resources |
---|---|---|
HTTP deep links (App links) | Setup is required. | |
Scheme Deep Link | Setup is required. | |
Deferred Deep Link | The setup is completed automatically. No additional setup is required. | |
Custom Domain | Setup is optional. | |
App Install | - If you don't need to test the deferred deep link, install the app on your test device in advance. - If you need to test the deferred deep link, the app should not be installed on the test device. If the app is installed, delete the app from the test device. |
Airbridge provides a website for testing deep links. If you want to test deferred deep links, you need to uninstall the app from your test device.
1. Visit the deep link testing site from your test device. You can access the website directly by using the QR code below.
2. Enter the App Name you registered with Airbridge. You can find it on the [Settings]>[Tokens] page in the Airbridge dashboard.
If you want to test the specific deeplink address, enter a scheme deeplink into the Deeplink URL field. Scheme deep links look like this: {YOUR_SCHEME}://...
Also, If you're using a custom domain, make sure to enter your custom domain.
3. Click one of the buttons listed below. Click the button depending on the deep link type you are testing.
Note that you can only test deferred deep links if the app is not installed on your test device.
Button |
Description |
Example |
---|---|---|
Test HTTP Deeplink Type-1 | - You can test the HTTP deep link in the format of |
|
Test HTTP Deeplink Type-2 | - You can test the HTTP deep link in the format of |
|
Test Scheme Deeplink | - You can test the scheme deep link. |
|
Test Deferred Deeplink | - You can test the deferred deep link. |
|
Test Custom Domain Deeplink | - You can test the custom domain. It is only available when a custom domain is entered. |
|
4. When the Deep Link Open event is successfully collected, you can find it on the [Raw Data]>[App Real-time Log] page in the Airbridge dashboard.
Once you find the Deeplink Open event on the [Raw Data]>[App Real-time Log] page in the Airbridge dashboard, additional items must be confirmed. The items vary depending on the button that was clicked. If the deep link is functioning as intended, all items should be confirmed. Refer to the below information for the items that should be confirmed.
After clicking Test HTTP Deeplink Type-1, you need to confirm the following items in the SDK log.
eventData.deeplink
is https://{YOUR_APP_NAME}.abr.ge...
{YOUR_SCHEME}://main...
is passed to the deep link callback function.
If you have entered a deeplink URL in the deeplink test site, the information passed will be changed. For example, if you have entered {YOUR_SCHEME}://path...
as the deeplink URL, ${YOUR_SCHEME}://path...
is passed.
After clicking Test HTTP Deeplink Type-2, you need to confirm the following items in the SDK log.
eventData.deeplink
is https://{YOUR_APP_NAME}.airbridge.io...
{YOUR_SCHEME}://main...
is passed to the deep link callback function.
If you have entered a deeplink URL in the deeplink test site, the information passed will be changed. For example, if you have entered {YOUR_SCHEME}://path...
as the deeplink URL, ${YOUR_SCHEME}://path...
is passed.
After clicking Test Scheme Deeplink, you need to confirm the following items in the SDK log.
eventData.deeplink
is {YOUR_SCHEME}://main...
{YOUR_SCHEME}://main...
is passed to the deeplink callback function.
If you have entered a deeplink URL in the deeplink test site, the information passed will be changed. For example, if you have entered {YOUR_SCHEME}://path...
as the deeplink URL, ${YOUR_SCHEME}://path...
is passed.
After clicking Test Deferred Deeplink, you need to confirm the following items in the SDK log.
eventData.deeplink
is ${YOUR_SCHEME}://main...
{YOUR_SCHEME}://main...
is passed to the deeplink callback function.
If you have entered a deeplink URL in the deeplink test site, the information passed will be changed. For example, if you have entered {YOUR_SCHEME}://path...
as the deeplink URL, ${YOUR_SCHEME}://path...
is passed.
After clicking Test Custom Domain Deeplink, you need to confirm the following items in the SDK log.
eventData.deeplink
is https://{YOUR_CUSTOM_DOMAIN}...
{YOUR_SCHEME}://main...
is passed to the deeplink callback function.
If you have entered a deeplink URL in the deeplink test site, the information passed will be changed. For example, if you have entered {YOUR_SCHEME}://path...
as the deeplink URL, ${YOUR_SCHEME}://path...
is passed.
Refer to the information below for troubleshooting regarding deep links.
Problem | Solution |
---|---|
You clicked a deep link, but the app was not launched. Or the SDK logs show information that is not intended as per setting. | Check whether the deep link is set up correctly. Refer to this article for the deep linking setup. |
You clicked a deep link, and the app was launched, but you didn't land on the intended app page. | You need to write code that redirects the user to the deep link path that is passed by the |
Was this page helpful?