adjust-icon

发送事件信息

您可以采用适用于 Adobe Experience SDK 的 Adjust Extension,在用户执行特定操作时,向 Adjust 服务器发送事件信息。Adjust 会记录这些事件并在您的Datascape 报告服务器回传云存储上传中显示。

有关在 Adjust 中配置事件的更多信息,请参阅帮助中心的添加事件指南

工作原理

下列信息被传递至 MobileCore.trackAction API 时,事件信息将被发送至 Adjust:

  1. AdjustAdobeExtension.ADOBE_ADJUST_ACTION_TRACK_EVENT: 映射到 Adjust trackEvent 方法的字符串值。
  2. contextData: 用于配置事件的值 HashMap。

当您使用这些参数调用 MobileCore.trackAction 时,Adjust Extension 会创建一个事件实例,将该实例传递至 trackEvent 方法,然后将信息发送至 Adjust。

参考

contextData HashMap 中包含有关事件的信息。每个事件都由唯一的 contextData HashMap 代表。要配置事件实例,请将值添加至 HashMap。

受支持的键如下:

AdjustAdobeExtension.ADOBE_ADJUST_EVENT_TOKEN

您的 Adjust 事件识别码。您必须设置该值,才能向 Adjust 发送事件信息。请参阅添加事件了解更多信息。

AdjustAdobeExtension.ADOBE_ADJUST_REVENUE

事件相关的收入额。应当是代表数值的字符串。

AdjustAdobeExtension.ADOBE_ADJUST_CURRENCY.

ISO 4217 货币代码。

AdjustAdobeExtension.ADOBE_ADJUST_EVENT_CALLBACK_PARAM_PREFIX

将回传参数键附加到此前缀,并添加您的回传参数值,以向 Adjust 发送回传。

AdjustAdobeExtension.ADOBE_ADJUST_EVENT_PARTNER_PARAM_PREFIX

将合作伙伴参数键附加到此前缀,并添加您的合作伙伴参数值,以向第三方发送回传。

教程:发送事件

要发送事件信息,您需要向主要活动添加一个函数。参阅本教程,您将以集成指南中的 MainActivity.java 为基础,添加一个名为 sendEventToAdjust 的新函数,并通过该函数发送带有下列属性的事件:

  • 事件识别码:"g3mfiw"
  • 1 欧元的事件收入。
  • 带有键 "user_id" 和值 "855" 的回传参数。
  • 带有键 "event_token 和值 "g3mfiw" 的合作伙伴参数。

最终结果将如下:

import android.content.Intent;
import android.net.Uri;
import android.os.Bundle;
import android.view.View;
import androidx.appcompat.app.AppCompatActivity;
import com.adjust.sdk.Adjust;
import com.adjust.sdk.AdjustDeeplink;
import com.adobe.marketing.mobile.MobileCore;
import java.util.HashMap;
import java.util.Map;
public class MainActivity extends AppCompatActivity {
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
Intent intent = getIntent();
Uri data = intent.getData();
AdjustDeeplink adjustDeeplink = new AdjustDeeplink(data);
Adjust.processDeeplink(adjustDeeplink, getApplicationContext());
}
public void sendEventToAdjust(View view) {
String action = AdjustAdobeExtension.ADOBE_ADJUST_ACTION_TRACK_EVENT;
Map<String, String> contextData = new HashMap<String, String>();
contextData.put(AdjustAdobeExtension.ADOBE_ADJUST_EVENT_TOKEN, "g3mfiw");
contextData.put(AdjustAdobeExtension.ADOBE_ADJUST_REVENUE, "1.00");
contextData.put(AdjustAdobeExtension.ADOBE_ADJUST_CURRENCY, "EUR");
contextData.put(AdjustAdobeExtension.ADOBE_ADJUST_EVENT_CALLBACK_PARAM_PREFIX + "user_id", "855");
contextData.put(AdjustAdobeExtension.ADOBE_ADJUST_EVENT_PARTNER_PARAM_PREFIX + "event_token", "g3mfiw");
MobileCore.trackAction(action, contextData);
}
}

您需要进行下列操作:

  1. 首先导入下列类:

    • com.adobe.marketing.mobile.MobileCore: 用于向 Adobe 和 Adjust 发送信息的类。
    • java.util.HashMap: 用于生成 contextData HashMap 的类。
    • java.util.Map: 用于输入 contextData HashMap 的类。
    MainActivity.java
    import com.adobe.marketing.mobile.MobileCore;
    import java.util.HashMap;
    import java.util.Map;
  2. 接下来,在 MainActivity 类中创建一个名为 sendEventToAdjust 的新函数。该函数接受应用程序 View 作为参数,并将返回 void.

MainActivity.java
public class MainActivity extends AppCompatActivity {
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
Intent intent = getIntent();
Uri data = intent.getData();
AdjustDeeplink adjustDeeplink = new AdjustDeeplink(data);
Adjust.processDeeplink(adjustDeeplink, getApplicationContext());
}
public void sendEventToAdjust(View view) {}
}
  1. sendEventToAdjust 函数中,声明一个名为 action 的新 String 变量,并为其指定值 AdjustAdobeExtension.ADOBE_ADJUST_ACTION_TRACK_EVENT,用于指示 MobileCore.trackAction 要处理的操作。
MainActivity.java
public void sendEventToAdjust(View view) {
String action = AdjustAdobeExtension.ADOBE_ADJUST_ACTION_TRACK_EVENT;
}
  1. 创建一个名为 contextData 的新 HashMap 变量,用于保存事件的属性。
MainActivity.java
public void sendEventToAdjust(View view) {
String action = AdjustAdobeExtension.ADOBE_ADJUST_ACTION_TRACK_EVENT;
Map<String, String> contextData = new HashMap<String, String>();
}

现在,contextData HashMap 已初始化。请添加值以构建事件。您可以参阅 contextData 参考,进一步了解每个键的用途。

  1. 使用 AdjustAdobeExtension.ADOBE_ADJUST_EVENT_TOKEN 键,将 Adjust 事件识别码添加至 HashMap。您必须提供此信息,Adjust 才能了解您要发送的事件。
MainActivity.java
public void sendEventToAdjust(View view) {
String action = AdjustAdobeExtension.ADOBE_ADJUST_ACTION_TRACK_EVENT;
Map<String, String> contextData = new HashMap<String, String>();
contextData.put(AdjustAdobeExtension.ADOBE_ADJUST_EVENT_TOKEN, "g3mfiw");
}
  1. 要添加事件收入金额,请针对金额使用 AdjustAdobeExtension.ADOBE_ADJUST_REVENUE,针对币种使用 AdjustAdobeExtension.ADOBE_ADJUST_CURRENCY。两个值都必须以字符串形式传递。
MainActivity.java
public void sendEventToAdjust(View view) {
String action = AdjustAdobeExtension.ADOBE_ADJUST_ACTION_TRACK_EVENT;
Map<String, String> contextData = new HashMap<String, String>();
contextData.put(AdjustAdobeExtension.ADOBE_ADJUST_EVENT_TOKEN, "g3mfiw");
contextData.put(AdjustAdobeExtension.ADOBE_ADJUST_REVENUE, "1.00");
contextData.put(AdjustAdobeExtension.ADOBE_ADJUST_CURRENCY, "EUR");
}
  1. 使用 AdjustAdobeExtension.ADOBE_ADJUST_EVENT_CALLBACK_PARAM_PREFIX 键添加回传参数。将回传标识符附加到键,以匹配回传 URL 中的参数。
MainActivity.java
public void sendEventToAdjust(View view) {
String action = AdjustAdobeExtension.ADOBE_ADJUST_ACTION_TRACK_EVENT;
Map<String, String> contextData = new HashMap<String, String>();
contextData.put(AdjustAdobeExtension.ADOBE_ADJUST_EVENT_TOKEN, "g3mfiw");
contextData.put(AdjustAdobeExtension.ADOBE_ADJUST_REVENUE, "1.00");
contextData.put(AdjustAdobeExtension.ADOBE_ADJUST_CURRENCY, "EUR");
contextData.put(AdjustAdobeExtension.ADOBE_ADJUST_EVENT_CALLBACK_PARAM_PREFIX + "user_id", "855");
}
  1. 使用 AdjustAdobeExtension.ADOBE_ADJUST_EVENT_PARTNER_PARAM_PREFIX 键添加合作伙伴参数。将回传标识符附加到键,将其映射至合作伙伴的占位符。
MainActivity.java
public void sendEventToAdjust(View view) {
String action = AdjustAdobeExtension.ADOBE_ADJUST_ACTION_TRACK_EVENT;
Map<String, String> contextData = new HashMap<String, String>();
contextData.put(AdjustAdobeExtension.ADOBE_ADJUST_EVENT_TOKEN, "g3mfiw");
contextData.put(AdjustAdobeExtension.ADOBE_ADJUST_REVENUE, "1.00");
contextData.put(AdjustAdobeExtension.ADOBE_ADJUST_CURRENCY, "EUR");
contextData.put(AdjustAdobeExtension.ADOBE_ADJUST_EVENT_CALLBACK_PARAM_PREFIX + "user_id", "855");
contextData.put(AdjustAdobeExtension.ADOBE_ADJUST_EVENT_PARTNER_PARAM_PREFIX + "event_token", "g3mfiw");
}
  1. 最后,要向 Adjust 发送事件信息,请使用 actioncontextData 变量调用 MobileCore.trackAction
MainActivity.java
public void sendEventToAdjust(View view) {
String action = AdjustAdobeExtension.ADOBE_ADJUST_ACTION_TRACK_EVENT;
Map<String, String> contextData = new HashMap<String, String>();
contextData.put(AdjustAdobeExtension.ADOBE_ADJUST_EVENT_TOKEN, "g3mfiw");
contextData.put(AdjustAdobeExtension.ADOBE_ADJUST_REVENUE, "1.00");
contextData.put(AdjustAdobeExtension.ADOBE_ADJUST_CURRENCY, "EUR");
contextData.put(AdjustAdobeExtension.ADOBE_ADJUST_EVENT_CALLBACK_PARAM_PREFIX + "user_id", "855");
contextData.put(AdjustAdobeExtension.ADOBE_ADJUST_EVENT_PARTNER_PARAM_PREFIX + "event_token", "g3mfiw");
MobileCore.trackAction(action, contextData);
}

完成了!当用户执行映射到 sendEventToAdjust 函数的操作时,系统就会生成事件,并将其发送至 Adjust。