麻豆小视频在线观看_中文黄色一级片_久久久成人精品_成片免费观看视频大全_午夜精品久久久久久久99热浪潮_成人一区二区三区四区

首頁 > OS > 安卓 > 正文

Android基于騰訊云實時音視頻仿微信視頻通話最小化懸浮

2024-09-11 17:15:16
字體:
來源:轉載
供稿:網友

最近項目中有需要語音、視頻通話需求,看到這個像環信、融云等SDK都有具體Demo實現,但咋的領導對騰訊情有獨鐘啊,IM要用騰訊云IM,不妙的是騰訊云IM并不包含有音視頻通話都要自己實現,沒辦法深入了解騰訊云產品后,決定自己基于騰訊云實時音視頻做去語音、視頻通話功能。在這里把實現過程記錄下為以后用到便于查閱,另一方面也給有需要的人提供一個思路,讓大家少走彎路,有可能我的實現的方法不是最好,但是這或許是一個可行的方案,大家不喜勿噴。基于騰訊云實時音視頻SDK 6.5.7272版本,騰訊DEMO下載地址:鏈接: https://pan.baidu.com/s/1iJsVO3KBuhEiIUZcJPyv3g 提取碼: ueey

一、實現效果

二、實現思路

我把實現思路拆分為了兩步:1、視頻通話Activity的最小化。 2、視頻通話懸浮框的開啟

具體思路是這樣的:當用戶點擊左上角最小化按鈕的時候,最小化視頻通話Activity(這時Activity處于后臺狀態),于此同時開啟懸浮框,新建一個新的ViewGroup將全局Constents.mVideoViewLayout中用戶選中的最大View動態添加到懸浮框里面去,監聽懸浮框的觸摸事件,讓懸浮框可以拖拽移動;自定義點擊事件,如果用戶點擊了懸浮框,則移除懸浮框然后重新調起我們在后臺的視頻通話Activity。

1.Activity是如何實現最小化的?

Activity本身自帶了一個moveTaskToBack(boolean nonRoot),我們要實現最小化只需要調用moveTaskToBack(true)傳入一個true值就可以了,但是這里有一個前提,就是需要設置Activity的啟動模式為singleInstance模式,兩步搞定。(注:activity最小化后重新從后臺回到前臺會回調onRestart()方法)

@Override public boolean moveTaskToBack(boolean nonRoot) { return super.moveTaskToBack(nonRoot); }

2.懸浮框是如何開啟的?

懸浮框的實現方法最好寫在Service里面,將懸浮框的開啟關閉與服務Service的綁定解綁所關聯起來,開啟服務即相當于開啟我們的懸浮框,解綁服務則相當于關閉關閉的懸浮框,以此來達到更好的控制效果。

a. 首先我們聲明一個服務類,取名為FloatVideoWindowService:

public class FloatVideoWindowService extends Service {  @Nullable @Override public IBinder onBind(Intent intent) { return new MyBinder(); }  public class MyBinder extends Binder { public FloatVideoWindowService getService() {  return FloatVideoWindowService.this; } }  @Override public void onCreate() { super.onCreate(); }  @Override public int onStartCommand(Intent intent, int flags, int startId) { return super.onStartCommand(intent, flags, startId); }  @Override public void onDestroy() { super.onDestroy(); }}

b. 為懸浮框建立一個布局文件float_video_window_layout,懸浮框大小我這里固定為長80dp,高120dp,id為small_size_preview的RelativeLayout主要是一個容器,可以動態的添加view到里面去

<?xml version="1.0" encoding="utf-8"?><LinearLayout xmlns:andro android: android:layout_width="wrap_content" android:layout_height="wrap_content" android:background="@color/colorComBg" android:orientation="vertical">  <com.tencent.rtmp.ui.TXCloudVideoView android: android:layout_width="80dp" android:layout_height="120dp" android:descendantFocusability="blocksDescendants" android:orientation="vertical" /> </LinearLayout>
發表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發表
主站蜘蛛池模板: 久久最新免费视频 | 在线亚州 | 羞羞网站 | 看免费一级毛片 | 欧美成年人在线视频 | 中文区永久区 | 国产噜噜噜 | 色七七亚洲 | 国产免费一级大片 | 91久久久久久 | 中文字幕在线观看1 | 成人小视频免费在线观看 | 久久97视频 | 色播久久| 99在线精品视频免费观看20 | fc2国产成人免费视频 | 成年免费大片黄在线观看岛国 | www.com香蕉| 爱射av| 在线观看国产 | 国产亚色 | 一级黄色片武则天 | 成人免费一区二区 | 毛片a片免费看 | 欧美黄色大片免费观看 | 成人不卡在线观看 | 91一区二区三区久久久久国产乱 | 欧美黄色性视频 | 久久精品一二三区白丝高潮 | 国产亚洲精彩视频 | 狠狠操天天射 | 日本在线不卡一区二区三区 | 黄色毛片一级 | 成人福利视频在 | 亚洲看片网 | 国产一国产精品一级毛片 | chengrenyingshi | 国产91片 | 嫩草影院在线观看网站成人 | 欧美大穴 | 欧美一区二区三区中文字幕 |