简单做了个集成融云视频通话的demo,这里是为了方便测试所以就固定了2个token!
首先看一个项目目录

上面是目录结构比较简单,在融云官网将下面的下载下来
上面的压缩包包含了我们需要的SDK,然后在studio 中用Import Moudle 方式将这几个文件导入项目中然后在app的gradle中添加依赖
在这个之前最好先去融云官网注册一个账号,注册好后,在平台上建好项目
这个是我建立的一个项目,开通了音视频服务,免费送了1000分钟,这样可以够测试用,先不用充值!这样就为后面获取appkey 和token 做好准备!
可以根据官网的集成的文档将你建立项目的appkey写入IMLIB中!
下面来看看项目:
比较简单:

  @Overridepublic void onCreate() {super.onCreate();RongIM.init(this);}public static String getCurProcessName(Context context) {int pid = android.os.Process.myPid();ActivityManager activityManager = (ActivityManager) context.getSystemService(Context.ACTIVITY_SERVICE);for (ActivityManager.RunningAppProcessInfo appProcess : activityManager.getRunningAppProcesses()) {if (appProcess.pid == pid) {return appProcess.processName;}}return null;}

在onCreat()进行 RongIM.init(this)的初始化!

package rongtong.gisocn.com;import android.content.Intent;
import android.support.v7.app.AppCompatActivity;
import android.os.Bundle;
import android.util.Log;
import android.view.View;
import android.widget.Toast;import com.bailingcloud.bailingvideo.engine.binstack.util.FinLog;import java.math.RoundingMode;
import java.util.Locale;import io.rong.callkit.RongCallAction;
import io.rong.callkit.RongCallModule;
import io.rong.callkit.RongVoIPIntent;
import io.rong.calllib.IRongReceivedCallListener;
import io.rong.calllib.RongCallClient;
import io.rong.calllib.RongCallSession;
import io.rong.imkit.RongIM;
import io.rong.imlib.RongIMClient;
import io.rong.imlib.model.Conversation;public class MainActivity extends AppCompatActivity {private String useid;@Overrideprotected void onCreate(Bundle savedInstanceState) {super.onCreate(savedInstanceState);setContentView(R.layout.activity_main);String s ="mrzAPLdV0WJBEVGMw3KMVnsVVRJw+MrQAVLcaePa/G0glSLp1g90djAx7DeKB9IEY8TmxTTgZ/5dD5uY7OydJQ==";login(s);}public  void login(String cacheToken){if (getApplicationInfo().packageName.equals(App.getCurProcessName(getApplicationContext()))) {RongIM.connect(cacheToken, new RongIMClient.ConnectCallback() {@Overridepublic void onTokenIncorrect() {}@Overridepublic void onSuccess(String s) {Log.d("LoginActivity", "--onSuccess" + s);Toast.makeText(MainActivity.this, "成功", Toast.LENGTH_LONG).show();useid=s;}@Overridepublic void onError(RongIMClient.ErrorCode e) {}});}}public void startTalk(View view){Intent intent = new Intent(RongVoIPIntent.RONG_INTENT_ACTION_VOIP_SINGLEAUDIO);intent.putExtra("conversationType", Conversation.ConversationType.PRIVATE.getName().toLowerCase());intent.putExtra("targetId", "as");intent.putExtra("callAction", RongCallAction.ACTION_OUTGOING_CALL.getName());intent.addFlags(Intent.FLAG_ACTIVITY_NEW_TASK);intent.setPackage(getPackageName());getApplicationContext().startActivity(intent);
//                    RongCallKit.startSingleCall(mContext,"kevin", RongCallKit.CallMediaType.CALL_MEDIA_TYPE_VIDEO);}public void starVoide(View view){Intent intent = new Intent(RongVoIPIntent.RONG_INTENT_ACTION_VOIP_SINGLEVIDEO);intent.putExtra("conversationType", Conversation.ConversationType.PRIVATE.getName().toLowerCase(Locale.US));intent.putExtra("targetId", "as");intent.putExtra("callAction", RongCallAction.ACTION_OUTGOING_CALL.getName());intent.addFlags(Intent.FLAG_ACTIVITY_NEW_TASK);intent.setPackage(getPackageName());getApplicationContext().startActivity(intent);}}

上面就是通话的代码!
String s =“mrzAPLdV0WJBEVGMw3KMVnsVVRJw+MrQAVLcaePa/G0glSLp1g90djAx7DeKB9IEY8TmxTTgZ/5dD5uY7OydJQ==”
这个就是我们在项目添加了人员后,同过平台上的api调试,根据userID获取到的,这个userId是个人自己创建的!比如我们想由A和B通话,在token处填写的 是A的, intent.putExtra(“targetId”, “as”)在这里填写的是B的userId!另外就是因为只是单纯的通话没有列表之类的,所以RongCallModule类里的 private boolean mViewLoaded =true;设置为true不然无法被呼叫方无法调出接听界面!

集成融云的视频通话功能相关推荐

  1. 分享一些Android集成融云音视频通话遇到的问题

    最近应公司需要加入音视频聊天的功能,领导也没吱声就跟融云那边把商务谈好了,让我开始做,之前也没接触过这方面的东西,查阅资料发现音视频这块都是比较笼统的大致介绍一下,最后也是坎坷了一番完成了任务,接下来 ...

  2. 浅试uniapp 集成融云 实现视频通话

    1.集成所需插件 2.视频接通没有画面 需要再mainfest.json中增加配置 根据demo配置 3.视频需要在整个app内被监听 需要将代码写在app.vue里 但是连接需要写在 登录页面 需要 ...

  3. android讨论功能,集成融云Android SDK实现在群聊/讨论组中@人的功能

    集成融云Android SDK实现在群聊/讨论组中@人的功能 可以确定的是融云SDK本身不提供@的功能,需要自定义实现. 在实现这个功能时,基本模仿微信的做法: 在列表中显示有人@了你 通知显示有人@ ...

  4. iOS 关于集成融云IM的一些常用方法

    容我磨叽一下 即使我也知道看这篇文章的人是不会看的,但是我还是想说啊,融云你们把文档好好写一下啦,APP什么的作为demo真的很鸡肋啊. 步入正题 这篇文章不是介绍集成融云的各种前期准备的(就是怎么注 ...

  5. 基于高德地图实现融云位置共享功能

    基于高德地图实现融云位置共享功能(Android篇) 效果预览: 开发准备: 1: 登录 融云开发者账号,提交 server 平台工单申请开通 实时位置共享功能.工单回复开通成功后. 2 小时生效. ...

  6. 项目中集成融云即时通讯

    http://blog.csdn.net/qq_28759359/article/details/52689948 项目中集成融云IM,能够单聊,离线能够收到消息,有聊天列表. 一我使用的是融云. I ...

  7. 快速集成融云SDK– Android Studio

    现在很多应用都加入了即时通讯功能(客服等),选择第三方的SDK比较省事快捷,这里就介绍一下集成融云SDK时遇到的一些问题. 这个是官网的集成指南:http://www.rongcloud.cn/doc ...

  8. 前端uniapp集成融云IM,简单的客服聊天

    这里写自定义目录标题 uniapp接入融云 融云文档API说明文档链接(常规) 接入 需注意项 uniapp接入融云 接入的第一步,当然是先看融云的文档,uniapp是混合开发,在手机端测试没有问题, ...

  9. 集成融云 SDK 怎么实现多端同步未读数

    最近在集成融云 SDK 的时候,碰到了一个跟未读数有关的问题,现象是这样的: 比如我在其中 Web 端已经清除了某个会话的未读数然后退出,再换个设备登入,这个时候未读数还有,并没有清除掉,我就纳闷了, ...

  10. 融云发送图片消息_Web 端集成融云 SDK 如何发送正确图片消息给移动端展示?

    Web 端集成融云 SDK 如何发送正确图片消息给移动端展示? 前言 Web 端使用融云的即时通讯 SDK 在发送图片消息给移动端的时候,移动端一般会收到一个缩略图数据和展示高清图片地址,但是往往 W ...

最新文章

  1. MySQL事务的读脏
  2. 4.3---建立高度最小二叉树
  3. 锁屏壁纸开发 Android,Android开发自己的锁屏壁纸
  4. python模块(4)-Collections
  5. ashly理器4.8软件汉化版_工程造价专业 常用广联达CAD等软件 推荐什么笔记本电脑?...
  6. python matplotlib画图实例
  7. 诈骗云集投诉不断,“云相亲”靠谱吗?
  8. win10计算机管理找不到用户,win10重装系统后管理账户不见了,win10怎么找到管理账户?...
  9. 微信域名跳转防封跳转系统 微信域名跳转防封跳转技术
  10. Juniper 防火墙JSRP高可用性HA(High Availability) chassis cluster双击冗余
  11. 搞定制作好看icon
  12. CCP/XCP标定协议解析
  13. k8s学习(2)- 虚拟机搭建搭建Kubernetes集群(1.24.2)
  14. 产品设计:如何准确定位设计风格?
  15. iOS 通过定位获取常驻后台
  16. 8. Android MultiMedia框架完全解析 - prepareAsync的过程分析
  17. MYSQL高可用架构MMM实现
  18. git——将github仓库克隆到本地
  19. 解决 cnpm : 无法加载文件 C:\Users\hp\AppData\Roaming\npm\cnpm.ps1,因为在此系统上禁止运行脚本。
  20. 20180507-A · Global Coffee Chains · ggplot2 usmap geom_map geom_point 地图 热图 美国地图 · R 语言数据可视化 案例 源码

热门文章

  1. java小球挡板游戏_多线程的一个小球游戏,就是以前的那个Pong游戏
  2. 炫酷的动态粒子背景效果(vue专属)
  3. 熵(Entropy):机器学习
  4. 租用GPU服务器跑深度学习模型心得
  5. 著名的光伏系统设计——pvsyst7.2中文版
  6. 点菜宝系统服务器无响应,点菜宝系统精典方案介绍
  7. vue生命周期中的modle→view过程
  8. 华硕路由搭建php网站,华硕路由器操作模式
  9. 细讲如何解决Idear中使用@Test时提示Junit不存在问题
  10. 网络文件常常提到类似./run.sh的数据,这个命令的意义是什么?