新建一个渠道
为方便说明,以渠道91为例:
- 1.在finder中打开文稿中的xgsdk-client,解压temple_dk.zip,�得到一个新的group模板文件夹。
目录说明:- header,渠道引入的头文件
- wrapper, xg调用渠道的实现
- package, xg打包输出的文件
- sql, xg初始化渠道的脚本
- 2.准备接入资源
- 修改文件夹的渠道名称为sdk-91
- sql文件夹中,编写该渠道的初始化参数脚本channel_init.sql文件更改channel_id时参考 渠道参数配置说明 。
- package文件夹中,修改package.conf. 将渠道的framework,bundle分类放入到package/res目录的子文件夹中。
- header文件夹中,加入渠道的头文件或framework。
- wrapper文件夹中,加入空实现文件。
- 3.开始编写渠道实现
- 打开xgsdk-client.xcodeproj,在xgsdk-client的target上duplicate一个新的target,修改名称为新建渠道的名称。
- 将2中准备好的文件夹拖入xcode工程中,选择add到新建的target。
- 修改target的build phase,增加run script (内容参考其他渠道)。
- wrapper目录下,编写渠道实现代码主要是四个文件:
'delegate91.h','delegate91.m','XGSDK.m','XGSDKImpl.h'.
- 3.输出渠道包资源
- commad+B,得到渠道的静态库
libxgsdk-91.a
.注意:commad+B时,会自动执行build phase下的runScript,将生成的静态库拷贝到91渠道的 package/res/lib 目录下。 - 进入到 sdk-91/../commonRes中,分别在header,library和ruby目录下执行下面的命令,此命令将完成向所有渠道下的res目录拷贝最新的头文件,库文件和打包脚本文件。
sh update.sh -all
- 修改config.yaml.temple。该文件为渠道参数配置模板,内容为key-value模式。***注意key冒号后有空格. ***其中,key值需要和sql/channel_init.sql中的参数名称对应,请仔细核对。
- 修改run.yaml文件。该文件决定了
sdk-91/package/res
目录下的资源,如何注入到游戏的工程中,包括 lib,bundle,framework,编译选项和plist文件的修改等,请仔细核对。
- commad+B,得到渠道的静态库
- 4.在demo中集成测试
- 将sdk-91目录下的package目录拷贝出来得到xg_package目录,修改config.yaml.temple中的value为游戏实际值,并去掉temple后缀,得到游戏的config.yaml.
- 将xg_package目录放置到demo工程下。参考西瓜打包脚本使用指南。
-
5.添加支付库(可选)
- 若新渠道有接入西瓜的AppStore支付功能,需要在xgApplePay工程中修改build phase-run script,并手动build一次xgApplePay工程,以便将充值库加入到新渠道的package/res/lib中.
6.输出渠道包
将demo中严重好的xg_package目录压缩,提供给游戏方并附readme.text指导游戏接入。若是unity引擎的游戏,还需提供libxgsdkUnity.a文件。7.结束。
渠道升级
- 1.检查客户端接口是否变化。
快速检查方法:替换渠道头文件,重新编译。若有错,则接口变化。- 若变化,需先替换渠道package/res目录下的所有资源(先删除,再粘贴。不能直接拷贝覆盖。),再重新接入。
- 若未变化,直接替换资源即可。
- 2.在demo中重新验证。
- 3.验证结束后,修改package/package.conf文件中的渠道版本号。
- 4.结束。
xgCommon工程升级
- 1.修改xgCommon工程的constant.h文件中的SDK_VERSION版本号。
- 2.�command+B,此时生成的ligxgCommon.a文件将自动拷贝至commonRes/lib目录。
- 3.修改xgCommonRelease.md。
- 4.执行
sh update.sh -all
,将库文件更新到所有渠道目录下。 - 5.结束。
xgData工程升级
- 1.修改xgData工程的sdk_bi_constrains.h文件中的DATA_VERSION版本号。
- 2.�command+B,此时生成的ligxgsdkData.a文件将自动拷贝至commonRes/lib目录。
- 3.修改xgDataRelease.md。
- 4.执行
sh update.sh -all
,将库文件更新到所有渠道目录下。 - 5.结束。