菜单

快速集成

基本信息

SDK名称:热力引擎 LayaAir SDK v1.0.3

开发者名称:汇量云(北京)科技有限公司

SDK版本号:1.0.3

主要功能:热力引擎是一站式增长分析与发行决策平台,致力于帮助开发者搭建便捷、高效的数据管理中台,洞察业务运营全链路数据,制定更优增长决策。热力引擎支持全球全渠道数据管理,帮助开发者实现归因分析、用户粒度 ROI 分析,能有效衡量渠道价值,为投放和变现策略调优提供全方位数据支持。同时,提供应用内埋点及参数管理,配合多种分析模型与 AB 测试功能,全面还原用户全生命周期旅程,挖掘用户需求及业务增长点,快速验证并推行产品迭代优化,为开发者提升业务运营效率,实现规模化增长赋能。

适用范围:适用于Android5.0(APILevel21)及以上的操作系统。

隐私政策链接: https://www.solar-engine.com/privacyPolicy.html

合规指南:详见本页面底部合规指南内容。

第一步:获取 Appkey

Appkey 查询路径:资产管理-应用管理-16位 Appkey(即应用 ID)。

文章图片

第二步:获取 SDK

如果您创建的产品数据存储区域是中国大陆,请下载:  SolarEngineSDK-LayaAir-CN-1.0.3

如果您创建的产品数据存储区域是非中国大陆,请下载: SolarEngineSDK-LayaAir-US-1.0.3

 

SDK Demo 下载地址: SolarEngineSDK-LayaAir-Demo

下载SDK后需要做以下步骤才行运行Demo:

1、demo中的SDK非中国版SDK, 如果您是中国大陆的请使用上面 SolarEngineSDK-LayaAir-CN  替换掉Demo中的 SolarEngineSDK

2、LayaAir导出Android、iOS原生项目后把SolarEngineSDK放入到原生项目中并再次导出Android、iOS原生项目即可,具体操作见下面 《集成SDK》

 

第三步:集成 SDK

Android 配置

 

添加SDK所需依赖框架:

1、导出Android 原生项目

在LayaAir 编辑中 顶部 文件->构建发布 选择Android 平台,点击构建后会生成一个Android 原生项目

2、添加SolarEngine Android SDK 依赖

使用Android Studio 打开刚才导出的Android 项目编译(确认编译没问题)

maven 仓库配置

需要在项目根目录的 build.gradle 文件中添加 maven 仓库配置,具体配置如下:

allprojects {
    repositories {
        google()
        jcenter()
        mavenCentral()
        maven {
            url 'https://artifact.bytedance.com/repository/pangle'
        }
        maven {
            url "https://developer.huawei.com/repo/"
        }
        maven {
            url "https://dl-maven-android.mintegral.com/repository/se_sdk_for_android/"
        }
        maven { url 'https://developer.hihonor.com/repo' }
        flatDir {
            dirs 'libs' // This way we can find the .aar files in libs folder
        }
        maven { url 'https://jitpack.io' }
        maven {
            url 'https://maven.google.com/'
            name 'Google'
        }
    }
}

 

 

请将下方代码添加到 project 的 build.gradle 中

 中国大陆,请使用大陆版SDK

implementation 'com.reyun.solar.engine.china:solar-engine-core:1.3.4'

 非中国大陆,请使用海外版SDK

implementation 'com.reyun.solar.engine.oversea:solar-engine-core:1.3.4'

 

3、添加SolarEngine Android SDK LayaAir Wrapper 文件

把下载好的SolarEngineSDK/Android/SELayaProxyApi.java文件放在项目的/release/android/LayaProject3/app/src/main/java/demo目录下

 

如果打包时需要增加混淆,请将下方代码增加到混淆配置文件中

-keep class com.reyun.** {*; }
-keep class route.**{*;}
-keep interface com.reyun.** {*; }
-keep interface route.**{*;}
-dontwarn com.reyun.**
-dontwarn org.json.**
-keep class org.json.**{*;}
# Google lib库
-keep class com.google.android.gms.ads.identifier.AdvertisingIdClient {
    com.google.android.gms.ads.identifier.AdvertisingIdClient$Info getAdvertisingIdInfo(android.content.Context);
}
-keep class com.google.android.gms.ads.identifier.AdvertisingIdClient$Info {
    java.lang.String getId();
    boolean isLimitAdTrackingEnabled();
}
-keep public class com.android.installreferrer.** { *; }
# 如果使用到了获取oaid插件,请添加以下混淆策略
-keep class com.huawei.hms.**{*;}
-keep class com.hihonor.**{*;}

 

iOS 配置

支持Xcode版本:14.0或更高

适用范围:适用于 iOS 11.0 及以上的操作系统。

1、导出iOS 原生项目

在LayaAir 编辑中 顶部 项目->构建发布 选择iOS 平台,点击构建后会生成一个iOS 原生项目

2、添加SolarEngine iOS SDK 依赖

2.1 找到release/ios/ios_project/LayaProject3/目录,把下载好的SolarEngineSDK iOS 相关的文件放在release/ios/ios_project/LayaProject3/ 中

 

2.1 把 iOS 目录添加到LayaProject3 XCode项目中

点击Finish

 

LayaProject3项目Build Setttings 中的Other Linker Flags添加-ObjC

 

第四步:预初始化

在应用安装后首次冷启动时,需要先预初始化 SDK,预初始化时 SDK 不采集任何个人信息也不会向热力引擎上报数据

 

import solarengine from './Script/SolarEngine.js'
// ./Script/SolarEngine.js 请改为SDK在您项目的实际目录

solarengine.preInitSDK(appkey)

 

第五步:初始化

SDK初始化参数

参数名称 参数含义 参数类型 是否必传
appKey 开发者在热力引擎后台申请的Appkey string 是
config sdk初始化配置 Object 是

 

config

一、核心功能开关配置

控制 SDK 核心业务能力的启用 / 停用,直接决定归因、分析等核心服务是否生效。注:关闭相关核心功能开关将影响数据上报链路,您将无法在热力引擎后台正常使用该模块的全部功能。
 
参数名称 参数含义 参数类型 是否必传
enableAttribution 是否开启归因服务,默认开启。关闭后将停用全部归因相关能力,无法获取归因结果、延迟deeplink、deeplink等相关服务;若同时关闭分析服务,SDK 将停止上报所有数据。 boolean 否
enableAnalytics  是否开启分析服务,默认开启。关闭后 A/B 测试、在线参数等所有分析类功能均无法使用;若同时关闭归因服务,SDK 将不再上报任何数据。 boolean 否

二、辅助功能开关

参数名称 参数含义 参数类型 是否必传
logEnabled 是否开启日志打印,默认为关闭状态 boolean 否
isGDPRArea 是否为GDPR区域,默认为false boolean 否
adPersonalizationEnabled 用户是否允许Google将其数据用于个性化广告,开发者自定义,不设置则默认不上报该字段,只有Android调用有效,iOS没有此字段,无需设置此字段 boolen 否
adUserDataEnabled 用户是否同意将其数据发送到Google,开发者自定义,不设置则默认不上报该字段,只有Android调用有效,iOS没有此字段,无需设置此字段 boolean 否
fbAppID 如果海外开发者需要用到meta归因,此处设置meta appid,只有Android调用有效,iOS没有此字段,无需设置此字段 string 否
attAuthorizationWaitingInterval iOS首次上报事件支持设置ATT授权等待,最多支持等待120秒. 设置等待后SDK会等用户ATT授权或等待超时才上报Install等事件。
单位:秒。   Android 没有此字段
number 否
isDebugModel 是否开启Debug调试模式,默认为关闭状态 boolean 否
isCoppaEnabled 是否支持coppa合规。默认为false boolean 否
isKidsAppEnabled 是否支持Kids App。默认为false boolean 否
enableDelayDeeplink 是否开启延迟deeplink, 默认为false boolean 否
remoteConfig 在线参数初始化配置 SEUniRemoteConfig 否
enableSeparatedAttribution 是否启用新版归因功能,启动后能快速获取对应的归因结果。 boolean 否

三、数据采集开关

控制ipv6、OAID、UA等参数等数据是否采集。注:关闭对应数据采集参数后,将会影响归因、分析模块的数据能力,您将无法在热力引擎后台正常使用相关功能。

参数名称 参数含义 参数类型 是否必传
enableLanguage 是否采集设备语言, 不采集设置为false,默认 true(采集) boolean 否
enableLocale 是否采集设备所在地区, 不采集设置为false,默认 true(采集) boolean 否
enableTimeZone 是否采集设备所在时区, 不采集设置为false,默认 true(采集) boolen 否
enableScreenWH 是否采集屏幕宽度/屏幕高度, 不采集设置为false,默认 true(采集) boolean 否
enableNetworkType 是否采集网络状态, 不采集设置为false,默认 true(采集) string 否
enableUA 是否采集UA, 不采集设置为false,默认 true(采集) number 否
enableIPV6 是否采集ipv6地址,默认为YES,采集 (仅中国大陆支持) boolean 否

 

初始化示例

import solarengine from './Script/SolarEngine.js'

let appkey = ''

solarengine.initSDKCallback((code: number) => {

    if (code == 0) {
        console.log("init success ...")
    } else {
        console.log("init fail ...")
    }
})

solarengine.preInitSDK(appkey)

let config = {
    "logEnabled": true
};

solarengine.initSDK(appkey, config)

 

初始化回调 code 码:

0 初始化成功
101 SDK未预初始化
102 appkey非法
103 context为null(仅Android生效)
104

distinct_id生成失败(仅Android生效)

 

获取归因回调信息

 

初始化时获取归因结果

「新版」通过回调获取归因结果-方法示例(推荐)

import solarengine from './Script/SolarEngine.js'

let appkey = ''

// 监听拉新归因结果
solarengine.uaAttributionCallback((result: any) => {
    let code = result.code
    if (code == 0) {
        console.log("[LayaAir]: UA attribution success ...")
        let data = result.data
        console.log(JSON.stringify(data))
    } else {
        console.log("UA attribution fail ...")
        console.log(code)
    }
})


// 监听拉活归因结果
solarengine.reAttributionCallback((result: any) => {
    let code = result.code
    if (code == 0) {
        console.log("[LayaAir]: RE attribution success ...")
        let data = result.data
        console.log(JSON.stringify(data))
    } else {
        console.log("RE attribution fail ...")
        console.log(code)
    }
})



solarengine.preInitSDK(appkey)

let config = {
"logEnabled": true,
"enableSeparatedAttribution": true
};

solarengine.initSDK(appkey, config)

 

「新版」直接获取归因结果-方法示例(推荐)

除了在初始化时添加归因回调,也可业务后续主动调用 API 读取归因结果。
// 直接获取拉新归因结果
solarengine.getUAAttributionData((attribution: string) => {
    console.log("[LayaAir]: ua attribution callback");
    console.log(JSON.stringify(attribution));
})


// 直接获取拉活归因结果
solarengine.getREAttributionData((attribution: string) => {
    console.log("[LayaAir]: re attribution callback");
    console.log(JSON.stringify(attribution));
})

 

 

 

归因结果示例

  归因errorCode 描述及 归因结果详情见:归因结果详情

 

「旧版」回调获取归因结果-方法示例(即将下线)  

import solarengine from './Script/SolarEngine.js'

let appkey = ''

solarengine.attributionCallback((result: any) => {
    let code = result.code
    if (code == 0) {
        console.log("attribution success ...")
        let data = result.data
        console.log(JSON.stringify(data))
    } else {
        console.log("attribution fail ...")
        console.log(code)
    }
})

solarengine.preInitSDK(appkey)

let config = {
"logEnabled": true
};

solarengine.initSDK(appkey, config)
 

 

直接获取归因结果

solarengine.getAttribution((attribution: string) => {
    console.log("[LayaAir]: attribution callback");
    console.log(JSON.stringify(attribution));
})

  

 

最近修改: 2026-09-08Powered by