Skip to content

插件接口

IMPORTANT

本文档中所述的插件SDK,均为可选功能。 游戏可以根据自己的运营需求进行处理。
所有的统计插件SDK,都做了可插拔设计, 需要则用,不需要则不用, 不会对核心业务逻辑产生影响。

插件配置说明

3、插件配置

为了实现插件的可插拔, 我们在主工程的Info Plist中,定义了一个配置节点:UGSDK。 在该节点中配置插件需要使用的插件信息和参数:

点击查看插件配置样例
xml
<key>UGSDK</key>
<dict>
    <key>Plugins</key>
    <array>
        <dict>
            <key>name</key>
            <string>UG_Plugin_AppLog</string>        
            <key>TT_AppID</key>
            <string>638743</string>
        </dict>
        <dict>
            <key>name</key>
            <string>UG_Plugin_GDT</string>            
            <key>actionSetId</key>
            <string>1105943961</string>
            <key>secretKey</key>
            <string>a5b9c17846b8626c3b5bc49f96dcd9f7</string>
        </dict>
        <dict>
            <key>name</key>
            <string>UG_Plugin_ReYun</string>            
            <key>appkey</key>
            <string>124af55856e502e6</string>
            <key>debugMode</key>
            <string>1</string>
        </dict>
        <dict>
            <key>name</key>
            <string>UG_Plugin_GravityEngine</string>            
            <key>accessToken</key>
            <string>hZUrIkznwvzf6sNgSj8CwQ5uvYdPgqXa</string>
            <key>appID</key>
            <string>25734096</string>
        </dict>        
    </array>
</dict>

插件配置节点参数说明:

参数名称参数定义参数说明
name插件名称和UGSDK中每个插件模块的名称一致
其他插件参数第三方插件需要的参数,每个插件不同,具体请参考下面插件部分的说明

统计埋点插件

SDK中通过插件抽象的形式, 定义了统计埋点插件:UG_Analytics, 并接入了多个第三方买量投放埋点上报SDK,基本不需要游戏层调用,即可实现数据的自动上报。

1、内置埋点

SDK内部已经预制了一些数据埋点的时机,参考如下:

事件名称事件接口事件说明
SDK初始化开始onInitBegin在SDK初始化接口开始调用时触发
SDK初始化成功onInitSuc在SDK初始化接口成功后触发
SDK登录开始onLoginBegin在SDK登录接口开始调用时触发
SDK登录成功onLogin在SDK登录成功后触发
SDK账号注册成功onRegister在玩家首次登录/注册成功时触发
SDK支付开始onPurchaseBegin在SDK支付接口开始调用时触发
SDK支付成功onPurchase在SDK支付成功后触发
创建角色成功onCreateRole在游戏层调用角色上报接口并且dataType是1时触发
进入游戏成功onEnterGame在游戏层调用角色上报接口并且dataType是2时触发
角色升级成功onLevelUp在游戏层调用角色上报接口并且dataType是3时触发

2、自定义上报

如果游戏层有自己其他的事件需要上报到第三方统计平台, 可以调用如下接口:

objc
[[UG_Analytics sharedInstance] onCustomEvent:"eventName" params:params];       //eventName:事件名称(英文);prams: 事件参数

3、已接入的插件

针对统计埋点插件, 当前SDK中已经接入了头条巨量、腾讯广点通、快手、热云:

插件名称插件模块插件说明
头条巨量UG_Plugin_AppLog在字节系app投放时必选
腾讯广点通UG_Plugin_GDT在腾讯系app投放时必选
热力引擎(热云)UG_Plugin_ReYun使用热云做买量监测时必选
引力引擎UG_Plugin_GravityEngine使用引力引擎做买量监测时必选
3.1 点击查看【头条巨量】插件SDK的配置

3.1.1 依赖库配置

正常提供SDK接入文件时,就已经将相关的依赖库放在SDKDemo/Libs中了。 如果你发现里面没有头条买量相关插件的库(libUG_Plugin_AppLog.a等),可以让SDK同学,做如下处理:

1) 将SDK工程/UG_Plugin_AppLog/Libs下,将其拷贝并添加到游戏工程中;
2) 在SDK工程中,选择UG_Plugin_AppLog这个Target,编译该模块;编译成功后,在Products下会生成libUG_Plugin_AppLog.a文件,将其也拷贝并添加到游戏工程中

3.1.2 参数配置

如果要使用头条买量插件, 需要去头条巨量广告投放平台, 创建应用,拿到appID等参数。 之后,我们需要在Info Plist的UGSDK->Plugins节点中,配置该插件:

xml
<dict>
    <key>name</key>
    <string>UG_Plugin_AppLog</string>        
    <key>IDFA_Enable</key>
    <string>1</string>
</dict>

插件自定义参数说明:

参数名称参数定义参数说明
IDFA_Enable是否允许获取idfa
3.2 点击查看【腾讯广点通】插件SDK的配置

3.2.1 依赖库配置

正常提供SDK接入文件时,就已经将相关的依赖库放在SDKDemo/Libs中了。 如果你发现里面没有广点通相关插件的库(libUG_Plugin_GDT.a等),可以让SDK同学,做如下处理:

1) 将SDK工程/UG_Plugin_GDT/Libs下,将其拷贝并添加到游戏工程中;
2) 在SDK工程中,选择UG_Plugin_GDT这个Target,编译该模块;编译成功后,在Products下会生成libUG_Plugin_GDT.a文件,将其也拷贝并添加到游戏工程中

3.2.2 参数配置

如果要使用广点通插件, 需要去腾讯投放平台, 创建应用,拿到appID等参数。 之后,我们需要在Info Plist的UGSDK->Plugins节点中,配置该插件:

xml
<dict>
    <key>name</key>
    <string>UG_Plugin_GDT</string>            
    <key>actionSetId</key>
    <string>1105943961</string>
    <key>secretKey</key>
    <string>a5b9c17846b8626c3b5bc49f96dcd9f7</string>
</dict>

插件自定义参数说明:

参数名称参数定义参数说明
actionSetIdactionSetId腾讯投放平台, 创建应用后拿到的actionSetId参数
secretKeysecretKey腾讯投放平台, 创建应用后拿到的secretKey参数
3.3 点击查看【热云】插件SDK的配置

3.3.1 依赖库配置

正常提供SDK接入文件时,就已经将相关的依赖库放在SDKDemo/Libs中了。 如果你发现里面没有热云相关插件的库(libUG_Plugin_ReYun.a等),可以让SDK同学,做如下处理:

1) 将SDK工程/UG_Plugin_ReYun/Libs下,将其拷贝并添加到游戏工程中;
2) 在SDK工程中,选择UG_Plugin_ReYun这个Target,编译该模块;编译成功后,在Products下会生成libUG_Plugin_ReYun.a文件,将其也拷贝并添加到游戏工程中

3.3.2 参数配置

如果要使用热云插件, 需要去热云投放平台, 创建应用,拿到appID等参数。 之后,我们需要在Info Plist的UGSDK->Plugins节点中,配置该插件:

xml
<dict>
    <key>name</key>
    <string>UG_Plugin_ReYun</string>        
    <key>appkey</key>
    <string>11111111</string>
    <key>debugMode</key>
    <string>1</string>
</dict>

插件自定义参数说明:

参数名称参数定义参数说明
appkey应用ID热云投放平台, 创建应用后拿到的appkey参数
debugMode详细日志是否输出详细的上报日志,联调时设置为1,正式上线时,设置为0
3.4 点击查看【引力引擎】插件SDK的配置

3.4.1 依赖库配置

正常提供SDK接入文件时,就已经将相关的依赖库放在SDKDemo/Libs中了。 如果你发现里面没有引力引擎相关插件的库(libUG_Plugin_GravityEngine.a等),可以让SDK同学,做如下处理:

1) 将SDK工程/UG_Plugin_GravityEngine/Libs下,将其拷贝并添加到游戏工程中;
2) 在SDK工程中,选择UG_Plugin_GravityEngine这个Target,编译该模块;编译成功后,在Products下会生成libUG_Plugin_GravityEngine.a文件,将其也拷贝并添加到游戏工程中

3.4.2 参数配置

如果要使用引力引擎插件, 需要去引力投放平台, 创建应用,拿到appID等参数。 之后,我们需要在Info Plist的UGSDK->Plugins节点中,配置该插件:

xml
<dict>
    <key>name</key>
    <string>UG_Plugin_GravityEngine</string>            
    <key>accessToken</key>
    <string>43sfs234534xdd34dd11</string>
    <key>appID</key>
    <string>12711084</string>
</dict>

插件自定义参数说明:

参数名称参数定义参数说明
accessTokenAccessToken引力平台, 创建应用后拿到的Access Token参数
appIDAppID引力平台,创建应用后拿到的AppID参数

版权所有© 2021-2030 上海丞诺网络科技有限公司