基本信息
SDK名称:热力引擎 uni-app SDK v1.1.5
开发者名称:汇量云(北京)科技有限公司
SDK版本号:1.1.5
主要功能:热力引擎是一站式增长分析与发行决策平台,致力于帮助开发者搭建便捷、高效的数据管理中台,洞察业务运营全链路数据,制定更优增长决策。热力引擎支持全球全渠道数据管理,帮助开发者实现归因分析、用户粒度 ROI 分析,能有效衡量渠道价值,为投放和变现策略调优提供全方位数据支持。同时,提供应用内埋点及参数管理,配合多种分析模型与 AB 测试功能,全面还原用户全生命周期旅程,挖掘用户需求及业务增长点,快速验证并推行产品迭代优化,为开发者提升业务运营效率,实现规模化增长赋能。
适用范围:适用于Android5.0(APILevel21)及以上的操作系统。
隐私政策链接: https://www.solar-engine.com/privacyPolicy.html
合规指南:详见本页面底部合规指南内容。
第一步:获取 Appkey
Appkey 查询路径:资产管理-应用管理-16位 Appkey(即应用 ID)。

第二步:获取 SDK
如果您创建的产品数据存储区域是中国大陆,请下载
https://solar-sdk.oss-cn-beijing.aliyuncs.com/uniapp/SolarEngine-UniPlugin-App-cn-1.1.5.zip
如果您创建的产品数据存储区域是非中国大陆,请下载
https://solar-sdk.oss-cn-beijing.aliyuncs.com/uniapp/SolarEngine-UniPlugin-App-us-1.1.5.zip
获取Demo
https://solar-sdk.oss-cn-beijing.aliyuncs.com/uniapp/SolarEngine-UniPlugin-App-Demo.zip
第三步:集成 SDK
Android 配置
添加SDK所需依赖框架:
1.将第二步获取到的SDK压缩包解压,并将压缩包中的aar文件放入到HBuilder工程中的nativeplugins目录下,如果没有此目录,请点击创建nativeplugins目录,如下图所示
2.如果您是海外开发者请将SolarEngine-UniPlugin-App->Android目录下的aar文件以及SolarEngine-UniPlugin-App目录下package.json文件拷贝到第一步创建的nativeplugins目录下即可,以下是各个aar文件具体用途,请根据需求选择使用:
- se-plugin-meta-installReferrer-1.x.x.x.aar(用于meta归因,必须集成,否则SDK无法正常运行)
- solar-engine-core-us-1.x.x.x.aar(主sdk,必须集成,否则SDK无法正常运行)、
- SolarEngine-UniPlugin-App.aar(uniapp SDK,必须集成,否则SDK无法正常运行)
- solar-remote-config-us-1.x.x.x.aar(在线参数/ABTest SDK,选择集成,如果不使用在线参数模块不需要集成)
- se_oaid_lib中的aar文件(只针对有使用oaid功能的海外开发者,其他海外开发者如果不需要使用oaid功能不需要集成此包中的aar文件)
3.如果您是国内开发者请将SolarEngine-UniPlugin-App->Android目录下的aar文件以及SolarEngine-UniPlugin-App目录下的package.json文件拷贝到第一步创建的nativeplugins目录下即可,以下是各个aar文件具体用途,请根据自己开发需求选择使用:
- solar-engine-core-cn-1.x.x.x.aar(主sdk,必须集成,否则SDK无法正常运行)、
- SolarEngine-UniPlugin-App.aar(uniapp SDK,必须集成,否则SDK无法正常运行)
- solar-remote-config-cn-1.x.x.x.aar(在线参数/ABTest SDK,选择集成,如果不使用在线参数模块不需要集成)
- se-plugin-oaid-1.x.x.x.aar(oaid插件,国内开发者必须集成,否则SDK无法正常运行)
- com.hihonor.mcs-ads-identifier-1.0.2.301.aar(获取荣耀oaid使用,必须集成,否则影响荣耀机型客户数据)
- com.huawei.hms-ads-identifier-3.4.62.300.aar(获取华为oaid使用,必须集成,否则影响华为机型客户数据)
最终目录如下图所示:
1.国内版目录
2.海外版目录
如果打包时需要增加混淆,请将下方代码增加到混淆配置文件中
-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 及以上的操作系统。
添加SDK所需依赖框架
- 使用 Security.framework 来存储设备标识
- 使用 CoreTelephony.framework 来获取运营商信息
- 使用 AdSupport.framework 来获取 Advertising Identifier 信息
- 使用 SystemConfiguration.framework 来检查当前网络环境
- 使用 libsqlite3.dylib 用来存储数据
- 使用 AdServices.framework 获取广告归因数据
添加方法:
在工程目录中,选择 TARGETS-->Build Phases-->Link Binary With Libraries-->+ -->选择 Security.framework、SystemConfiguration.framework、CoreTelephony.framework、AdSupport.framework、libsqlite3.dylib 、AdServices.framework等库文件。
UnityFramework Target中添加-Objc参数,否则SDK初始化失败
添加方式: TARGETS -> UnityFramework -> Build Settings -> Other liner flags -> -Objc
新版 Xcode .dylib 以 .tbd 为后缀,添加对应动态库。
注:
第四步:预初始化
在应用安装后首次冷启动时,需要先预初始化 SDK,预初始化时 SDK 不采集任何个人信息也不会向热力引擎上报数据
const solarengine = uni.requireNativePlugin('SolarEngine-UniPlugin-App');
solarengine.preInitSDK(appkey);
第五步:初始化
SDK初始化参数
参数名称 | 参数含义 | 参数类型 | 是否必传 |
---|---|---|---|
appKey | 开发者在热力引擎后台申请的Appkey | string | 是 |
config | sdk初始化配置 | object | 是 |
initCallbackCode | 初始化回调 | callback(number) | 否 |
attrCallback | 归因回调 | callback(object) | 否 |
config中需要传一个app字段,参数说明如下(app内的都为Native iOS&Android参数)
参数名称 | 参数含义 | 参数类型 | 是否必传 |
---|---|---|---|
logEnabled | 是否开启日志打印,默认为关闭状态 | boolean | 否 |
isGDPRArea | 是否为GDPR区域,默认为false | boolean | 否 |
adPersonalizationEnabled | 用户是否允许Google将其数据用于个性化广告,开发者自定义,不设置则默认不上报该字段,只有Android调用有效,iOS没有此字段,无需设置此字段 | boolen | 否 |
adUserDataEnabled | 用户是否同意将其数据发送到Google,开发者自定义,不设置则默认不上报该字段,只有Android调用有效,iOS没有此字段,无需设置此字段 | boolean | 否 |
isDebugModel | 是否开启Debug调试模式,默认为关闭状态 | boolean | 否 |
isCoppaEnabled | 是否支持coppa合规。默认为false | boolean | 否 |
isKidsAppEnabled | 是否支持Kids App。默认为false | boolean | 否 |
ios | iOS端独有参数 | object | 否 |
remoteConfig | 在线参数初始化配置 | object | 否 |
iOS 参数说明
参数名称 | 参数含义 | 参数类型 | 是否必传 |
---|---|---|---|
attAuthorizationWaitingInterval | iOS首次上报事件支持设置ATT授权等待,最多支持等待120秒. 设置等待后SDK会等用户ATT授权或等待超时才上报Install等事件。 单位:秒 |
number | 否 |
remoteConfig参数说明(在线参数功能)
参数名称 | 参数含义 | 参数类型 | 是否必传 |
---|---|---|---|
logEnabled | 是否开启日志打印,默认为关闭状态 | boolean | 否 |
enable | 是否启用在线参数SDK,默认为关闭状态,必传字段 | boolean | 否 |
mergeType |
SDK配置合并策略,默认情况下服务端配置跟本地缓存配置合并,具体释义参考下方参数解释,可选字段 0: app首次启动或版本更新时, 使用服务端配置跟用户默认配置合并,此方法可以清除本地缓存配置 1: 使用服务端配置跟用户本地已有缓存配置合并,在线参数SDK默认合并策略 |
number | 否 |
customIDProperties | 自定义ID,跟用户在后台设置的使用自定义ID匹配对应 | object | 否 |
customIDEventProperties | 自定义ID事件属性值,跟用户在后台设置的使用自定义ID事件属性值匹配对应,可选字段 | object | 否 |
customIDUserProperties | 自定义ID用户属性值,跟用户在后台设置的使用自定义ID用户属性值匹配对应,可选字段 | object | 否 |
初始化示例
solarengine.initSDK(
appkey,
{
app:{
logEnabled: true,
}
},
(initCallbackCode) => {
if (initCallbackCode == 0) {
console.log("[SEUni-App] 初始化成功")
} else {
console.log("[SEUni-App] 初始化失败")
}
},null
);
// 把solarengine挂在到全局,以便其他页面使用
globalThis.solarengine = solarengine;
初始化回调 code 码:
0 | 初始化成功 |
101 | SDK未预初始化 |
102 | appkey非法 |
103 | context为null(仅Android生效) |
104 |
distinct_id生成失败(仅Android生效) |
获取归因回调信息
初始化时获取归因结果
SDK提供获取归因结果信息接口,开发者可使用归因信息做埋点等逻辑处理
SDK提供两种方式获取归因结果信息
1、设置归因结果回调:当SDK获取归因结果成功或者失败时会给出回调(此接口为异步回调)
2、直接获取归因结果:直接从SDK缓存中获取归因结果,SDK还没归因结果时直接返回nil(此接口为同步返回)
监听归因结果示例代码: