BDGamesSDK(iOS)接入文档

1、将SDK导入工程中

说明:

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

图1.BDGamesSDK版本

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

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

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

选择相应的Framework测试即可

导入SDK:

图2.BDGamesSDK

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

图3.Add Files to xxx

2、嵌入BDGamesSDK.framework到工程中

图4.将framework引入到工程中

3、设置IOS Deployment Target

图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];

图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];

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


图9.浮窗个人中心


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


图10.全屏个人中心

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

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

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

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

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

最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
【社区内容提示】社区部分内容疑似由AI辅助生成,浏览时请结合常识与多方信息审慎甄别。
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

相关阅读更多精彩内容

  • Spring Cloud为开发人员提供了快速构建分布式系统中一些常见模式的工具(例如配置管理,服务发现,断路器,智...
    卡卡罗2017阅读 135,871评论 19 139
  • *面试心声:其实这些题本人都没怎么背,但是在上海 两周半 面了大约10家 收到差不多3个offer,总结起来就是把...
    Dove_iOS阅读 27,394评论 30 472
  • Android 自定义View的各种姿势1 Activity的显示之ViewRootImpl详解 Activity...
    passiontim阅读 176,008评论 25 709
  • 转至元数据结尾创建: 董潇伟,最新修改于: 十二月 23, 2016 转至元数据起始第一章:isa和Class一....
    40c0490e5268阅读 5,873评论 0 9
  • 翻到初恋的合照,只感慨现在的你我已成陌路!
    甜妮阅读 1,819评论 0 0

友情链接更多精彩内容