SDK接入
AppsFlyer:Android-SDK集成
SDK与Android平台的兼容性
1、Android 4.0以上
2、非移动Android平台,例如智能电视,包括亚马逊的Fire TV
3、Android应用程式的店外市场,例如Amazon和Baidu
将SDK添加到项目
1、使用Gradle(推荐)添加SDK
①、Module-level /app/build.gradle before dependencies:
repositories { mavenCentral() }
②、添加最新版本的AppsFlyerSDK作为依赖项
dependencies { implementation 'com.appsflyer:af-android-sdk:6.3.0' implementation 'com.android.installreferrer:installreferrer:2.2 }
2、手动添加SDK
②、将其添加到项目中
③、将以下权限添加到清单:
com.google.android.finsky.permission.BIND_GET_INSTALL_REFERRER_SERVICE
3、所需权限
将以下权限添加到AndroidManifest.xml:
<uses-permission android:name="android.permission.INTERNET" /> <uses-permission android:name="android.permission.ACCESS_NETWORK_STATE" /> <uses-permission android:name="android.permission.ACCESS_WIFI_STATE" /> <receiver android:name="com.appsflyer.SingleInstallBroadcastReceiver" android:exported="true"> <intent-filter> <action android:name="com.android.vending.INSTALL_REFERRER" /> </intent-filter> </receiver>
实施并初始化SDK
1、要获取您的开发密钥:
①、转到您应用的信息中心。
②、在仪表板上,下配置单击应用硒设置。
③、复制您的开发密钥。
2、初始化SDK
package com.demo.demo; import com.appsflyer.AppsFlyerConversionListener; import com.appsflyer.AppsFlyerLib; /** * 创建人:SCC * 功能描述:AppsFlyer接入 */ public class MyApp extends Application { private static MyApp singleton; @Override public void onCreate() { super.onCreate(); AppsFlyerConversionListener conversionListener = new AppsFlyerConversionListener() { @Override public void onConversionDataSuccess(Map<String, Object> conversionData) { for (String attrName : conversionData.keySet()) { MLog.e("attribute: " + attrName + " = " + conversionData.get(attrName)); } } @Override public void onConversionDataFail(String errorMessage) { MLog.e( "error getting conversion data: " + errorMessage); } @Override public void onAppOpenAttribution(Map<String, String> conversionData) { for (String attrName : conversionData.keySet()) { MLog.e("attribute: " + attrName + " = " + conversionData.get(attrName)); } } @Override public void onAttributionFailure(String errorMessage) { MLog.e("error onAttributionFailure : " + errorMessage); } }; AppsFlyerLib.getInstance().init(BasicParametersUtils.AppsFlyerId, conversionListener, getApplicationContext()); AppsFlyerLib.getInstance().start(this); } }
测试
必须先删除原APP
1、打开网址https://hq1.appsflyer.com/apps/myapps
2、选择对应的APP(注意渠道)因Android端有两个包,测试时确认包与选择项一致
3、选择 对接 -> SDK接入测试 -> Non-Orgnic Install
4、选择对应的设备(device不要选错了),安装来源选择Other,然后用手机原生相机扫码,并点击跳转至手机浏览器,同时电脑页面会自动跳转等待开启。
选择对应的设备:如果不知道自己对应的Advertising ID,可以在Google Play搜索deviceId安装后打开查看Advertising ID。
5、APP扫码(浏览器或者相机能识别二维码即可)
6、安装最新的程序包,安装成功后打开APP,电脑页面会自动跳转(会有短暂延迟)
跳转前页面(未安装测试应用)
跳转后页面(已安装测试应用),会有延迟(可在数据总览确认,是否有新数据)
7、根据参数表开始APP打点测试
测试完成后 选择 报告 -> 数据导出 -> 用户获取 -> In-app events
Date range (activity) 选择today
点击 Add filter -> 选择 Media source -> appsflyer_sdk_test_int -> Download
8、核对项目和内购项目金额货币单位
好了测试完成,发版去吧。