• 前言

  腾讯IM对Unity的支持很差,只提供接口返回数据,非常麻烦,然而安卓端使用Tuikt可以集成UI,自带安卓界面不需要写任何UI逻辑;

  所以选择将Unity工程导出成安卓工程,在AndroidStudio中接入Tuikit的sdk;

  • 准备工作

  对于刚刚接触sdk的新手,要配置好java环境,下载对应版本的sdk,ndk,jdk等;具体操作自行百度,很重要;

  • Unity端工作

  通过AndroidJavaClass和AndroidJavaObject类调用Java端写好的方法

  •  安卓端工作

  1.将Unity工程导出成安卓工程;

  2.下载官方sdk,将Android文件夹中tuikit文件夹整个拷贝到导出的安卓工程中;tuikit配置需求

  3.在setting.gradle中添加include ":tuikit" 点击同步(sync /小象);

  4.检查tuikit中gradle里sdk版本,修改成和项目gradle中版本一致;

  5.按官方文档添加布局文件layout.xml  res件夹右键add,xml,layout;

  6.创建需要的安卓activity类(界面),必须在UnityLibrary中AndroidManifest里注册Activity才能调用;

  7.在UnityPlayerActivity类OnCreate方法中,给instance赋值;

  8.在UnityPlayerActivity类OnCreate方法中,初始化IM;

  9.在UnityPlayerActivity类OnCreate方法中,绑定conversationList界面,并初始化隐藏;

  10.在UnityPlayerActivity类OnCreate方法中,给conversationlist界面中每个Item绑定点击事件;

  11.写静态单例方法,供unity端调用;

  12.写ShowUI方法,供unity端调用;

   13.写用户登录方法,供Unity调用

  • 坑点

  1.gradle properties中添加升级AndroidX问题,在gradle properties中添加;

  android.useAndroidX=true

  android.enableJetifier=true

  2.因为我只想使用ConversationList所以要隐藏掉一下多余的layout部件,比如标题,以及一个恶心的搜索框;

   title直接在OnCreate中隐藏;   

   搜索框需要找到Conversationlayout.java中layout.xml文件修改,改初始高度;

  3.缓存问题,每次退出再次打开IM,不再加载conversationlist列表,没找到问题所在,选择了暴力的清空存储list的文件夹,必须进去app时清空,退出时清空可能因为强退清空不彻底;清空时需要递归;

  

  

  

Unity——腾讯IM即时通讯SDK接入相关推荐

  1. 关于使用腾讯云腾讯(即时通讯SDK)遇到的问题

    公司项目中需要进行服务器控制用户端操作 由于前期规划提出的需求,放弃了推送和WebSocket 然后转换思路使用即时通讯实现C/S,根据通话消息内容进行判断做出相应的操作 好了.不啰嗦开整. ---- ...

  2. 前端运用腾讯云即时通讯IM进行会话聊天

    本文仅给新接触即时通讯的新手们,并且看文档没有方向的朋友们提供一个清晰的思路,大佬们轻喷. 不管你是想在html.vue项目.微信小程序中哪里想运用腾讯云即时通讯IM,都可以很好的实现,现在给大家介绍 ...

  3. 即时通讯sdk哪一个好?

    IM即时通讯(Instant Messaging)是一种基于互联网的即时交流消息的业务.调研数据显示:市面上60%以上的APP拥有即时通讯能力,用户可以直接在app内跟其他用户实时聊天,有助于提升ap ...

  4. android 极光 环信,环信、容联云通讯、极光推送和网易云信IM即时通讯功能接入方式_部署方式_企业服务汇...

    编者按:企业在挑选IM即时通讯功能服务商时,对于企业应当如何接入其IM功能.接入方式和部署方式有哪些等问题不太清楚.今天企业服务汇通过评测环信.容联云通讯.极光推送和网易云信这四家服务商来为你详细说明 ...

  5. uniapp即时通讯sdk哪个好?

    UniApp 是什么? UniApp 是一种跨平台移动应用开发框架,可以使用 Vue.js 语法开发支持 Android.iOS 和桌面浏览器的应用. UniApp 即时通讯功能如何实现? 对于实现即 ...

  6. 即时通讯 SDK 一对一通讯技术

    在IM通讯中,经常会有一对一,一对多,多对多的通讯场景,不管是语音的还是视频的,或者是两者的混合,那么如何实现一对一的即时通讯场景需求呢,下面介绍一下BRAChat的即时通讯SDK. BRAChat ...

  7. 网易im即时聊天php怎么接入,网易云信IM即时通讯功能接入方式与流程_如何收费_企业服务汇...

    编者按:很多企业在考虑使用网易云信提供的IM即时通讯功能,对于企业应当如何接入该功能.接入方式和流程是怎样的.应当如何收费等不太清楚.企业服务汇通过评测网易云信IM即时通讯功能来告诉你答案. 网易云信 ...

  8. 环信 即时通讯sdk实现客服功能

    仅适用于已经集成环信 即时通讯sdk,又需求实现客服功能,而不更换sdk. 下面的api环信 即时通讯并没有在文档中暴露,是我咨询了环信客服后知道的 核心就是 给 Message对象  setAttr ...

  9. vue2集成声网-环信即时通讯SDK,建议实现两人聊天

    1.注册登陆环信并创建用户 步骤:注册 => 登录 => 创建应用 => 创建应用用户 登录注册:环信登陆注册页面(https://console.easemob.com/user/ ...

最新文章

  1. Linux学习笔记之文件管理和目录管理类命令
  2. Kotlin 二分法算法游戏--猜价格
  3. Java中Map类型数据使用LinkedHashMap保留数据的插入顺序
  4. P3575-[POI2014]DOO-Around the world【环形dp】
  5. PHP和MySQL Web开发pdf
  6. python可以开多少线程_python多线程详解
  7. java 将要死亡_人在即将死亡的时候,能意识到自己将要死亡了吗?科学家给出答案...
  8. 「 LaTex 」写论文,natbib宏的参考文献引用格式详解
  9. 索引知识系列一:聚集索引与非聚集索引详解
  10. python:计算四分位距IQR
  11. 樱花飘落,3D效果,抖音热门樱花飘落html
  12. java 二进制转换成十六进制字符串_将二进制字符串转换为十六进制字符串JAVA
  13. TVS管的参数理解与选型
  14. python axes3d函数_Python绘制3D图形:Axes3D
  15. 程序员一定要打造一个专业的家庭开发工作站
  16. Oracle In-Database Archiving演示
  17. NV 英伟达2022数字芯片笔试题
  18. NLP的这一年2017:深度学习或成主角
  19. lisp 批量文字求差值_lisp语言对立体测量数据进行高程处理的实现
  20. PHP开发者的JavaScript快速教程(phper简明js教程)

热门文章

  1. 20个示例!详解 Java8 Stream 用法,从此告别shi山(垃圾代码)
  2. 关于Fatal error in launcher: Unable to create process using ... 无法进行该进程的解决
  3. 将服务器安装为域控制器
  4. GAMES Webinar 222期CAD工业软件——梅敬成博士访谈:三维CAD的发展历程、未来趋势及共性关键技术
  5. 零基础学前端系列教程 | 和前端谈恋爱的第006天——了解喜好
  6. Oracle中实现分组后按时间排序取第一条
  7. 不朽凡人 第四百三十五章 交换仙晶
  8. 有些百无聊赖的第五周
  9. 【数据分析】Matplotlib可视化最有价值的图表之——1、关联(Correlation)
  10. 深中学子 | 杨天骅:物理竞赛路上的心得体会(转)