appsflyerSDK

来自于:appsflyer立即使用

概述

AppsFlyer是一家成立于2011的以色列公司,专注于移动广告归因,为广告主提供App安装归因,OneLink,Protect360等产品,对接全球4000+媒体渠道,是Google,Facebook以及Twitter的官方合作伙伴。基于AppsFlyer强大的数据分析能力,用户只要使用AppsFlyer一个分析平台,就可以查看所有与广告相关的数据,同时分析点击率,下载量,转化率,留存,日活,卸载率等App运营人员所关注的数据。

AppsFlyer SDK功能服务

  • Install Track
  • GetConversionData
  • In App Event

AppsFlyer原生Android SDK集成文档

AppsFlyer原生iOS SDK集成文档

AppsFlyer SDK for APICloud模块概述

本模块封装了AppsFlyer原生SDK,集成了Install Track,GetConversionData,In App Event等功能,后续还会有更多原生功能被封装进来。

模块使用攻略

使用之前需要在AppsFlyer官方网站注册账号并创建应用,获取DEV_KEY

AppsFlyer官方网站

模块配置

module.json中引入

{
    "modules":[
        {
            "name":"appsFlyer",
            "class":"com.appsflyer.apicloud.sdk.AppsFlyerSDK"
        }
    ]
}

模块接口

trackAppLaunch

App打开后收集安装数据并上报到AppsFlyer Server.

trackAppLaunch({'af_dev_key':'DEV_KEY'}, callback(ret, err))

{'af_dev_key' : 'DEV_KEY'}

  • af_dev_key:固定字段名称
  • DEV_KEY: 在AppsFlyer官网注册App后生成的Key。

callback(ret, err)

ret:

  • 类型:JSON对象
  • 内部字段:
{
  "af_status": "Non-organic" //字符串类型,Non-organic||organic,该App的安装是自然安装还是非自然安装。
  "is_first_launch": "true" //字符串类型,true||false,该app是否是首次打开。
  "media_source": "googleadwords_int" //字符串类型,非自然安装的渠道名称。
  ...
}

更多字段请参考该文档:GetConversionData

err:

  • 类型:JSON对象
  • 内部字段:
{
  error: error //字符串类型,表明具体错误的原因。
}

示例代码

index.html中实现如下代码

<script type="text/javascript">
        apiready = function() {
            appsFlyer = api.require('appsFlyer');

              //注册AppsFlyer DEV_KEY,该DEV_KEY在AppsFlyer后台注册账户后生成。
            appsFlyer.trackAppLaunch({'af_dev_key' : '9ViHd36uhhEbDBiE4eFy47'},
                function(ret, error) {
                    if(ret.af_on_install_conversion_data_loaded) {
                        console.log('AppsFlyer get conversion data: ' + ret.af_on_install_conversion_data_loaded);
                        console.log('AppsFlyer af_status: ' + ret.af_status);
                        console.log('AppsFlyer af_message: ' + ret.af_message);
                        console.log('AppsFlyer is_first_launch: ' + ret.is_first_launch);
                    } else {
                        console.log(error.error);
                    }
                });
        };
</script>

可用性

Android系统

可提供的1.0.0及更高版本

reportSession

主动上报App打开的session数据。

reportSession()

示例代码

index.html中实现如下代码

<script type="text/javascript">
  apiready = function() {
      appsFlyer = api.require('appsFlyer');
      appsFlyer.reportSession();
  };
</script>

可用性

Android系统

可提供的1.0.0及更高版本

setDebugLog

打开或者关闭AppsFlyer SDK输出日志的功能。

setDebugLog({'open_appsflyer_debug_log' : true})

{'open_appsflyer_debug_log' : true}

  • open_appsflyer_debug_log: 固定字段名称,=true:打开AppsFlyer debug log. =false:关闭debug log.

示例代码

index.html中实现如下代码

<script type="text/javascript">
  apiready = function() {
      appsFlyer = api.require('appsFlyer');
      setDebugLog({'open_appsflyer_debug_log' : true});
  };
</script>

可用性

Android系统

可提供的1.0.0及更高版本

reportInAppEvent

应用内事件打点并上报到AppsFlyer Server。

reportInAppEvent(event)

event

  • 类型:JSON对象
  • 内部字段:
{
  "af_event_name":"event_name" //af_event_name为固定字段名称,event_name事件名称完全支持自定义。
  "af_event_value":{           //af_event_value为固定字段名称,事件value完全支持自定义。
                    "currency":"USD",
                    "af_renevue":"9.0",
                    "af_content_id":"88",
                    "param_1":"1",
                    "param_2":"2"
   }
}

示例代码

<script type="text/javascript">
  function sendInAppEvent() {
                appsFlyer = api.require('appsFlyer');
                var event = {
                "af_event_name":"purchase",
                "af_event_value":{
                    "currency":"USD",
                    "af_renevue":"9.0",
                    "af_content_id":"88",
                    "param_1":"1",
                    "param_2":"2"
                    }
                }
                appsFlyer.reportInAppEvent(event);
  }
</script>

可用性

Android系统

可提供的1.0.0及更高版本