adjust-icon

设置归因回传

针对 Adobe Experience SDK 的 Adjust Android Extension 发送的安装数据为 Adjust 所接收后,设备就会被归因至安装来源。如果针对用户进行了再营销,或用户与其他推广活动进行了交互,那么该归因信息就可能会发生变化。

您可以配置回传函数来响应归因变更。Adjust 收到新的归因信息后,会异步将数据发送回设备。回传函数会以参数形式接收设备的归因数据。

请参阅 Adjust 的归因数据政策,进一步了解归因数据。

参考

要设置回传函数以监听归因变化,请使用以下参数调用 AdjustAdobeExtensionConfig 实例的 setOnAttributionChangedListener 方法:

onAttributionChangedListener: OnAttributionChangedListener

该函数会返回 void,并以序列化 JSON 对象的形式接收设备归因信息。

教程:创建归因回传

要配置归因回传,您需要创建一个函数,并将其指定给 AdjustAdobeExtensionConfig 实例。参阅本教程,您将以集成指南中的 MainApp.java 为基础,添加一个 onAttributionChanged 回传函数,并通过该函数将用户的归因信息以字符串形式输出,记录在日志中。最终结果将如下:

import android.app.Application;
import android.util.Log;
import com.adjust.adobeextension.AdjustAdobeExtension;
import com.adjust.adobeextension.AdjustAdobeExtensionConfig;
import com.adobe.marketing.mobile.AdobeCallback;
import com.adobe.marketing.mobile.Extension;
import com.adobe.marketing.mobile.Analytics;
import com.adobe.marketing.mobile.Identity;
import com.adobe.marketing.mobile.LoggingMode;
import com.adobe.marketing.mobile.MobileCore;
public class MainApp extends Application {
@Override
public void onCreate() {
super.onCreate();
MobileCore.setApplication(this);
MobileCore.setLogLevel(LoggingMode.VERBOSE);
try {
MobileCore.configureWithAppID("your_adobe_app_id");
AdjustAdobeExtensionConfig config =
new AdjustAdobeExtensionConfig(AdjustAdobeExtensionConfig.ENVIRONMENT_SANDBOX);
config.setOnAttributionChangedListener(new OnAttributionChangedListener() {
@Override
public void onAttributionChanged(AdjustAttribution adjustAttribution) {
Log.d("example", "Attribution information updated");
Log.d("example", "Attribution: " + attribution.toString());
}
});
AdjustAdobeExtension.setConfiguration(config);
} catch (Exception e) {
Log.e("example", "Exception occurred during configuration: " + e.getMessage());
}
try {
List<Class<? extends Extension>> extensions = Arrays.asList(
Analytics.EXTENSION,
Identity.EXTENSION,
AdjustAdobeExtension.EXTENSION);
MobileCore.registerExtensions(extensions, new AdobeCallback<object>() {
@Override
public void call(Object o) {
Log.d("example", "Adjust Adobe Extension SDK initialized");
}
});
} catch (Exception e) {
Log.e("example", "Exception occurred while registering Extension: " + e.getMessage());
}
}
}

您需要进行下列操作:

  1. try...catch 块中调用 AdjustAdobeExtensionConfig 实例的 setOnAttributionChangedListener 方法。以参数形式传送 OnAttributionChangedListener 实例。
try {
MobileCore.configureWithAppID("your_adobe_app_id");
AdjustAdobeExtensionConfig config =
new AdjustAdobeExtensionConfig(AdjustAdobeExtensionConfig.ENVIRONMENT_SANDBOX);
config.setOnAttributionChangedListener(new OnAttributionChangedListener() {});
AdjustAdobeExtension.setConfiguration(config);
} catch (Exception e) {
Log.e("example", "Exception occurred during configuration: " + e.getMessage());
}
  1. setOnAttributionChangedListener 声明中,创建一个名为 onAttributionChanged 的新公共函数。该方法采用 AdjustAttribution 参数并返回 void
MainApp.java
config.setOnAttributionChangedListener(new OnAttributionChangedListener() {
@Override
public void onAttributionChanged(AdjustAttribution adjustAttribution) {}
});
  1. onAttributionChanged 函数正文中将 AdjustAttribution 对象转换为字符串,以进行记录。
MainApp.java
config.setOnAttributionChangedListener(new OnAttributionChangedListener() {
@Override
public void onAttributionChanged(AdjustAttribution adjustAttribution) {
Log.d("example", "Attribution information updated");
Log.d("example", "Attribution: " + attribution.toString());
}
});

完成了!用户归因信息发生变更时,回传函数会将更新后的归因信息写入系统日志。