Android AppsFlyer接入及测试

简介: SDK接入AppsFlyer:Android-SDK集成SDK与Android平台的兼容性 1、Android 4.0以上 2、非移动Android平台,例如智能电视,包括亚马逊的Fire TV 3、Android应用程式的店外市场,例如Amazon和Baidu

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


        ①、下载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、要获取您的开发密钥:


       ①、转到您应用的信息中心。

       ②、在仪表板上,下配置单击应用硒设置。

       ③、复制您的开发密钥。


image.png


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端有两个包,测试时确认包与选择项一致


image.png


3、选择 对接 -> SDK接入测试 -> Non-Orgnic Install


image.png


 4、选择对应的设备(device不要选错了),安装来源选择Other,然后用手机原生相机扫码,并点击跳转至手机浏览器,同时电脑页面会自动跳转等待开启。      

      选择对应的设备:如果不知道自己对应的Advertising ID,可以在Google Play搜索deviceId安装后打开查看Advertising ID。

image.pngimage.png


5、APP扫码(浏览器或者相机能识别二维码即可)

image.png


image.png


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


      跳转前页面(未安装测试应用)

image.png


 跳转后页面(已安装测试应用)会有延迟(可在数据总览确认,是否有新数据)


image.png


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


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


       Date range (activity) 选择today


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

image.png


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

image.png


好了测试完成,发版去吧。


相关文章
|
6月前
|
Linux Android开发
测试程序之提供ioctl函数应用操作GPIO适用于Linux/Android
测试程序之提供ioctl函数应用操作GPIO适用于Linux/Android
123 0
|
2月前
|
Java 测试技术 Android开发
Android性能测试——发现和定位内存泄露和卡顿
本文详细介绍了Android应用性能测试中的内存泄漏与卡顿问题及其解决方案。首先,文章描述了使用MAT工具定位内存泄漏的具体步骤,并通过实例展示了如何分析Histogram图表和Dominator Tree。接着,针对卡顿问题,文章探讨了其产生原因,并提供了多种测试方法,包括GPU呈现模式分析、FPS Meter软件测试、绘制圆点计数法及Android Studio自带的GPU监控功能。最后,文章给出了排查卡顿问题的四个方向,帮助开发者优化应用性能。
178 4
Android性能测试——发现和定位内存泄露和卡顿
|
2月前
|
测试技术 Shell Android开发
Android 性能测试初探 (六)
本节聊聊性能测试的最后一项- 流量,当然我所指的性能测试是针对大部分应用而言的,可能还有部分应用会关注网速、弱网之类的测试,但本系列文章都不去一一探讨了。
55 6
|
2月前
|
JavaScript 测试技术 Android开发
Android 性能测试初探 (四)
本文介绍了GPU在移动端性能测试中的重要性,并详细解释了过度绘制、帧率和帧方差的概念。针对GPU测试,文章列举了三项主要测试内容:界面过度绘制、屏幕滑动帧速率和平滑度。其中,过度绘制测试需遵循特定标准,而帧速率和平滑度测试则可通过软件或硬件方法实现。在软件测试中,使用Systrace插件和高速相机是两种常用手段。对于不同机型,帧率及帧方差的测试标准也需相应调整。
55 5
|
2月前
|
测试技术 Shell Android开发
Android 性能测试初探 (三)
本文承接《Android性能测试初探(二)》,深入探讨CPU与内存测试。介绍了移动端内存测试的重要性及其测试目标,并详细列举了不同状态下应用内存消耗情况的测试项目。此外,还提供了多种内存测试方法,包括使用`procrank`等工具的具体操作步骤。最后,文章也简要提及了CPU测试的相关内容,帮助读者更好地理解Android性能测试的关键要素。
53 5
|
2月前
|
测试技术 Shell 定位技术
Android 性能测试初探 (五)
聊聊大家不常关注的测试项- 功耗
53 3
|
2月前
|
算法 测试技术 Android开发
Android 性能测试初探 (二)
上回大体介绍了下在 android 端的性能测试项,现在我们就细节测试项做一些阐述(包括如何自己 DIY 测试)
48 4
|
2月前
|
测试技术 API Android开发
Android 性能测试初探 (一)
Android 性能测试,跟pc性能测试一样分为客户端及服务器,但在客户端上的性能测试分为 2 类: 一类为 rom 版本的性能测试;一类为应用的性能测试。
53 3
|
2月前
|
Android开发
Android学习 —— 测试init.rc中的条件触发的处理顺序
Android学习 —— 测试init.rc中的条件触发的处理顺序
|
6月前
|
安全 物联网 测试技术
构建未来:Android与IoT设备的无缝交互深入探索软件自动化测试的未来趋势
【5月更文挑战第30天】在物联网(IoT)技术快速发展的当下,Android系统因其开放性和广泛的用户基础成为了连接智能设备的首选平台。本文将探讨如何通过现代Android开发技术实现智能手机与IoT设备的高效、稳定连接,并分析其中的挑战和解决方案。我们将深入挖掘Android系统的底层通信机制,提出创新的交互模式,并通过实例演示如何在Android应用中集成IoT控制功能,旨在为开发者提供一套可行的指导方案,促进IoT生态系统的进一步发展。
下一篇
无影云桌面