BDGamesSDK(iOS)接入文档

1、将SDK导入工程中

说明:

为了缩小SDK的大小,采用了分版本的形式打包SDK,因此SDK的文件夹下有以下三个版本的framework:

BDGamesSDK(iOS)接入文档_第1张图片
图1.BDGamesSDK版本

调试版真机:适用于armv7(3gs、4s)、armv7s(5~5c)、arm64(5s~6s plus)架构的真机测试

调试版模拟器:适用于i386(4s~5)、x86_64(5s~6s plus)架构的模拟器测试

发布版真机:适用于发布到AppStore

选择相应的Framework测试即可

导入SDK:

BDGamesSDK(iOS)接入文档_第2张图片
图2.BDGamesSDK

1、将BDGamesSDK.framework、BDSDKResource.bundle拖入游戏工程中:

BDGamesSDK(iOS)接入文档_第3张图片
图3.Add Files to xxx

2、嵌入BDGamesSDK.framework到工程中

BDGamesSDK(iOS)接入文档_第4张图片
图4.将framework引入到工程中

3、设置IOS Deployment Target

BDGamesSDK(iOS)接入文档_第5张图片
图5.设置工程target

SDK导入完成,运行之后如果出现以下问题:

1、The resource could not be loaded because the App Transport Security policy requires the use of a sec

解决方法:

info.plist文件中增加NSAppTransportSecurity 在其中再增加NSAllowsArbitraryLoads 改为YES

2、dyld: Library not loaded:@rpath/BDGamesSDK.framework/BDGamesSDK

解决方法:

检查第二步图4是否完成。


2、SDK API 使用说明

1、BDGamesSDK交互机制

BDGamesSDK采用delegate(代理)的方式进行交互,SDK提供了包括初始化完成、登录、注销账号、退出用户中心、更新游戏数据在内的代理方法供游戏进行交互,因此需要游戏设置代理、遵守代理协议(BDSDKDelegate)、实现代理方法。

返回结果统一使用BDResult类,目前BDResult类仅有isSuccess(是否成功)、message(消息)两个属性可用,其他属性暂不用,为拓展属性。

2、设置基本参数 进行SDK初始化

BDGamesSDK *instance=[BDGamesSDK defaultSDK];

//获取BDGamesSDK实例

instance.cpId=@"38";//cpid(从平台处获取)

instance.gameId=@"82";//gameid(从平台处获取)

instance.apiKey=@"61A9461627FC5C13B061B611BE7A36B3";

//apiKey(从平台处获取)

instance.floatButtonPosition=CGPointMake(50,0);

//浮动按钮位置,0~100(百分比),默认为0,0

instance.isNetworkGame=NO;

//是否是网游NO单机YES网游

instance.orientation=BD_LANDSCAPE;

//设置SDK界面方向支持竖屏(BD_PORTRAIT)、横屏(BD_LANDSCAPE)

id rootView = [RootViewController getInstance];

//根视图

instance.delegate= rootView;

//BDGamesSDK代理对象

[instance initSDK];

//调用初始化方法

3、实现初始化代理方法:

- (void)bdSDKOnInitFinishedWithResult:(BDResult*)result;//根据result返回结果来进行相应的处理,一般来说初始化成功之后便可调用login方法调出登录界面

4、调出登录界面(必须先完成初始化,否则无法调出)

调用方法:[[BDGamesSDK defaultSDK] login];

BDGamesSDK(iOS)接入文档_第6张图片
图6.登录效果图

5、实现登录的代理方法:

- (void)bdSDKOnLoginFinishedWithResult:(BDResult*)result;//根据result的返回结果做相应的业务处理

6、登录成功之后如果是网游请设置serverID,否则跳过

[[BDGamesSDK defaultSDK] setServerId:@"xxx"];//xxx为服务器id

7、调用enterGame(进入游戏)方法,并实现进入游戏代理方法

- (void)bdSDKEnterGameWithResult:(BDResult*)result;//根据result的返回结果做相应的业务处理

SDK进入游戏回调成功之后 游戏便可以正式进入

8、更新游戏数据

游戏客户端调用该方法更新角色等级或者游戏关卡数据:

- (void)reloadGameData:(NSString*)data dataType:(NSString*)dataType;

data:等级或者关卡数

dataType:0是等级,1是关卡

游戏客户端实现更新游戏数据代理方法:

- (void)bdSDKReloadGameDataWithResult:(BDResult*)result;//根据result的返回结果做相应的业务处理

9、显示浮窗按钮

调用方法:[[BDGamesSDK defaultSDK] showFloatButtonWinow];

登录成功之后默认显示浮窗按钮,此时再调用此方法会使按钮高亮与半透明状态之间切换,浮窗按钮被点击也会处于高亮状态,默认4秒之后按钮半透明隐藏。


图7.高亮浮窗按钮


图8.半透明浮窗按钮

10、进入个人中心

进入个人中心有两种方式:

1)、点击浮窗按钮直接进入

2)、调用方法[[BDGamesSDK defaultSDK] enterUserCenterWindow];

用户中心有两种形式的界面:浮窗个人中心、全屏个人中心


BDGamesSDK(iOS)接入文档_第7张图片
图9.浮窗个人中心


点击个人头像可以进入到全屏个人中心:


BDGamesSDK(iOS)接入文档_第8张图片
图10.全屏个人中心

11、实现退出个人中心代理方法

当点击浮窗个人中心以外的其它范围会退出个人中心,同时会响应退出个人中心的代理方法:

- (void)bdSDKUserCenterExitWithResult:(BDResult*)result;

12、实现注销帐号的代理方法

- (void)bdSDKLoginOutWithResult:(BDResult*)result;//当用户选择退出帐号、或者切换帐号的时候该代理方法会响应

你可能感兴趣的:(BDGamesSDK(iOS)接入文档)