当前位置: 首页 > news >正文

织梦dedecms医院类网站在线预约挂号插件上海将打造五大未来产业集群

织梦dedecms医院类网站在线预约挂号插件,上海将打造五大未来产业集群,wordpress自定义帖子链接,怎样做网络推广外包Unity接入GVoice腾讯实时语音 一、介绍二、注册GVoice创建项目语音服务1.创建项目2.申请语音权限3.项目管理查看SDK初始化的一些参数和基本信息4.GVoice检测 三、SDK下载SDK是分为两种类型:独立版集成板 SDK放入Unity工程中 四、语音代码写法五、GVoice踩坑语音权限…

Unity接入GVoice腾讯实时语音

  • 一、介绍
  • 二、注册GVoice创建项目语音服务
    • 1.创建项目
    • 2.申请语音权限
    • 3.项目管理查看SDK初始化的一些参数和基本信息
    • 4.GVoice检测
  • 三、SDK下载
    • SDK是分为两种类型:
      • 独立版
      • 集成板
    • SDK放入Unity工程中
  • 四、语音代码写法
  • 五、GVoice踩坑
    • 语音权限问题
    • 打包问题
  • 六、总结

一、介绍

最近在做一个实时竞技类游戏,类似于王者荣耀类型的MOBA类实时联网游戏。针对战斗和组队界面需要加入语音的方便大家进行交流,看了几家语音价格也都是参差不齐最后选择的是腾讯的GVoice(价格很低折合费用下来一人一天0.012元),这个也是我们目前用的最合适的。后面我会把完整流程写下来并且把我踩的坑也讲一下,感谢大家的支持。

二、注册GVoice创建项目语音服务

GVoice官网
先进行账号注册,这里我就不过多提示了,直接进入开启服务的申请和创建项目。

进入控制台是这个样子的,右上角是创建新项目
在这里插入图片描述

1.创建项目

根据下属图进行对应的创建即可
在这里插入图片描述
创建之后进入创建项目的控制台如下图
在这里插入图片描述

2.申请语音权限

在这里插入图片描述
点击进入之后进行申请
在这里插入图片描述
申请之后可以找客服对接一下,让他帮你快速通过

3.项目管理查看SDK初始化的一些参数和基本信息

项目管理会弹出来界面有你需要的一些信息
在这里插入图片描述

4.GVoice检测

开通这个语音服务之后可以查看这个语音的检测在这里插入图片描述
在这里插入图片描述

三、SDK下载

GVoice的独立版官方文档,文档中有一些常规的错误和一些解决方案,当然这不是全部的坑都在里面,所有的API和调用方法是可以看的,踩的坑还是五花八门的,后面在继续说坑的问题。
GVoice的集成板官方文档
在这里插入图片描述

SDK是分为两种类型:

独立版

独立版是需要自己下载SDK拖到Unity项目中,这也是我尝试的方法,推荐这个方法。这里我也是主要讲一下独立版SDK的接入。

集成板

集成板则是需要在UnityStore中去关注下载这个sdk,在Unity中用PackageManager进行安装SDK,这里的安装方法我就不仔细说了,在Store中搜索GVoice找到腾讯加的插件下载安装到项目中即可。

SDK放入Unity工程中

SDK分为海外版和国内版,SDK连接下载。
打开网页下载自己对应的版本如下图
在这里插入图片描述
下载解压完成之后如下图
在这里插入图片描述
将上面两个文件夹放入到Unity中
在这里插入图片描述

四、语音代码写法

这里可以参考我上面的官方独立版API,里面写的更全面一些,这里我只接入了小队语音,还有一些高级的玩法我们没有用到就没有接入。

这是我创建的测试工程UI和使用到的一些API如下图
在这里插入图片描述
代码如下我就不过多解释了备注都加了差不多应该都能看明白,SDK的appId和appKey在自己创建的项目中的控制台中找一下,然后下面可以参考我写的一些小队语音的常规操作API,如果想要接入其他的API功能可以在官方的API中在查找一下

using gcloud_voice;
using System;
using UnityEngine;
using static gcloud_voice.IGCloudVoice;public class SDKInit : MonoBehaviour
{IGCloudVoice sVoiceEngine;// Start is called before the first frame updatevoid Start(){sVoiceEngine = GCloudVoice.GetEngine();//接入时请将"AppID"替换为开通业务时从管理控制台获取的 AppIDstring appID = "**********";//接入时请将"AppKey"替换为开通业务时从管理控制台获取的 AppKeystring appkey = "*******************************";// 接入时替换为玩家唯一标识符//string openID = "970001";string openID = DateTime.Now.ToString();int AppInfoID = sVoiceEngine.SetAppInfo(appID, appkey, openID);Debug.LogError("AppInfoID = " + AppInfoID);int InitId = sVoiceEngine.Init();Debug.LogError("InitId = " + InitId);sVoiceEngine.OnJoinRoomComplete += JoinRoomCompleteHandler;}// Update is called once per framevoid Update(){if (sVoiceEngine != null){sVoiceEngine.Poll();}if (Input.GetKeyDown(KeyCode.Space)) {GetRoomNumber();}}public void GetRoomNumber() {string roomName = "abc";int memNum = 8;RoomMembers[] memberlist = new RoomMembers[memNum];sVoiceEngine.GetRoomMembers(roomName, memberlist, memNum);Debug.LogError("memberlist.Length = " + memberlist.Length);Debug.LogError("memberlist[0].memberid = " + memberlist[0].memberid);}public void StartTeamRoom() {sVoiceEngine.SetMode(GCloudVoiceMode.RealTime);string mRoomName = "abc";int mTimeOut = 10000;sVoiceEngine.JoinTeamRoom(mRoomName, mTimeOut);}void JoinRoomCompleteHandler(GCloudVoiceCompleteCode code, string roomName, int memberID) {Debug.LogError("code = " + code);Debug.LogError("roomName = " + roomName);Debug.LogError("memberID = " + memberID);}/// <summary>/// 暂停语音/// </summary>public void VoiceEnginePause() {sVoiceEngine.Pause();   }/// <summary>/// 继续语音/// </summary>public void VoiceEngineResume(){sVoiceEngine.Resume();}/// <summary>/// 打开麦克风/// </summary>public void VoiceOpenMic() {sVoiceEngine.OpenMic();}/// <summary>/// 关闭麦克风/// </summary>public void VoiceCloseMic() {sVoiceEngine.CloseMic();}/// <summary>/// 打开扬声器/// </summary>public void VoiceOpenSpeaker() {sVoiceEngine.OpenSpeaker();}/// <summary>/// 关闭扬声器/// </summary>public void VoiceCloseSpeaker() {sVoiceEngine.CloseSpeaker();}
}

注意这个测试只能在Window编辑器下去跑,在Android编辑器模式下是跑不了的,需要修改一下他原来GCloudVoice的代码如下图所示,将原来的宏定义修改如下(不会影响原来打包之后的安卓手机运行)
在这里插入图片描述

五、GVoice踩坑

语音权限问题

这里我开始测试的时候是用的编辑器做的测试,这种情况下就需要电脑的麦的权限是开启的,开始我的电脑麦的权限是关闭的情况下运行的发现没有声音以为是插件接入的有问题,在开启语音的过程中在开启麦的权限也是不行的(这里只针对编辑器和电脑端),这里测试的环境必须是先确保麦的权限是开启的在运行Unity去初始化SDK。
这里还有一点是如果你退出的时候没有自己退出房间和关闭麦他是不会自己退出的,等于说你在取消Unity的运行也会有声音,除非你把Unity关闭这样才能退出这个语音房间,不然只能你手动退出。

打包问题

如果是2020以上的Unity需要将Plugin下的含有.jar的父级文件夹加上后缀.androidlib如下图(加入之后才能识别.jar的文件,打包到手机平台才能没有问题 官方文档标记)
在这里插入图片描述

在这里插入图片描述
在这里插入图片描述
如果没有加后缀上面打包出现的手机端运行报错如下
4111官方文档解释是SDK初始化为成功
请添加图片描述

六、总结

上述是我在接入GVoiceSDK时遇到的一些问题和完整流程的整理,有误区的地方希望指正,感谢大家的支持和关注。

http://www.yayakq.cn/news/302074/

相关文章:

  • 网站建设中图片装修公司企业网站开发规划
  • 设计素材网站服装wordpress 充值系统
  • moodle做网站培训班该如何建站
  • 网站设计尺寸大小快猫
  • 网站开发是做啥的越秀网站建设推广
  • 东莞企业网站制作怎么做网站的风格设计有哪些
  • 营口网站开发网站策划厂
  • 网站代运营协议网站建设下单源码
  • 建设厅八大员在哪个网站查询软件工程师的工作内容
  • 如何利用网站做demo网站建设的一般过程包括哪些方面
  • 网站数据库怎么做seo排名软件怎么做
  • 成都网站优化外包网络学校
  • 网站优化收费网站开发设计培训价格
  • app创建宁波seo排名方案
  • 注册网站流程及费用怎么做网络销售的网站
  • 漳州电脑网站建设农村电商怎么赚钱
  • 郑州企业网站优化自己上传图片做动漫图网站
  • 淘宝客网站主题模板网站建设案例收费吗
  • 传媒网站源码山东东成建设咨询有限公司网站
  • 延吉有学建设网站的地方吗标准百度网站建设
  • 企业网站建设方法国外的旅游网站做的如何
  • 专业网站制作地址礼品册兑换 网站建设
  • 深圳网站排名优化公司安徽科技学院官网
  • aspnet网站开发工具潍坊专业做薪酬绩效
  • 网站开发好不好网站备案率定义
  • 沂源网站建设yx718做公众好号的网站
  • 重庆网站seo诊断网站空间如何申请
  • 湘潭网站建设网站推广2008 iis搭建网站
  • 有哪些可以做课件赚钱的网站网站后台登入模板
  • 网站推广方案书东莞网站建设推广多少钱