日本熟妇hd丰满老熟妇,中文字幕一区二区三区在线不卡 ,亚洲成片在线观看,免费女同在线一区二区

Android端快速接入

本文介紹Android端快速接入音視頻通話的操作步驟及相關API參考。

源碼說明

前提條件

在實現音視頻通話前需先開通視頻直播服務,并集成互動消息以及直播連麥功能,請按照以下方式進行集成。

  • 開通視頻直播服務

    請參照下述步驟開通視頻直播服務,詳細說明請參見開通與購買視頻直播

    1. 登錄視頻直播產品詳情頁,單擊立即開通,進入開通頁面。

    2. 在視頻直播開通頁,選擇計費方式按使用流量計費或按帶寬峰值計費,勾選《視頻直播服務協議》并單擊立即開通,控制臺即可使用

  • 接入互動消息

    1. 創建互動消息應用,具體操作請參見創建應用

    2. 獲取互動消息Token,請參考實時音視頻AppServer的獲取IM建連的token和源碼getNewImToken

  • 接入實時音視頻

    1. 開通實時音視頻,具體操作請參考文檔直播連麥快速入門

    2. 獲取實時音視頻Token,需調用getRtcAuthToken接口進行獲取,實現原理參考Token鑒權。具體接口調用方式如下:

      1. 接口說明

        • 請求協議:HTTP/HTTPS

        • 請求Path:/api/v1/live/getRtcAuthToken

        • 是否需要授權:由客戶自行決定

        • 請求Method:POST

        • 請求ContentType:JSON

      2. 請求參數

        名稱

        類型

        是否必填

        示例值

        描述

        user_id

        String

        userid****

        用戶ID,由用戶自定義,支持數字、大小寫字母、短劃線(-)、下劃線(_),不超過64個字符。

        room_id

        String

        devicei****

        房間(或頻道)ID,由用戶自定義,支持數字、大小寫字母、短劃線(-)、下劃線(_),不超過64個字符。主播和連麥觀眾需使用同一個房間號。

      3. 返回數據

        名稱

        類型

        示例值

        描述

        code

        Integer

        200

        業務響應碼。參考HTTP響應碼。

        auth_token

        String

        a06afe07*******

        用于長連接建連的Token。

        timestamp

        Long

        1693967******

        當前時間戳。單位:秒。

      4. 示例

        請求示例

        {
            "user_id": "1234567890",
            "room_id": "fwfwqeqeqwewq"
        }

        正常返回示例

        {
          "code": 200,
          "auth_token": "a06afe07*******",
          "timestamp": 1693967******
        }

環境準備

  • Android Studio 插件版本4.1.2

  • Gradle 6.5

  • Android Studio自帶jdk11

源碼下載

音視頻通話當前為邀測階段,您可加入音視頻通話客戶支持群(釘釘群號:36480010946)獲取源碼下載地址。

源碼結構說明

├── Android
│   ├── AUIBaseKits                     //基礎組件
│   ├── AUICall                         //場景方案源代碼
│   ├── README.md                       // README
│   ├── app                             //主工程模塊入口
│   ├── build.gradle                    //工程配置文件
│   ├── config.gradle                   //工程配置文件
│   └── settings.gradle                 //工程配置文件

跑通Demo

  1. 源碼下載后,進入AUICall目錄下的Java源代碼文件夾,找到com.aliyun.auikits.auicall.util.AUICallConfig類,修改幾個必填字段值。

    public final class AUICallConfig {
        public static final String APP_ID = "xxx"; //您的AppId, 必填
        public static final String HOST = "xxx"; //您的服務器域名地址, 必填
        ...
    }
  2. Android Studio導入工程,選擇菜單>File>New>Import Project1695022883529_C853A010-9010-401e-8F87-D79977FA6CEF.png

  3. 選擇Android工程根目錄。1695022864299_12CC701E-5CB8-47bb-978A-C6252A15004A.png

  4. 編譯運行。ee6679816e8c5b0f3749789b4e72fffc.png

快速開發通話功能

集成源碼

  1. 導入AUICall。

    倉庫代碼下載后,Android Studio菜單選擇:File>New>Import Module,導入AUICall文件夾。

  2. 修改AUICall文件夾下的build.gradle的三方庫依賴項。

    dependencies {
    	...
        implementation 'androidx.appcompat:appcompat:x.x.x'                     //修改x.x.x為您工程適配的版本
        implementation 'com.google.android.material:material:x.x.x'             //修改x.x.x為您工程適配的版本
        androidTestImplementation 'androidx.test.espresso:espresso-core:x.x.x'  //修改x.x.x為您工程適配的版本
        implementation 'com.aliyun.aio:AliVCSDK_Standard:x.x.x'                  //修改x.x.x為您工程適配的版本
    }
  3. 等待gradle同步完成,完成源碼集成。

源碼配置

進入AUICall模塊下的Java源代碼文件夾,找到com.aliyun.auikits.auicall.util.AUICallConfig類,修改幾個必填字段值。

public final class AUICallConfig {
    public static final String APP_ID = "xxx"; //您的AppId, 必填
    public static final String HOST = "xxx"; //您的服務器域名地址, 必填
    ...
}

調用API

前面工作完成后,接下來可以根據自身的業務場景和交互,在您的App其他模塊或主頁上通過通話組件接口快速實現會議通話功能,也可以根據自身的需求修改源碼。

  • 1V1通話場景

    AUICall1V1Model model = new AUICall1V1ModelImpl(); //構造單人通話業務接口實例
    ...
    model.call("xxx", AUICall1V1Mode.VIDEO); //視頻通話呼叫對方
    ...
    model.accept("xxx"); //接受通話呼叫
    ...
    model.hangup(false); //掛斷通話
  • 多人通話/會議場景

    AUICallNVNModel model = new AUICallNVNModelImpl(); //構造多人音視頻業務接口實例
    ...
    model.create(new CreateRoomCallback(){ //創建多人音視頻通話房間
        public void OnSuccess(String roomId){
            //房間創建成功
        }
    
        public void onError(int code, String msg){
            ...
        }
    });
    ...
    model.join("xxx", true, true); //加入多人音視頻通話房間
    ...
    model.invite("xxx"); //邀請用戶加入多人音視頻通話房間
    ...
    model.leave(); //離開多人音視頻通話房間

基于AUIRoomEngine開發高級功能

AUIRoomEngine是一套通用業務解決方案的模型與API,主要針對基于音視頻在線實時通信的業務場景,如會議、課堂、通話等。主要目的是為了降低在對接上述業務場景開發時的復雜度,沉淀通用業務技術接口,提升業務開發效率。

AUIRoomEngine基于通話會議場景提供的是無UI細粒度的接口,AUICall基于AUIRoomEngine的API實現包含UI交互的通話功能,如果有更多高級功能的開發,可以基于AUICall進行二次開發,直接調用AUIRoomEngine的API來完成。

相關API

  • AUIRoomEngine

  • AUIRoomEngineObserver

詳細接口文檔請參見Android端API參考

問題咨詢

更多問題咨詢及使用說明,請搜索釘釘群(36480010946)加入音視頻通話客戶支持群聯系我們。