全部產品
Search
文件中心

Intelligent Media Services:Android使用指南

更新時間:Mar 04, 2026

通過閱讀本文,您可以瞭解如何在Android端接入AI即時互動音視頻智能體。

源碼說明

源碼下載

下載地址請參見GitHub開源專案

源碼結構

├── Android       		//Android平台工程結構跟目錄
│   ├── AUIBaseKits     //AUI基礎組件
│   ├── AUIAICall       //UI組件
│   ├── README.md
│   ├── app             //Demo入口
│   ├── build.gradle  
│   └── settings.gradle

環境要求

  • Android Studio 外掛程式版本4.1.3

  • Gradle 7.0.2

  • Android Studio內建 JDK11

前提要求

已在您的服務端上開發了相關介面或直接部署提供的Server源碼,搭建步驟請參見專案部署

跑通Demo

  1. 源碼下載後,使用Android Studio開啟Android目錄。

  2. 開啟工程檔案build.gradle,修改包ID。

  3. 開啟智能體情境設定檔/AUIAICall/src/main/assets/AgentConfig/agent_scenes.json,根據智能體類型,填寫智能體Id及所在的地區。例如:配置語音智能體時,找到agent_typeVoiceAgent的Scenes節點,填寫agent_idregion的欄位值。

    // 下面樣本如何配置語音通話智能體
        {
          "agent_type": "VoiceAgent",
          "scenes": [
            {
              "agent_id": "<語音通話智能體Id>",
              "region": "<語音通話智能體Id所在的地區>",
              "title": "語音通話",
              "tags": [],
              "limit_seconds": 1800,
              "description": "",
              "asr_model_id": "xxx",
              "tts_model_id": "xxx",
              "voice_styles": []
            }
          ]
        }
    說明

    只體驗一種智能體時,只需要設定該智能體類型的agent_idregion欄位值即可。region 值請參考下表的 Region ID 列。

    地區名稱

    Region Id

    華東1(杭州)

    cn-hangzhou

    華東2(上海)

    cn-shanghai

    華北2(北京)

    cn-beijing

    華南1(深圳)

    cn-shenzhen

    新加坡

    ap-southeast-1

  4. 完成智能體配置後,您可以通過以下兩種方式來啟動智能體:

    • 已部署AppServer: 如果你已經在您的服務端上部署了阿里雲提供的AppServer源碼,您還需要進入檔案AppServiceConst.java,修改服務端網域名稱。

      // AppServiceConst.java
      String HOST = "你的應用伺服器網域名稱";
    • 未部署AppServer:如果您還未部署AppServer源碼,需要快速跑通Demo並體驗智能體。那麼您需要進入檔案AUIAICallAuthTokenHelper.java,配置EnableDevelopToken參數,並從控制台拷貝智能體使用的ARTC的App Id和APP Key,在App端產生啟動鑒權Token。

      重要

      該方法需在本地填寫AppKey等敏感資訊,僅適用於體驗及開發階段,不能用於線上發布,以防止因AppKey被盜取而導致的安全事故。

      // AUIAICallAuthTokenHelper.java
      public class AUIAICallAuthTokenHelper {
          // 設定為true,啟動Develop模式
          private static final boolean EnableDevelopToken = true;
      
          //從控制台拷貝音視訊通話RTCAppId
          private static final String AICallRTCDevelopAppId = "智能體使用的RTC的AppId";
          // 從控制台拷貝音視訊通話RTCAppKey
          private static final String AICallRTCDevelopAppKey = "智能體使用的RTC的AppKey";
      }

      擷取音視頻ARTC應用的AppId和AppKey步驟如下:

      1. 前往智能媒體控制台,單擊您建立好的智能體,進入智能體詳情頁面。

        image

      2. 單擊RTC AppID,前往ApsaraVideo for Live控制台,擷取AppId和AppKey。

        image

快速開發自己的AI通話功能

可通過以下幾個步驟快速整合AUIAICall到您的APP中,讓您的APP具備智能體音視訊通話功能。

整合源碼

  1. 匯入AUIAICall:倉庫代碼下載後,Android Studio菜單選擇:File -> New -> Import Module,匯入AUIAICall和AUIBaseKits檔案夾。

  2. 修改檔案夾下的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_ARTC:x.x.x'                  //修改x.x.x為你工程適配的版本
        implementation 'com.aliyun.auikits.android:ARTCAICallKit:x.x.x'
        implementation 'com.alivc.live.component:PluginAEC:2.0.0'
    }
    說明
    • ARTC SDK最新版本:7.10.0

    • AICallKit SDK最新版本:2.11.0

  3. 等待gradle同步完成,完成源碼整合。

源碼配置

  • 已完成前提條件所需步驟。

  • 進入AppServiceConst.java檔案,修改服務端網域名稱。

    // AppServiceConst.java
    String HOST = "你的應用伺服器網域名稱";
    說明

    如果您還未部署AppServer,您可以使用App端產生鑒權Token的方式,快速測試並跑通Demo。詳細內容,請參見未部署AppServer

調用API

上述工作完成後,接下來可以根據自身的業務情境和互動,在您APP其他模組或首頁上通過組件介面啟動AI通話,也可以根據自身的需求修改源碼。

/** 啟動之前保證麥克風、網路攝影機許可權已授權 */
Context currentActivity = AUIAICallEntranceActivity.this;
Intent intent = new Intent(currentActivity, AUIAICallInCallActivity.class);

// 設定通話的類型(語音、數字人或視覺理解),需要與AgentId的類型對應
ARTCAICallEngine.ARTCAICallAgentType aiCallAgentType = 
    ARTCAICallEngine.ARTCAICallAgentType.VoiceAgent;
// 智能體ID, 不能為nil
String aiAgentId = "";
// 智能體所在的地區,不能為nil
String aiAgentRegion = "";
// 進入rtc的使用者id,建議使用業務的登入使用者id
String userId = "123";
// 通話鑒權Token,參考:https://www.alibabacloud.com/help/zh/ims/user-guide/generate-artc-authentication-token?spm=a2c4g.11186623.0.0.1ce65bc4BKdQy7
String token = "";

intent.putExtra(AUIAIConstStrKey.BUNDLE_KEY_LOGIN_USER_ID, userId);
// 智能體類型
intent.putExtra(AUIAIConstStrKey.BUNDLE_KEY_AI_AGENT_TYPE, aiCallAgentType);
// 智能體ID
intent.putExtra(AUIAIConstStrKey.BUNDLE_KEY_AI_AGENT_ID, aiAgentId);
//智能體所在地區
intent.putExtra(AUIAIConstStrKey.BUNDLE_KEY_AI_AGENT_REGION, aiAgentRegion);
//設定通話鑒權Token
intent.putExtra(AUIAIConstStrKey.BUNDLE_KEY_RTC_AUTH_TOKEN, token);

currentActivity.startActivity(intent);
說明

通話鑒權Token產生,請參見產生ARTC鑒權Token