Axon 移动应用集成
本指南介绍了如何将 Axon SDK 集成到您的原生 Android 移动应用中,以便追踪应用事件。
下载最新 SDK
您可以通过 Gradle 作为依赖下载 SDK。SDK 需要不低于 19 的 minSdkVersion。
将下列行添加至您的应用层级 build.gradle 文件:
repositories { google() mavenCentral() ⋮}dependencies { implementation 'com.applovin:axon-sdk:+' ⋮}repositories { google() mavenCentral() ⋮}dependencies { implementation("com.applovin:axon-sdk:+") ⋮}ProGuard 规则
If you use ProGuard, note that the AppLovin Axon SDK comes bundled with the required ProGuard rules in the AARs. You do not need to add more ProGuard rules to your project.
初始化 SDK
在启动时使用 Event Key 初始化 AxonSDK,最大化 SDK 核心服务的准备时间。
将 “«your-event-key»” 替换为您的 Axon Event Key。
要查找您的 Axon Event Key,请导航至 AppLovin 控制面板中的 Account > General > Keys。
import com.applovin.sdk.Axon;
AxonInitializationConfiguration initConfig = AxonInitializationConfiguration.builder( "«your-event-key»" ).build();Axon.getInstance().initialize( initConfig, new Axon.InitializationListener(){ @Override public void onInitialized() { ⋮ }} );import com.applovin.sdk.Axon
val initConfig = AxonInitializationConfiguration.builder("«your-event-key»").build()Axon.getInstance().initialize(initConfig) { ⋮})处理深度链接
您必须提供一个深度链接,以确保用户点击广告时,如果已安装应用则可以无缝打开应用,否则点击会将用户引导至浏览器。
在处理深度链接的 Activity 中,调用 Axon SDK 的 processDeepLink() API 来处理入站深度链接和相关元数据。
@Overrideprotected void onCreate(@Nullable final Bundle savedInstanceState){ super.onCreate( savedInstanceState ); ⋮ processIntent( getIntent() );}
@Overrideprotected void onNewIntent(final Intent intent){ super.onNewIntent( intent ); ⋮ processIntent( intent );}
private void processIntent(final Intent intent){ ⋮ if ( Intent.ACTION_VIEW.equals( intent.getAction() ) ) { final Uri uri = intent.getData(); if ( uri != null ) { Axon.getInstance().processDeepLink( uri ); } }}override fun onCreate(savedInstanceState: Bundle?){ super.onCreate(savedInstanceState) ⋮ processIntent(intent)}
override fun onNewIntent(intent: Intent?){ super.onNewIntent(intent) ⋮ processIntent(intent)}
private fun processIntent(intent: Intent?){ ⋮
if (intent?.action == Intent.ACTION_VIEW) { intent.data?.let { uri -> Axon.getInstance().processDeepLink(uri) } }}使用 Axon SDK 跟踪事件
请使用以下语法向 Axon 发送电商事件。每个事件都应在其对应的事件出现在数据层中时触发。
sdk.getEventService().trackEvent( «event-name», «event-data» );sdk.eventService.trackEvent(«event-name», «event-data»)参数
| 名称 | 类型 | 描述 |
|---|---|---|
event_name | 字符串 | 该事件的名称。请参阅 Axon Pixel 事件和对象,了解可用的事件。 |
event_data | 对象 | 该事件的数据。请查看 Axon Pixel 事件和对象了解要发送的数据。(请注意:发送 page_view 事件时不需要发送 event_data。) |
所有事件都需要 event_name 参数。除 page_view 外每个事件都需要特定的 event_data,请在下方具体事件对应版块查阅描述。
向 Axon SDK 发送数据
针对每个需要 event_data 的事件,AppLovin 建议您创建一个 Map 作为数据负载。示例如下:
Map<String, Object> parameters = new HashMap<>();parameters.put( "currency", "USD" );parameters.put( "value", 99.99 );
List<Map<String, Object>> items = new ArrayList<>();⋮parameters.put( "items", items );sdk.getEventService().trackEvent( "add_to_cart", parameters );sdk.eventService.trackEvent("add_to_cart", mapOf( "currency" to "USD", "value" to 99.99, "items" to listOf( ⋮ )))启用测试模式
当您测试集成时,需要确保测试事件不会影响正式环境中的生产数据。
要针对一组 GAID 启用测试模式,请在 Axon SDK 初始化配置中传入测试设备的广告 ID 列表。下面的代码片段展示了如何完成此操作:
AxonInitializationConfiguration configuration = AxonInitializationConfiguration.builder( "«your-event-key»" ) .setTestDeviceAdvertisingIds( Arrays.asList( "«your-GAID»" ) ) .build();val initConfig = AxonInitializationConfiguration.builder("«your-event-key»") .setTestDeviceAdvertisingIds(listOf("«your-GAID»")) .build()