Skip to content

Commit 7e7fda1

Browse files
feat: add callbacks to appsflyer plugin (#1053)
1 parent aaa59cf commit 7e7fda1

File tree

1 file changed

+17
-1
lines changed

1 file changed

+17
-1
lines changed

packages/plugins/plugin-appsflyer/src/AppsflyerPlugin.tsx

Lines changed: 17 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -9,7 +9,11 @@ import {
99
ErrorType,
1010
} from '@segment/analytics-react-native';
1111
import type { SegmentAppsflyerSettings } from './types';
12-
import appsFlyer from 'react-native-appsflyer';
12+
import appsFlyer, {
13+
ConversionData,
14+
OnAppOpenAttributionData,
15+
UnifiedDeepLinkData,
16+
} from 'react-native-appsflyer';
1317
import identify from './methods/identify';
1418
import track from './methods/track';
1519

@@ -19,6 +23,9 @@ export class AppsflyerPlugin extends DestinationPlugin {
1923
is_adset: boolean;
2024
is_adset_id: boolean;
2125
is_ad_id: boolean;
26+
onDeepLink?: (data: UnifiedDeepLinkData) => void;
27+
onInstallConversionData?: (data: ConversionData) => void;
28+
onAppOpenAttribution?: (data: OnAppOpenAttributionData) => void;
2229
}) {
2330
super();
2431
if (props != null) {
@@ -28,13 +35,19 @@ export class AppsflyerPlugin extends DestinationPlugin {
2835
this.is_ad_id = props.is_ad_id === undefined ? false : props.is_ad_id;
2936
this.is_adset_id =
3037
props.is_adset_id === undefined ? false : props.is_adset_id;
38+
this.onDeepLink = props.onDeepLink;
39+
this.onInstallConversionData = props.onInstallConversionData;
40+
this.onAppOpenAttribution = props.onAppOpenAttribution;
3141
}
3242
}
3343
type = PluginType.destination;
3444
key = 'AppsFlyer';
3545
is_adset = false;
3646
is_adset_id = false;
3747
is_ad_id = false;
48+
onDeepLink?: (data: UnifiedDeepLinkData) => void;
49+
onInstallConversionData?: (data: ConversionData) => void;
50+
onAppOpenAttribution?: (data: OnAppOpenAttributionData) => void;
3851
private settings: SegmentAppsflyerSettings | null = null;
3952
private hasRegisteredInstallCallback = false;
4053
private hasRegisteredDeepLinkCallback = false;
@@ -153,6 +166,7 @@ export class AppsflyerPlugin extends DestinationPlugin {
153166
);
154167
}
155168
}
169+
this.onInstallConversionData?.(res);
156170
});
157171
};
158172

@@ -175,6 +189,7 @@ export class AppsflyerPlugin extends DestinationPlugin {
175189
)
176190
);
177191
}
192+
this.onAppOpenAttribution?.(res);
178193
});
179194
};
180195

@@ -197,6 +212,7 @@ export class AppsflyerPlugin extends DestinationPlugin {
197212
)
198213
);
199214
}
215+
this.onDeepLink?.(res);
200216
});
201217
};
202218
}

0 commit comments

Comments
 (0)