导入 iOS 归因数据
归因导入自 AppMetrica SDK 5.2.0 起在 iOS 可用。
要设置导入,请在客户端调用归因检索方法,然后在AppMetrica SDK中调用AppMetrica / AMAAppMetrica类的reportExternalAttribution归因发送方法。
AppsFlyer
要将 AppsFlyer 的归因集成到你的项目中,请确保为 SwiftUI 项目添加了 AppDelegate 的支持。
- 以常规方式初始化 AppsFlyer。
- 使用方法
onConversionDataSuccess来获取归因数据。 - 设置归因数据发送(
reportExternalAttribution方法),用于AppMetrica SDK。
Swift
Objective-C
import AppMetricaCore
import AppsFlyerLib
extension AppDelegate: AppsFlyerLibDelegate {
func onConversionDataSuccess(_ installData: [AnyHashable: Any]) {
AppMetrica.reportExternalAttribution(installData, from: .appsflyer)
}
}
#import <AppMetricaCore/AppMetricaCore.h>
#import <AppsFlyerLib/AppsFlyerLib.h>
@interface AppDelegate ()
@end
@implementation AppDelegate
- (void)onConversionDataSuccess:(NSDictionary *)installData {
[AMAAppMetrica reportExternalAttribution:installData
source:kAMAAttributionSourceAppsflyer
onFailure:nil];
}
@end
Adjust
要将 Adjust 的归因集成到你的项目中,请确保为 SwiftUI 项目添加了 AppDelegate 的支持。
- 初始化 按常规方式调整。
- Adjust 使用 ADJAttribution 对象来处理归因数据。 将其转换为
字典,使用dictionary()方法,然后传递给AppMetrica。 - 设置归因数据发送(
reportExternalAttribution方法),用于AppMetrica SDK。
Swift
Objective-C
import AppMetricaCore
import Adjust
extension AppDelegate: AdjustDelegate {
func adjustAttributionChanged(_ attribution: ADJAttribution?) {
if let attribution = attribution?.dictionary() {
AppMetrica.reportExternalAttribution(attribution, from: .adjust)
}
}
}
#import <AppMetricaCore/AppMetricaCore.h>
#import <Adjust/Adjust.h>
@interface AppDelegate () <AdjustDelegate>
@end
@implementation AppDelegate
- (void)adjustAttributionChanged:(ADJAttribution *)attribution {
NSDictionary *attributionDictionary = [attribution dictionary];
if (attributionDictionary != nil) {
[AMAAppMetrica reportExternalAttribution:attributionDictionary
source:kAMAAttributionSourceAdjust
onFailure:nil];
}
}
@end
Kochava
对于Kochava,请在回调中使用其归因搜索方法,通过调用单例的 rawDictionary 属性来获取 attribution.retrieveResult 方法返回的结果。
- 以常规方式初始化 Kochava。
- Kochava 提供了通过回调实现的自有归因检索机制。 调用
rawDictionary属性,在result中,来自attribution.retrieveResult方法。 将生成的字典发送到AppMetrica。 - 设置归因数据发送(
reportExternalAttribution方法),用于AppMetrica SDK。
Swift
面向对象的 C
import AppMetricaCore
import KochavaNetworking
import KochavaMeasurement
Measurement.shared.attribution.retrieveResult { result in
if let attribution = result.rawDictionary {
AppMetrica.reportExternalAttribution(attribution, from: .kochava)
}
}
#import <AppMetricaCore/AppMetricaCore.h>
@import KochavaNetworking;
@import KochavaMeasurement;
[KVAMeasurement.shared.attribution retrieveResultWithClosureDidComplete:^(KVAMeasurement_Attribution_Result * _Nonnull result) {
NSDictionary *attributionDictionary = result.rawDictionary;
if (attributionDictionary) {
[AMAAppMetrica reportExternalAttribution:attributionDictionary
source:kAMAAttributionSourceKochava
onFailure:nil];
}
}];
Tenjin
- 以常规方式初始化 Tenjin。
- 获取 TenjinSDK 实例(使用您的 API 键),然后调用
getAttributionInfo(_:)。 - 设置归因数据发送(
reportExternalAttribution方法),用于AppMetrica SDK。
Swift
面向对象的 C
import AppMetricaCore
import TenjinSDK
TenjinSDK.getInstance("<SDK_KEY>").getAttributionInfo { (attribution: [AnyHashable : Any]?, error: Error?) in
if let attribution = attribution {
AppMetrica.reportExternalAttribution(attribution, from: .tenjin)
}
}
#import <AppMetricaCore/AppMetricaCore.h>
#import <TenjinSDK/TenjinSDK.h>
[[TenjinSDK getInstance:@"<SDK_KEY>"] getAttributionInfo:^(NSDictionary *attribution, NSError *error) {
if (attribution) {
[AMAAppMetrica reportExternalAttribution:attribution
source:kAMAAttributionSourceTenjin
onFailure:nil];
}
}];
Airbridge
- 以常规方式初始化 Airbridge。
- 设置
attributionCallback属性,用于从ABSettingAirBridge.setting()获取的对象。 将归属字典作为参数传递。 - 设置归因数据发送(
reportExternalAttribution方法),用于AppMetrica SDK。
Swift
Objective-C
import AppMetricaCore
import AirBridge
AirBridge.setting().attributionCallback = { (attribution: [String : String]) in
AppMetrica.reportExternalAttribution(attribution, from: .airbridge)
}
#import <AppMetricaCore/AppMetricaCore.h>
#import <AirBridge/AirBridge.h>
[AirBridge.setting setAttributionCallback:^(NSDictionary<NSString *,NSString *> * _Nonnull attribution) {
[AMAAppMetrica reportExternalAttribution:attribution
source:kAMAAttributionSourceAirbridge
onFailure:nil];
}];
Singular
- 初始化 以常规方式单数形式。
- 使用您的 API 密钥和密钥初始化
SingularConfig。 - 为归属数据处理分配一个回调,名称为
deviceAttributionCallback。 - 设置归因数据的发送(
reportExternalAttribution方法)在 AppMetrica SDK 中。
Swift
面向对象的 C
import AppMetricaCore
import Singular
if let singularConfig = SingularConfig(apiKey: "API_KEY", andSecret: "SECRET") {
singularConfig.deviceAttributionCallback = { (attribution: [AnyHashable : Any]?) in
if let attribution = attribution {
AppMetrica.reportExternalAttribution(attribution, from: .singular)
}
}
}
#import <AppMetricaCore/AppMetricaCore.h>
#import <Singular/Singular.h>
SingularConfig *singularConfig = [[SingularConfig alloc] initWithApiKey:@"API_KEY" andSecret:@"SECRET"];
singularConfig.deviceAttributionCallback = ^(NSDictionary *attribution) {
if (attribution) {
[AMAAppMetrica reportExternalAttribution:attribution
source:kAMAAttributionSourceSingular
onFailure:nil];
}
};
如果您没有找到所需答案,可以通过反馈表单提交您的问题。 请尽可能详细地描述问题。 如果可能,请附上截图。