指南
如何在 Capacitor 中使用 AppsFlyer
使用 @capgo/capacitor-appsflyer
Capacitor 为 AppsFlyer 属性、分析和深度链接提供插件。
安装
bun add @capgo/capacitor-appsflyer
bunx cap sync
bunx cap sync 将插件的本机 code 复制到你的本机项目中。每次升级插件后都需要再次运行它。
导入
import { AppsFlyer } from '@capgo/capacitor-appsflyer';
API概览
| 方法 | 描述 |
|---|---|
initSDK |
使用此方法初始化并启动AppsFlyer SDK。此 API 应在应用启动时立即调用。 |
startSDK |
使用此方法启动AppsFlyer SDK,仅在手动启动模式下。 |
logEvent |
记录应用内事件。 |
setCustomerUserId |
设置自己的客户 ID,使您能够将自己的唯一 ID 与 AppsFlyer 的唯一 ID 和其他设备的 ID 进行交叉引用。该 ID 可在原始数据报告和 Postback API 中找到,用于与内部 ID 进行交叉引用。 |
setCurrencyCode |
设置应用内购买的货币。货币 code 应为 3 位字符的 ISO 4217 code。 |
updateServerUninstallToken |
(Android) 允许将第三方插件收集的 GCM/FCM Token 传递给 AppsFlyer 服务器。可用于卸载日志。 (iOS) 允许将第三方插件收集的 APN Token 传递给 AppsFlyer 服务器。可用于记录卸载。 |
setAppInviteOneLink |
设置用于用户邀请的 OneLink ID。生成的用户邀请链接将使用此 OneLink 作为基础链接。 |
setOneLinkCustomDomain |
为了使AppsFlyer SDK成功解析隐藏(在短链 ID 中解码)的属性参数,应向此方法提供配置为品牌域的任何域。 |
appendParametersToDeepLinkingURL |
启用使用 App Links 进行深度链接(不使用 OneLink)的应用程序所有者,来为通过与其应用程序相关联的域名启动的会话进行会话属性。请在调用 start 之前调用此方法。您必须在参数 Map 中提供以下参数: pid 是 retargeting 必须设置为 true。 |
setResolveDeepLinkURLs |
广告商可以将 AppsFlyer OneLink 包装在另一个 Universal Link 中。这个 Universal Link 将调用应用程序,但任何深度链接数据将不会传播到 AppsFlyer。 setResolveDeepLinkURLs 允许您配置 SDK 来解析包装的 OneLink URL,确保深度链接可以正确发生。 |
addPushNotificationDeepLinkPath |
配置 SDK 从推送通知负载中提取深度链接值。 |
setSharingFilter |
停止事件传播到指定的 AppsFlyer 合作伙伴。 |
setSharingFilterForAllPartners |
停止事件传播到所有 AppsFlyer 合作伙伴。覆盖 setSharingFilter。 |
setSharingFilterForPartners |
停止事件传播到指定的 AppsFlyer 合作伙伴。 |
setAdditionalData |
设置要发送到 AppsFlyer 的额外数据。请参阅。 |
getAppsFlyerUID |
获取 AppsFlyer 的唯一设备 ID(为每个新安装的应用程序创建)。 |
anonymizeUser |
从 AppsFlyer 分析中排除用户(匿名化用户数据)。 |
stop |
一旦调用了此 API,我们的 SDK 就不会再与我们的服务器通信,停止功能。有助于实现用户同意/拒绝。 |
disableSKAdNetwork |
排除 SKAdNetwork。 |
disableAdvertisingIdentifier |
禁用 SDK 收集各种广告 ID。这包括 Apple Identity for Advertisers(IDFA)、Google 广告 ID(GAID)、OAID 和 Amazon 广告 ID(AAID)。 |
disableCollectASA |
苹果搜索广告的属性设置为关闭。 |
setHost |
设置自定义主机。 |
generateInviteLink |
允许您的现有用户邀请他们的朋友和联系人作为新用户加入您的应用。 |
validateAndLogInAppPurchaseAndroid |
API用于验证应用内购买。验证成功时,会自动记录一个af_purchase事件,包含相关值。 |
validateAndLogInAppPurchaseIos |
查看源定义以了解当前行为。 |
getSdkVersion |
获取AppsFlyer的SDK版本。 |
enableFacebookDeferredApplinks |
启用Facebook延迟应用链接的收集。需要FacebookSDK和Facebook应用在目标/客户端设备上。这API必须在初始化AppsFlyerSDK之前才能正常工作。 |
sendPushNotificationData |
测量和获取推送通知营销活动的数据。 |
setCurrentDeviceLanguage |
设置设备语言。数据将在原始数据报告中显示。 |
logCrossPromoteImpression |
记录一个作为跨促销活动的一部分的浏览记录。确保使用在AppsFlyer控制台中显示的推广App ID。 |
setUserEmails |
设置用户电子邮件并加密它们。 |
logLocation |
手动记录用户位置。 |
setPhoneNumber |
将以 SHA-256 加密的字符串形式发送。 |
setPartnerData |
允许为合作伙伴整合目的发送自定义数据。 |
logInvite |
用于记录用户邀请的应用内事件 (af_invite)。 |
setDisableNetworkData |
用于关闭收集设备的网络运营商名称 (carrier) 和 SIM 运营商名称的功能。 |
enableTCFDataCollection |
用于开启/关闭自动收集同意数据的功能,适用于使用 CMP 的用户。标志值将在应用会话之间持久化。 |
setConsentData |
用于手动设置用户同意数据。如果您的应用不使用兼容 TCF v2.2 的 CMP,请使用以下方法直接向 SDK 提供同意数据。 |
logAdRevenue |
通过将广告收入归因于应用,应用所有者可以获得完整的用户 LTV 和广告活动 ROI 视图。广告收入通过在应用中显示奖励视频、推广墙、插屏广告和横幅广告来产生。您可以使用此方法记录广告收入。 |
setConsentDataV2 |
用于手动设置用户同意数据。如果您的应用不使用兼容 TCF v2.2 的 CMP,请使用以下方法直接向 SDK 提供同意数据。 |
isSDKStarted |
使用此方法检查当前会话中是否已经启动了 AppsFlyer SDK。 |
isSDKStopped |
使用此方法检查 AppsFlyer SDK 是否处于停止状态。 |
disableAppSetId |
关闭 AppSet ID 收集。如果在 SDK 初始化之前调用此方法,App Set ID 将不会被收集。如果在初始化后调用此方法,App Set ID 将被收集但不会在请求负载中发送。仅适用于 Android。 |
validateAndLogInAppPurchaseV2 |
API用于验证应用内购买V2。验证成功后,相关值的af_purchase事件会自动被记录。 |
示例
initSDK()
使用此方法初始化并启动AppsFlyer SDK。此API应在应用启动时立即调用。
import { AppsFlyer } from '@capgo/capacitor-appsflyer';
const result = await AppsFlyer.initSDK({
devKey: 'dev-key-123',
appID: 'app-id-123',
});
console.log(result);
startSDK()
使用此方法在手动启动模式下启动AppsFlyer SDK。
import { AppsFlyer } from '@capgo/capacitor-appsflyer';
const result = await AppsFlyer.startSDK();
console.log(result);
logEvent()
记录应用内事件。
import { AppsFlyer } from '@capgo/capacitor-appsflyer';
const result = await AppsFlyer.logEvent({ eventName: 'event' });
console.log(result);
setCustomerUserId()
设置自己的客户端ID使您能够将自己的唯一ID与AppsFlyer的唯一ID和其他设备的ID进行交叉引用。该ID可在原始数据报告和Postback API中找到,用于与内部ID进行交叉引用。
import { AppsFlyer } from '@capgo/capacitor-appsflyer';
await AppsFlyer.setCustomerUserId({ cuid: 'cuid' });
setCurrencyCode()
设置应用内购买的货币。货币code应为3位字符的ISO 4217code。
import { AppsFlyer } from '@capgo/capacitor-appsflyer';
await AppsFlyer.setCurrencyCode({ currencyCode: 'USD' });
updateServerUninstallToken()
(Android)允许将第三方插件收集的GCM/FCM令牌传递给AppsFlyer服务器。可用于卸载日志。 (iOS)允许将第三方插件收集的APN令牌传递给AppsFlyer服务器。可用于记录卸载。
import { AppsFlyer } from '@capgo/capacitor-appsflyer';
await AppsFlyer.updateServerUninstallToken({ token: 'token-123' });
上表列出了44个核心方法。监听器和版本辅助函数,以及每个方法的完整契约,均在__CAPGO_KEEP_0__仓库中文档化。 GitHub 仓库.
返回句柄。调用
addListener __CAPGO_KEEP_0__仓库 handle.remove() 当屏幕卸载时。
全局参考
继续使用 @capgo/capacitor-appsflyer
如果您正在使用 使用 @capgo/capacitor-appsflyer 为原生插件工作做出计划,连接它与 @capgo/capacitor-appsflyer 在 @capgo/capacitor-appsflyer 中获取实现细节 入门 为 Getting Started 中的实现细节 Capgo 插件目录 为 Capgo 插件目录中的产品工作流 Capacitor 由 Capgo 提供的插件 为 Capacitor 由 Capgo 提供的插件中的实现细节 添加或更新插件 为添加或更新插件中的实现细节