打开与index.js同级目录下的game.js文件,添加两句代码
需要先接入微信团队开源的 Unity 转微信小游戏的插件 才会有这个文件
参考 获取SDK 引入solarengine-unity-sdk.unitypackage
参考腾讯小游戏广告SDK接入文档下载腾讯小游戏广告SDK,将index.js 文件放入wechat-default文件夹下,wechat-default文件夹一般在WX-WASM-SDK-V2\Runtime\wechat-default
打开与index.js同级目录下的game.js文件,添加两句代码
需要先接入微信团队开源的 Unity 转微信小游戏的插件 才会有这个文件
import { SDK } from './index.js';
GameGlobal.SDK=SDK;
SolarEngine.Analytics.preInitSeSdk("开发者申请的appkey");
public static void initSeSdk(string appKey, SEConfig seConfig)
参数说明
参数名 | 参数含义 | 参数类型 | 是否必传 |
appkey | 第一步获取的 appkey | String | 是 |
seConfig | SDK 配置项 | SEConfig | 是 |
SEConfig 参数说明
参数名称 | 参数含义 | 参数类型 | 是否必传 |
---|---|---|---|
logEnabled | 是否开启日志打印,默认为关闭状态 | bool | 否 |
isDebugModel | 是否开启Debug调试模式,默认为关闭状态 | bool | 否 |
miniGameInitParams
|
小游戏相关配置 | MiniGameInitParams | 设置初始化腾讯广告SDK, 则此参数必填。 |
MiniGameInitParams 参数说明
参数名称 |
参数含义 |
参数类型 |
是否必传 |
openid |
小游戏openid, 如不传则由SDK获取当前的openid(必须在SE后台应用管理中填写AppID和AppSecret;并前往抖音/微信后台进行配置,详见后台配置) |
string |
否 |
anonymous_openid |
小游戏anonymous_openid, 如不传则由SDK获取当前的anonymous_openid(必须在SE后台应用管理中填写AppID和AppSecret,同openid)「只抖音有此参数」 |
string |
否 |
unionid |
小游戏unionid |
string |
否 |
isInitTencentAdvertisingGameSDK |
是否初始化腾讯小游戏广告SDK,默认false不开启 |
bool |
设置初始化腾讯广告SDK, 则此参数必填。 |
reportingToTencentSdk |
启动事件是否上报给腾讯,默认3。 |
int |
否 |
tencentAdvertisingGameSDKInitParams |
腾讯小游戏广告SDK初始化必需参数。 |
TencentAdvertisingGameSDKInitParams
|
设置初始化腾讯广告SDK, 则此参数必填。 |
TencentAdvertisingGameSDKInitParams参数说明
类型参数 | 类型 | 是否必填 | 说明 |
---|---|---|---|
user_action_set_id | int | 是 | 数据源ID |
secret_key | string | 是 | 加密key |
appid | string | 是 | 微信小游戏APPID,wx开头 |
tencentSdkIsAutoTrack
|
bool | 否 | 腾讯SDK是否自动采集,默认true |
SEConfig seConfig = new SEConfig();
MiniGameInitParams initParams = new MiniGameInitParams();
initParams.anonymous_openid = "your anonymous_openid";
initParams.unionid = "your unionid";
initParams.openid = "your openid";
seConfig.logEnabled = true;
TencentAdvertisingGameSDKInitParams tencentAdvertisingGameSDKInitParams = new TencentAdvertisingGameSDKInitParams();
tencentAdvertisingGameSDKInitParams.user_action_set_id =user_action_set_id;
tencentAdvertisingGameSDKInitParams.secret_key = "secret_key";
tencentAdvertisingGameSDKInitParams.appid = "appid";
initParams.tencentAdvertisingGameSDKInitParams= tencentAdvertisingGameSDKInitParams;
initParams.reportingToTencentSdk = 1;
initParams.isInitTencentAdvertisingGameSDK = true;
seConfig.miniGameInitParams = initParams;
SolarEngine.Analytics.initSeSdk("开发者申请的appkey",seConfig);
付费购买时,报送该事件,用于进行购买及内购收入分析。
public static void trackPurchase(ProductsAttributes attributes)
ProductsAttributes 类参数说明:
参数名称 | 参数含义 | 参数类型 | 是否必传 |
reportingToTencentSdk | 上报事件给腾讯。如果初始化时,设置初始化腾讯广告SDK, 则此参数必填。 1:全量上报给腾讯 2:非全量上报给腾讯 3:不上报给腾讯 |
int | 是 |
order_id | 本次购买由系统生成的订单 ID | string | 否 |
pay_amount | 本次购买支付的金额,单位:元 | double | 是 |
currency_type | 支付的货币类型,遵循《ISO 4217国际标准》,如 CNY、USD | string | 是 |
pay_type | 支付方式:如 alipay、weixin、applepay、paypal 等 | string | 否 |
product_id | 购买商品的ID | string | 否 |
product_name | 商品名称 | string | 否 |
product_num | 购买商品的数量 | Int | 否 |
paystatus | 支付状态 Success:成功 Fail:失败 Restored:恢复 |
PayStatus | 是 |
fail_reason | 支付失败的原因 | string | 否 |
customProperties
|
自定义属性 | Dictionary | 否 |
注:支付失败原因 failReason 参数仅在 payStatus 参数为 fail 支付失败时才会传入,其他状态传""即可。
调用示例:
ProductsAttributes productsAttributes = new ProductsAttributes();
productsAttributes.product_name = "product_name";
productsAttributes.product_id = "product_id";
productsAttributes.product_num = 8;
productsAttributes.currency_type = "CNY";
productsAttributes.order_id = "order_id";
productsAttributes.fail_reason = "fail_reason";
productsAttributes.paystatus =PayStatus.Success;
productsAttributes.pay_type = "wechat";
productsAttributes.pay_amount = 9.9;
productsAttributes.customProperties = getCustomProperties();
productsAttributes.reportingToTencentSdk = 1;
SolarEngine.Analytics. trackPurchase(productsAttributes);
调用 trackRegister 方法可以上报注册事件
方法示例
public static void trackRegister(RegisterAttributes attributes)
RegisterAttributes 类参数介绍:
参数名称 | 参数含义 | 参数类型 | 是否必传 |
eportingToTencentSdk | 上报事件给腾讯。如果初始化时,设置初始化腾讯广告SDK, 则此参数必填。 1:全量上报给腾讯 2:非全量上报给腾讯 3:不上报给腾讯 |
int
|
是 |
register_type | 注册类型如 "WeChat"、"QQ" 等自定义值 | string | 是,不超过 32 字符 |
register_status | 注册状态 如 "success" | string | 否 |
customProperties | 自定义属性 | Dictionary | 否 |
示例代码:
RegisterAttributes RegisterAttributes = new RegisterAttributes();
RegisterAttributes.register_type = "QQ_test";
RegisterAttributes.register_status = "success";
RegisterAttributes.customProperties = getCustomProperties();
RegisterAttributes.reportingToTencentSdk = 1;
SolarEngine.Analytics.trackRegister(RegisterAttributes);
已经注册的小游戏用户变为沉默用户后,再次进入小游戏,定义为沉默唤起行为,建议的沉默唤起周期为 7、14、30 天,如果业务目前使用其他回流周期也支持传任意 N 值(数字,单位天)。
方法示例
public static void trackReActive(ReActiveAttributes attributes)
ReActiveAttributes参数说明
参数名称 | 参数含义 | 参数类型 | 是否必传 |
reportingToTencentSdk | 上报事件给腾讯。如果初始化时,设置初始化腾讯广告SDK, 则此参数必填。 1:全量上报给腾讯 2:非全量上报给腾讯 3:不上报给腾讯 |
int | 是 |
backFlowDay | 回流天数 | int | 是 |
customProperties | 自定义参数 | Dictionary | 否 |
调用示例
ReActiveAttributes registerData = new ReActiveAttributes
{
reportingToTencentSdk=1,
backFlowDay=7,
customProperties = new Dictionary<string, object> { { "one", "1" } }
};
SolarEngine.Analytics.trackReActive(registerData);
在用户收藏小游戏的时候上报,包括收藏、添加到我的小程序、添加到桌面以及小游戏自己定义的收藏逻辑。
public static void trackAddToWishlist(AddToWishlistAttributes attributes)
AddToWishlistAttributes参数说明
参数名称 |
参数含义 |
参数类型 |
是否必传 |
reportingToTencentSdk |
上报事件给腾讯。如果初始化时,设置初始化腾讯广告SDK, 则此参数必填。 |
int |
是 |
addToWishlistType |
收藏类型, 可选类型枚举值:普通收藏(default)/添加到我的小程序(my)/添加到桌面(desktop)/其他(others) |
string |
是 |
customProperties |
自定义参数 |
Dictionary |
否 |
调用示例:
AddToWishlistAttributes addToWishlistData = new AddToWishlistAttributes
{
reportingToTencentSdk=1,
addToWishlistType = SolarEngine.Analytics.WishlistType_MY,
customProperties = new Dictionary<string, object> { { "one", "1" } }
};
SolarEngine.Analytics.trackAddToWishlist(addToWishlistData);
在用户分享小游戏的时候上报,需区分是【转发给朋友】还是【分享到朋友圈】
public static void trackShare(ShareAttributes attributes)
ShareAttributes参数说明
参数名称 |
参数含义 |
参数类型 |
是否必传 |
reportingToTencentSdk |
上报事件给腾讯。如果初始化时,设置初始化腾讯广告SDK, 则此参数必填。 1:全量上报给腾讯 2:非全量上报给腾讯 3:不上报给腾讯 |
int |
是 |
mpShareTarget |
分享类型, 可选类型枚举值:转发给朋友(APP_MESSAGE)/分享到朋友圈(TIME_LINE) |
int |
是 |
customProperties |
自定义参数 |
Dictionary |
否 |
调用示例:
// 1、转发给朋友
WX.OnShareAppMessage(() =>
{
ShareAttributes shareData = new ShareAttributes
{
reportingToTencentSdk = 1,
mpShareTarget = SolarEngine.Analytics.ShareTarget_APP_MESSAGE,
customProperties = new Dictionary<string, object> { { "one", "1" } }
};
SolarEngine.Analytics.trackShare(shareData);
});
// 2、分享到朋友圈
WX.OnShareTimeline((x) =>
{
ShareAttributes shareData = new ShareAttributes
{
reportingToTencentSdk = 1,
mpShareTarget = SolarEngine.Analytics.ShareTarget_TIME_LINE,
customProperties = new Dictionary<string, object> { { "one", "1" } }
};
SolarEngine.Analytics.trackShare(shareData);
});
// 3、主动拉起转发时上报一条分享行为(先执行上报后呼起分享上报成功率更高)
ShareAttributes shareData = new ShareAttributes
{
reportingToTencentSdk = 1,
mpShareTarget = SolarEngine.Analytics.ShareTarget_APP_MESSAGE,
customProperties = new Dictionary<string, object> { { "one", "1" } }
};
SolarEngine.Analytics.trackShare(shareData);
WX.OnShareAppMessage();
用户在小游戏内创建角色成功后上报 CREATE_ROLE 行为,可添加创建角色相关的自定义参数,如角色名等。
public static void trackCreateRole(CreateRoleAttributes attributes)
CreateRoleAttributes参数说明:
参数名称 |
参数含义 |
参数类型 |
是否必传 |
reportingToTencentSdk |
上报事件给腾讯。如果初始化时,设置初始化腾讯广告SDK, 则此参数必填。 1:全量上报给腾讯 2:非全量上报给腾讯 3:不上报给腾讯 |
int |
是 |
mpRoleName |
角色名称 |
string |
是 |
调用示例:
CreateRoleAttributes createRoleData = new CreateRoleAttributes
{
reportingToTencentSdk=1,
mpRoleName = "role_name",
};
SolarEngine.Analytics.trackCreateRole(createRoleData);
在用户完成游戏新手指引教程或者完成教程关卡后上报 TUTORIAL_FINISH 行为。
public static void trackTutorialFinish(TutorialFinishAttributes attributes)
TutorialFinishAttributes参数说明:
参数名称 |
参数含义 |
参数类型 |
是否必传 |
reportingToTencentSdk |
上报事件给腾讯。如果初始化时,设置初始化腾讯广告SDK, 则此参数必填。 1:全量上报给腾讯 2:非全量上报给腾讯 3:不上报给腾讯 |
int |
是 |
调用示例:
TutorialFinishAttributes tutorialFinishData = new TutorialFinishAttributes
{
reportingToTencentSdk=1,
};
SolarEngine.Analytics.trackTutorialFinish(tutorialFinishData);
用户在小游戏内的完成游戏等级提升时上报 UPDATE_LEVEL 行为,可添加自定义参数,如当前游戏等级、游戏能量等。
public static void trackUpdateLevel( UpdateLevelAttributes attributes){
UpdateLevelAttributes参数说明:
参数名称 |
参数含义 |
参数类型 |
是否必传 |
reportingToTencentSdk |
上报事件给腾讯。如果初始化时,设置初始化腾讯广告SDK, 则此参数必填。 1:全量上报给腾讯 2:非全量上报给腾讯 3:不上报给腾讯 |
int |
|
beforeUpgrade |
提升前等级 |
int |
是 |
afterUpgrade |
提升后等级 |
int |
是 |
customProperties |
自定义参数 |
Dictionary<string, object> |
否 |
调用示例:
UpdateLevelAttributes updateLevelData = new UpdateLevelAttributes
{
reportingToTencentSdk=1,
beforeUpgrade = 10,
afterUpgrade = 20,
customProperties = new Dictionary<string, object> { { "one", "1" } }
};
SolarEngine.Analytics.trackUpdateLevel(updateLevelData);
用户在小游戏内浏览商城页面时上报。
public static void trackViewContentMall(ViewContentMallAttributes attributes)
ViewContentMallAttributes参数说明:
参数名称 |
参数含义 |
参数类型 |
是否必传 |
reportingToTencentSdk |
上报事件给腾讯。如果初始化时,设置初始化腾讯广告SDK, 则此参数必填。 1:全量上报给腾讯 2:非全量上报给腾讯 3:不上报给腾讯 |
int |
是 |
customProperties |
自定义参数 |
Dictionary |
否 |
调用示例:
ViewContentMallAttributes viewContentMallData = new ViewContentMallAttributes
{
reportingToTencentSdk=1,
customProperties = new Dictionary<string, object> { { "one", "1" } }
};
SolarEngine.Analytics.trackViewContentMall(viewContentMallData);
用户在小游戏内浏览商城页面时上报。
public static void trackViewContentActivity(ViewContentActivitAttributes attributes)
ViewContentActivitAttributes参数说明
参数名称 |
参数含义 |
参数类型 |
是否必传 |
reportingToTencentSdk |
上报事件给腾讯。如果初始化时,设置初始化腾讯广告SDK, 则此参数必填。 1:全量上报给腾讯 2:非全量上报给腾讯 3:不上报给腾讯 |
int |
是 |
customProperties |
自定义参数 |
Dictionary |
否 |
调用示例:
ViewContentActivitAttributes viewContentActivityData = new ViewContentActivitAttributes
{
reportingToTencentSdk=1,
customProperties = new Dictionary<string, object> { { "one", "1" } }
};
SolarEngine.Analytics.trackViewContentActivity(viewContentActivityData);