集成思路

如果是自己的小游戏的话,可以把好友等信息直接保存在亲加服务器上,通过调用api来操作。

我们游戏只使用sdk的通信功能,好友等信息保存在自己的服务器上。

用户在登陆游戏的时候,通过算法用用户的唯一ID去登陆 亲加SDK。(去登陆聊天SDK的用户ID或创建群时的ID可以 通过用户ID/公会ID 再用算法加工变换一下生成一个,避免重复)

游戏服务器不集成亲加SDK,只有前端集成。

下面SDK指亲加聊天SDK API接口

服务器通知前端 游戏登陆成功: 前端-调用聊天sdk api登陆 ,前端-从服务器获取聊天室列表,通过sdk进入世界聊天室、(公会)聊天群(如果有公会的话)
服务器通知前端 创建公会成功: 前端-sdk 创建(公会)聊天群【公开群】
服务器通知前端 加入公会成功: 前端-调用sdk 加入(公会)聊天群
服务器通知前端 公会踢出玩家/玩家退出公会 成功: 前端-调用sdk 退出(公会)聊天群 等。

 
语音API使用
 注:如果在PC上测试,发送语音,需要插上带麦克的耳机,或者话筒,才能发语音成功。必须监听ChatListener,否则无法收到回调。
 
创建语音
1.开始录音

api.StartTalk (new GotyeUser(talkToName),GotyeWhineMode.GotyeWhineModeDefault,false,);

2.结束录音

api.StopTalk();

3.在StopTalk的回调里,发送语音

public void onStopTalk(GotyeStatusCode code, bool realtime, GotyeMessage message)
{
//StartTalk里参数是否是实时语音必须为false,否则message为null
  //发送语音
  api.SendMessage(message);
}

接收语音
接收消息(文本/图片/语音)

public override void onReceiveMessage(GotyeMessage message)
  {
if (message.Type == GotyeMessageType.Text) { }
else if(message.Type == GotyeMessageType.Audio)
{
if(File.Exists(message.Media.Path))//如果本地有这个语音文件,直接播放这个消息
{
api.PlayMessage(message);
}
else
{
//下载语音文件
api.DownloadMediaInMessage(message);
}
}
}

下载语音/图片文件,并播放

public void onDownloadMediaInMessage(GotyeStatusCode code, GotyeMessage message)
{
if (code == GotyeStatusCode.CodeOK) {
if (message.Type == GotyeMessageType.Image) {
Debug.Log ("下载消息中的图片成功!");
} else if (message.Type == GotyeMessageType.Audio) {
          Debug.Log ("下载消息中的音频成功!");
GotyeMedia media = message.Media;
          //播放语音
api.PlayMessage(message);
}
}
}

unity手游之聊天SDK集成与使用二的更多相关文章

  1. unity手游之聊天SDK集成与使用一

    手游中都有聊天功能,比如公会,私聊,世界聊天,那么找一个好用,功能强大的SDK的可以节省很多精力,帮助我们提高开发速度与游戏质量. 写本篇博文是为了方便使用这个SDK做聊天模块的程序,避免许多坑,我在 ...

  2. 知物由学|游戏开发者如何从容应对Unity手游风险?

    本文由  网易云发布. "知物由学"是网易云易盾打造的一个品牌栏目,词语出自汉·王充<论衡·实知>.人,能力有高下之分,学习才知道事物的道理,而后才有智慧,不去求问就不 ...

  3. Unity手游之路<七>角色控制器

    Unity手游之路<七>角色控制器 我们要控制角色的移动,可以全部细节都由自己来实现.控制角色模型的移动,同时移动摄影机,改变视角.当然Unity也提供了一些组件,可以让我们做更少的工作, ...

  4. Unity手游引擎安全解析及实践

    近日,由Unity主办的"Unity技术开放日"在广州成功举办,网易移动安全技术专家卓辉作为特邀嘉宾同现场400名游戏开发者分享了网易在手游安全所积累的经验.当下,很多手游背后都存 ...

  5. Unity手游之路<二>Java版服务端使用protostuff简化protobuf开发

    http://blog.csdn.net/janeky/article/details/17151465 开发一款网络游戏,首先要考虑的是客户端服务端之间用何种编码格式进行通信.之前我们介绍了Unit ...

  6. Unity手游之路<八>自动寻路Navmesh之入门

    http://blog.csdn.net/janeky/article/details/17457533 在的大部分mmo游戏都有了自动寻路功能.点击场景上的一个位置,角色就会自动寻路过去.中间可能会 ...

  7. Unity手游之路<十三>手游代码更新策略探讨

    http://blog.csdn.net/janeky/article/details/25923151 这几个月公司项目非常忙,加上家里事情也多,所以blog更新一直搁置了.最近在项目开发上线过程中 ...

  8. Unity手游之路<六>游戏摇杆之Easy Touch 3教程

    之前已经介绍过Unity自带的摇杆Joystick,它用起来很简单.但是它也存在很多局限,不能全部满足普通mmo手游的一些需求,例如:要能方便地更好素材:能指定在某个区域显示,或者只有在该区域触摸时才 ...

  9. Unity手游之路手游代码更新策略探讨

    版权声明: https://blog.csdn.net/janeky/article/details/25923151 这几个月公司项目非常忙.加上家里事情也多,所以blog更新一直搁置了. 近期在项 ...

随机推荐

  1. Laravel 中查询 where 记录

    Laravel 的 Eloquent 使用 Between $query->whereBetween('age',[$from,$to]) 这是生成 And between ... and .. ...

  2. CXF(2.7.10) - A simple JAX-WS service

    1. 下载 apache-cxf-x.x.x.zip,在工程导入依赖的 jar 包.也可以基于 Maven 构建工程. 2. 定义服务接口. package com.huey.demo.ws; imp ...

  3. Redis - 环境的安装配置

    Redis 下载安装步骤: 下载 redis 源码: [huey@huey-K42JE ~]$ wget http://download.redis.io/releases/redis-x.y.z.t ...

  4. [盈利指导] [原创]五蕴皆空:App推广干货,排名数据分析优化效果

          App盈利交流论坛版主第一帖2015年3月份,在百度上了一款赛车类游戏(不说什么名字了怕被打包),后台起名叫002,刚开始上的时候一天只有几元钱,但是游戏还是倾注了不少心血的,觉得不甘心, ...

  5. jQuery概述,代码举例及最新版下载

    jQuery是一个快速的,小巧的,具有强大功能的JavaScript库. 它的基本功能包括: 1)访问和操作DOM元素 2)控制页面样式(可以兼容各种浏览器) 3)对页面事件的处理 4)大量插件在页面 ...

  6. 关于JAVA System常见类的一些总结

    一.JAVA System类概述 1.概述: System 类是一个抽象类,所有的字段和方法都是静态的,即不能被实例化.其中包含一些有用的类字段和方法,它不能被实例化.在 System 类提供的设施中 ...

  7. 编译android5.0源码的

    java环境 Android 5.1 用到的jdk不再是Oracle 的 jdk ,而是开源的 openjdk,在ubuntu安装好后,使用如下命令安装jdk: $sudo apt-get insta ...

  8. MSSQL 数字钱转化为大写

    --说明: --1.本函数范围从 毫 ~ 兆 --2.有四种精度(元,角 ,分,厘 ,毫) --3.有三种进位规则(四舍五入,接舍去,非0就入) --参数说明:dbo.MoneyToCapital( ...

  9. js实现跨域(jsonp, iframe+window.name, iframe+window.domain, iframe+window.postMessage)

    一.浏览器同源策略 首先我们需要了解一下浏览器的同源策略,关于同源策略可以仔细看看知乎上的一个解释.传送门 总之:同协议,domain(或ip),同端口视为同一个域,一个域内的脚本仅仅具有本域内的权限 ...

  10. 百练_2945 拦截导弹(DP)

    描述 某国为了防御敌国的导弹袭击,开发出一种导弹拦截系统.但是这种导弹拦截系统有一个缺陷:虽然它的第一发炮弹能够到达任意的高度,但是以后每一发炮弹都不能高于前一发的高度.某天,雷达捕捉到敌国的导弹来袭 ...