AndroidAppsFlyer接入和打点测试

Posted 帅次

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了AndroidAppsFlyer接入和打点测试相关的知识,希望对你有一定的参考价值。

SDK接入:

一、SDK与Android平台的兼容性

1、启动android V4.0

2、基于非移动Android的平台,例如Smart TV,包括Amazon 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
①、下载AF-Android-SDK.jar

②、将其添加到项目中

③、将以下权限添加到清单: 

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;
/**
  * 创建人:gongtc
  * 功能描述: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. 移动端扫码

5、安装最新的程序包,安装成功后打开APP,电脑页面会自动跳转(会有短暂延迟)

6、根据参数表开始APP打点测试

测试完成后 选择 报告 -> 数据导出 -> 用户获取 -> In-app events

Date range (activity) 选择today

点击 Add filter -> 选择 Media source -> appsflyer_sdk_test_int -> Download

7、核对项目和内购项目金额货币单位

以上是关于AndroidAppsFlyer接入和打点测试的主要内容,如果未能解决你的问题,请参考以下文章

GPS转换百度地图坐标&websocket(stomp)实现动态打点

Mock+Proxy在SDK项目的自动化测试实战

Mock+Proxy在SDK项目的自动化测试实战

日志中台不重不丢实现浅谈

#夏日挑战赛# OpenHarmony HiSysEvent打点调用实践(L2)

Jmeter录制前端打点接口