手上有一个自己开发的小游戏,想加一个家族系统活跃下游戏的氛围,想到这块儿可能会有大量的工作需要自己做,就偷了个懒去网上搜罗了一波,结果惊奇的发现居然真的有类似的服务,并且还是免费的,所以决定入坑尝试一下。这里就我使用的第三方家族系统(GangSDK)做一个简单的记录,方便以后查看。

一、GangSDK介绍
GangSDK是为开发者提供的一套快速接入社群系统的开发框架,主要为了帮助开发者在自己的应用里快速构建社群系统。社群系统包含两大功能:1、为用户们提供自己的社交圈,使他们交流更方便;2、社群建设,使社群更具影响力,同时吸引更多的用户加入。

GangSDK包括三个部分:

GangCore:数据管理(所有网络请求接口管理)

GangUI:界面展示(提供的UI布局)

GangUIResource:皮肤资源(为UI提供了多套资源,可选择替换使界面显示多样化)

二、集成前准备

1、注册及创建应用,网址:http://www.gangsdk.com/statichtml/html/gangsdkmanage/myapp.html

2、下载GangSDK.zip,网址:http://www.gangsdk.com/statichtml/resource/sdk/ios/GangSDK.zip

三、开始集成
1、导入GangSDK

1>将GangSDK.zip解压后拷贝到工程文件夹(.xcodeproj文件所在目录)中去,如图:

2>通过在工程目录上的右键[Add Files to…]来添加上面拷贝进去的文件夹,如图:

2、添加依赖库

点击项目文件->选择项目target->选中Build Phase ->在Link Binary With Libraries中添加 libicucore.tbd,如图:

3、添加 -ObjC 链接符号

点击项目文件->选择项目target->选中Build Setting ->在搜索框中输入other link ,找到Other Linker Flags ->添加-ObjC,如下图:

4、添加权限

1>选中info.plist->右键选择Open as -> Source Code,如下图:

2>将下面的配置信息粘贴进去,如下图:

<key>NSAppTransportSecurity</key>
<dict>
<key>NSAllowsArbitraryLoads</key>
<true/>
</dict>
<key>NSPhotoLibraryUsageDescription</key>
<string>能够查看相册图片</string>
<key>NSCameraUsageDescription</key>
<string>拍摄照片</string>
<key>NSMicrophoneUsageDescription</key>
<string>发送语音消息</string>

5、初始化GangSDK
1>导入头文件:
#import <GangSDK/GangSDK.h>

2>调用方法:
//初始化,一般在应用一打开就进行
[[GangSDK instance] init:申请的key showDebug:是否打印日志];

一般在AppDelegate中进行,如下图:

如果想在不进入GangSDK界面前先登录GangSDK,从而收取一些即时消息等,那么在初始化后调用GangSDK的登录方法。

6、进入GangSDK界面
1>导入头文件:
#import “GangSDK+UI.h”

2>调用方法:
如果上面已经调用了登录方法,则直接调用跳转进入界面方法。

否则调用下面的登录并跳转界面方法:

[[GangSDK instance] startUI:用来跳转的controller userId:用户的唯一标识符 nickname:用户的昵称 headIconUrl:用户的头像 gameLevel:应用中用户的等级 gameRole:应用中用户的角色 extParams:额外的用户信息 success:成功回调 failure:失败回调];

如果没有自己的用户系统,可以选择下面的重载方法,GangSDK会给用户自动生成一个唯一标识符,用户会使用默认的头像,而且在用户进入GangSDK界面的时候会弹出对话框让用户自己设置一个昵称:

[[GangSDK instance] startUI:用来跳转的controller success:成功回调 failure:失败回调];

更多重载方法:
[[GangSDK instance] startUI:用来跳转的controller userId:用户的唯一标识符 nickname:用户的昵称 success:成功回调 failure:失败回调];

[[GangSDK instance] startUI:用来跳转的controller userId:用户的唯一标识符 nickname:用户的昵称 headIconUrl: 用户的头像 success:成功回调 failure:失败回调];

进入GangSDK后默认的风格如图:

如果不想用默认的界面风格,可以下载其他GangUIResource来替换旧的GangUIResource文件夹,下载地址:

详细集成文档下载地址:http://www.gangsdk.com/statichtml/html/gateway/other/ios.html?downloadType=detailed

关于iOS GangSDK的使用,为App快速集成社群公会模块的更多相关文章

  1. iOS:融云即时通讯快速集成

    一.介绍 即时通讯在众多社交软件.生活软件以及教育软件中已经是必备的功能了,在当前国内,即时通讯SDK做的比较不错的有那么几家,例如环信SDK.融云SDK...,这两家做的都很不错,各有千秋吧,要是真 ...

  2. 【Bugly安卓开发干货分享】Android APP 快速 Pad 化实现

    项目背景 采用最新版本手机 APP(之后称为 MyApp)代码,实现其 Pad 化,为平板和大屏手机用户提供更好的体验.为实现 MyApp 的 Pad 化工作,需要我们首先来了解一下 MyApp 项目 ...

  3. 开发者必知的几款App快速开发工具

    “我有一个好创意,就差一个CTO……” ,这是今年炒的比较火的一句话. “原生APP开发难度大,周期长,成本高,还没上线市场已经被占领了.这个有没有解决方案?” “APP版本迭代更新,都是企业的一道难 ...

  4. 开发者必知的8款App快速开发工具

    开发者必知的8款App快速开发工具 “我有一个好创意,就差一个CTO……” “原生APP开发难度大,周期长,成本高,还没上线市场已经被占领了.” “APP版本迭代更新,都是企业的一道难关,没有一个一劳 ...

  5. 快速集成iOS基于RTMP的视频推流

    前言 这篇blog是iOS视频直播初窥:<喵播APP>的一个补充. 因为之前传到github上的项目中没有集成视频的推流.有很多朋友简信和微博上问我推流这部分怎么实现的. 所以, 我重新集 ...

  6. iOS简单快速集成Cordova

    如果你对于什么是Cordova还不了解,可以先移步到我另一个文章:Cordoval在iOS中的运用整理 里面有详细的介绍跟如何搭建Cordova:而本文则是要介绍JiaCordova插件,如果你有一点 ...

  7. 利用 Create React Native App 快速创建 React Native 应用

    本文介绍的 Create-React-Native-App 是非常 Awesome 的工具,而其背后的 Expo 整个平台也让笔者感觉非常的不错.笔者目前公司是采用 APICloud 进行移动应用开发 ...

  8. 国内app快速生成平台对比

     泰格老虎 2013-03-07 00:39:10 这是海恒CEO高鹏写的一篇国内app快速生成平台对比文章,介绍了国内快速生成APP的平台与自己平台的对比,很有参考价值. 同类网站 安米网 http ...

  9. 发布iOS应用程序到苹果APP STORE完整流程

    参考:http://blog.csdn.net/mad1989/article/details/8167529(xcode APP 打包以及提交apple审核详细流程(新版本更新提交审核)) http ...

随机推荐

  1. 吐槽CSDN--想赚钱想疯了--强行升级皮肤--增加广告位

    一直对CSDN很有好感,和博客园同是技术分享的好平台,但是界面更清爽,用户间互动也较多.在学生时代就一直在用,平时抄个作业,竞赛搜个题,论文需要凑字数等等.当年为了下载一份源代码,或者为了下载某本买不 ...

  2. Node Sass could not find a binding for your current environment 解决办法

    具体错误如下: 解决办法: 命令行执行  npm rebuild node-sass  命令(如果不行,则先运行npm install node-sass命令执行再执行 npm rebuild nod ...

  3. MySql采用GROUP_CONCAT合并多条数据显示的方法

    情况分析: 1. 表course id     name 1      课程一 ================= 2.表course_teacher id   course_id  teacher_ ...

  4. LeetCode 292. Nim Game (取物游戏)

    You are playing the following Nim Game with your friend: There is a heap of stones on the table, eac ...

  5. Mybatis报错:Parameter 'list' not found. Available parameters are [groupList, param1]

    GroupDao.java 里面定义的方法: void batchInsertLog(@Param("groupList") List<MktPromotionIntegra ...

  6. 聊聊pthread_cond_wait的虚假唤醒

    使用条件变量时,仅仅从pthread_cond_wait返回就说条件成立是不恰当的.我们正确使用pthread_cond_wait的唯一方式是当线程被从pthread_cond_wait唤醒时,再检查 ...

  7. 愚蠢的遗留BUG

    二次开发本来就是很恶心的事,我竟然是三次开发. 今天遇到一个BUG,上传图片的时候报错了,操作过程很简答,点击上传按钮,选择图片,确定上传,如图: 报错信息很直白,也很奇怪: (为了写博客,把代码回滚 ...

  8. css3+div画大风车

    今天已经礼拜三了,周天小颖家的佩佩就要结婚啦,小颖要去当伴娘了,哈哈哈哈哈哈,想想都觉得乐开了花,不过之前她给我说让我当她伴娘时,我说我要减肥,不然她那么瘦弱,我站旁边就感觉像一个圆滚滚的小皮球,小颖 ...

  9. angular之scope详解

    AngularJS的一些指令会创建子作用域,而子作用域会继承自父作用域,大致可分为以下3种 1.创建子作用域并继承父作用域的指令 ng-repeat ng-include ng-switch ng-c ...

  10. angular2安装笔记

    主要摘自:http://www.runoob.com/angularjs2/angularjs2-typescript-setup.html http://blog.csdn.net/lgpwwa/a ...