首頁  >  文章  >  Java  >  如何使用ZEGOCLOUD製作視訊通話應用程式

如何使用ZEGOCLOUD製作視訊通話應用程式

DDD
DDD原創
2024-09-25 06:24:07789瀏覽

How to Make a Video Call App with ZEGOCLOUD

想要建立自己的視訊通話應用程式嗎?多虧了 ZEGOCLOUD,這比您想像的要容易。本指南將向您展示如何逐步建立視訊通話應用程式。 ZEGOCLOUD 提供的工具可以讓流程變得簡單,即使您是應用程式開發新手。

您將學習如何設定專案、新增視訊通話功能以及如何讓應用程式順利運作。我們將介紹您需要了解的基礎知識,從 ZEGOCLOUD 入門到測試您完成的應用程式。最後,您將擁有一個自己建立的可用視訊通話應用程式。

無論您是初學者還是有一定的編碼經驗,本指南都將幫助您使用ZEGOCLOUD快速輕鬆地創建視訊通話應用程式。

製作一個應用程式需要多長時間?

建立應用程式需要時間,確切的持續時間取決於應用程式的複雜性和功能。具有基本功能的簡單應用程式可能需要大約 2-3 個月的時間來開發。這些應用程式通常具有最少的功能,例如幾個螢幕和標準功能。

另一方面,包含用戶身份驗證、資料庫整合或即時更新等功能的更複雜的應用程式可能需要 4-6 個月或更長時間。這些應用程式需要更詳細的規劃、設計和測試,以確保一切順利運作。

影響開發時間的另一個因素是專案團隊的規模。規模較大、經驗豐富的團隊可能會比規模較小的團隊更快完成應用程式。溝通和專案管理的品質也會影響應用程式的完成速度。

還要注意的是,應用程式開發並不會在發布後結束。需要定期更新和維護來修復錯誤並保持應用程式順利運行。

整體而言,建立應用程式可能需要幾個月到一年以上的時間,具體取決於專案的範圍。良好的規劃和對應用程式要求的清晰了解有助於加快流程。

iOS 應用程式開發與 Android 應用程式開發:有什麼不同?

製作行動應用程式時,您可以選擇適用於 Apple 裝置的 iOS 或適用於許多其他手機的 Android。兩者都很受歡迎,但它們有一些關鍵的區別。讓我們來比較一下它們:

Criteria

iOS App Development

Android App Development

Programming Language Swift and Objective-C Kotlin and Java
Development Environment Xcode Android Studio
Device Fragmentation Less device variety, easier to test Wide range of devices, harder to test
App Store Approval Strict review process Less strict, faster approval
Market Share Popular in North America and Europe Dominates in Asia, Africa, and more
Development Cost Usually higher due to stricter guidelines Can be lower, but depends on the complexity
Revenue Potential Higher app revenue per user Larger audience, but lower revenue per user

主要區別:

  • 程式語言: iOS 應用程式使用 Swift 或 Objective-C 構建,而 Android 應用程式使用 Kotlin 或 Java。 Swift 更新且更容易學習,而 Kotlin 在 Android 裝置上更通用。
  • 裝置碎片: iOS 開發人員處理的裝置型號更少,讓測試更簡單。然而,Android 開發人員需要考慮許多不同的設備和螢幕尺寸。
  • 收入潛力: iOS 應用程式通常會產生更高的收入,尤其是來自應用程式內購買的收入。 Android 應用程式吸引了更多受眾,但每位用戶賺取的收入可能會減少。

總的來說,這兩個平台都具有獨特的優勢,選擇取決於您的目標受眾和目標。

如何創建適用於 Android 和 iOS 的視訊通話應用程式

建立適用於 Android 和 iOS 的視訊通話應用程式可能看起來很棘手,但使用正確的工具,這比您想像的要容易。在本節中,我們將向您展示如何使用 ZEGOCLOUD Express SDK 來完成此操作。

ZEGOCLOUD 是一個強大的平台,可輕鬆地將即時視訊和音訊功能添加到您的應用程式中。它會處理複雜的部分,因此您可以專注於為使用者提供流暢的體驗。透過 ZEGOCLOUD,建立適用於 Android 和 iOS 的視訊通話應用程式既快速又簡單。

先決條件

在我們開始之前,讓我們確保您擁有所需的一切:

  • 註冊ZEGOCLOUD開發者帳號。
  • 從ZEGOCLOUD管理儀表板取得您的AppID和AppSign。
  • 已安裝 Android Studio 2020.3.1 以上版本或 Xcode 13.0 for iOS 應用程式。
  • 使用運行 Android 4.4 或 iOS 9.0 或更高版本且支援音訊和視訊的裝置。
  • 了解 Android 或 iOS 應用程式開發。
  • 確保您的裝置已連接到網路。

Android 視訊通話應用程式

1.新增SDK依賴

1.1 設定 Gradle

要使用 Zego SDK,您必須透過 Gradle 將 ZegoExpress SDK 加入您的 Android 專案。請依照以下步驟操作:

  • 對於 Android Studio 7.1.0 或更高版本,開啟專案的 settings.gradle 檔案。在 dependencyResolutionManagement 區塊中加入以下程式碼:
dependencyResolutionManagement {
    repositoriesMode.set(RepositoriesMode.FAIL_ON_PROJECT_REPOS)
    repositories {
        maven { url 'https://storage.zego.im/maven' }
        google()
        mavenCentral()
    }
}
  • 對於舊版的 Android Studio,請開啟專案根目錄中的 build.gradle 檔案。在 allprojects 區塊中加入以下程式碼:

    allprojects {
    repositories {
        maven { url 'https://storage.zego.im/maven' }
        google()
        mavenCentral()
    }
    }
    

1.2 增加 SDK 依賴

開啟app/build.gradle 檔案。在依賴項區塊中新增以下行(將 x.y.z 替換為最新的 SDK 版本):

dependencies {
    implementation 'im.zego:express-video:x.y.z'
}

儲存檔案並同步專案。這將添加 ZegoExpress SDK,啟用視訊通話功能。

2、導入SDK

依賴項同步後,將 Zego SDK 匯入到您的主要 Activity 中,以便您可以開始實現視訊通話功能。

開啟 MainActivity.java 或 MainActivity.kt 檔案。新增以下導入語句:

import im.zego.zegoexpress.ZegoExpressEngine;

此匯入可讓您使用 Zego SDK 的核心功能。

3. 實現視訊通話功能

3.1 定義應用程式憑證

您需要定義從ZEGOCLOUD儀表板取得的AppID和AppSign。

在主活動檔案中,加入以下變數:

String appID = "c12dbc38b67451a9ee8a0ba266840aab";  // Replace with your actual AppID
String appSign = "fe1529d55bcbcc0fa462cba668b8f2bd";  // Replace with your actual AppSign

3.2 定義使用者和房間資訊

現在,定義 userID、userName 和 roomID 來識別使用者和視訊通話室。定義變數:

String userID = "fc4a8a14869bc3b8f84d052a35378195";   // Replace with your actual user ID
String userName = "c157e43fc1e6147c21d7b2f420f7501f"; // Replace with your actual user name
String roomID = "93429f3717703a6e1b861e1d1565e862";   // Replace with your actual room ID

3.3 初始化 Zego 引擎

開始通話之前,您必須初始化Zego引擎。該引擎將處理所有視訊通話操作。加入以下方法來初始化引擎:

void createEngine() {
    ZegoEngineProfile profile = new ZegoEngineProfile();
    profile.appID = Long.parseLong(appID);
    profile.appSign = appSign;
    profile.application = getApplication();
    profile.scenario = ZegoScenario.DEFAULT; // Set the appropriate scenario
    ZegoExpressEngine.createEngine(profile, null);
}

此方法使用 appID 和 appSign 初始化 ZegoExpressEngine。該場景設定為 DEFAULT,這對於一般用例來說很好。

3.4 發動並加入視訊通話

現在,實現啟動和加入視訊通話的方法。

開始視訊通話:

void startVideoCall() {
    ZegoExpressEngine.getEngine().startPublishingStream(roomID);
}

加入視訊通話:

void joinVideoCall() {
    ZegoExpressEngine.getEngine().startPlayingStream(roomID);
}

4. 配置設備權限

為了視訊通話存取您的攝影機和麥克風,您需要在 AndroidManifest.xml 檔案中請求權限。開啟AndroidManifest.xml檔案並新增以下權限:

eafa53ed60cf631bb40427ba7fd27cc3
cc4be989b182b85ab53d6e27e2649273
80768a34d765d25f66049afad58fea64

對於Android 6.0以上版本,您也需要要求執行時間權限:

String[] permissions = {"android.permission.CAMERA", "android.permission.RECORD_AUDIO"};
if (Build.VERSION.SDK_INT >= Build.VERSION_CODES.M) {
    requestPermissions(permissions, 101);
}

5. 運行和測試您的 Android 應用程式

設定權限後,您現在可以運行並測試您的 Android 應用程式:

  • Build and run your app on a real Android device.
  • Test the video call by starting the call on one device and joining the call on another using the same roomID.

iOS Video Call App

1. Adding the SDK Dependencies

1.1 Setting Up Swift Package Manager

For iOS, you will use Swift Package Manager to add the ZegoUIKitPrebuiltLiveStreaming SDK. Follow the steps below:

  • Open Xcode, and go to File > Add Packages.
  • In the search box, enter the following URL:
https://github.com/zegolibrary/express-video-ios

Select the latest version and add the package to your project.

2. Importing the SDK

Once the SDK is installed, you need to import it into your ViewController.swift file. In your ViewController.swift file, add the following import statements:

import ZegoUIKit
import ZegoUIKitPrebuiltLiveStreaming

These import statements give you access to the Zego video call SDK.

3. Implementing Video Call Functionality

3.1 Define App Credentials

You need your AppID and AppSign to authenticate your app with ZEGOCLOUD. Add the following credentials at the top of your ViewController.swift file:

let appID: UInt32 = 0122b644d0a0273642508c49a6bb2b8e  // Replace with your actual AppID
let appSign: String = "86c79318892e84f5d80aa6d0c14c7516"  // Replace with your actual AppSign

3.2 Define User and Room Information

Now, define the userID, userName, and roomID variables for identifying users and the room. Add these variables:

var userID: String = "fc4a8a14869bc3b8f84d052a35378195"   // Replace with actual user ID
var userName: String = "c157e43fc1e6147c21d7b2f420f7501f" // Replace with actual user name
var roomID: String = "93429f3717703a6e1b861e1d1565e862"   // Replace with actual room ID

3.3 Initializing the Zego Engine

Like Android, you must initialize the Zego engine on iOS to handle video call functionality. Add the function below:

func createEngine() {
    let profile = ZegoEngineProfile()
    profile.appID = appID
    profile.appSign = appSign
    ZegoExpressEngine.createEngine(with: profile, eventHandler: self)
}

This function initializes the Zego engine with your credentials.

3.4 Starting and Joining a Video Call

To start a video call as a host:

func startVideoCall() {
    ZegoExpressEngine.shared().startPublishingStream(roomID)
}

To join an existing video call:

func joinVideoCall() {
    ZegoExpressEngine.shared().startPlayingStream(roomID)
}

4. Configuring Device Permissions

In iOS, you need to request camera and microphone permissions in the Info.plist file. Open the Info.plist file and add the following keys:

42538adbdb6240b2b083a000a615d5bdNSCameraUsageDescription9780a7140ed8471d130dc57bcb9b0bd2
98c455a79ddfebb79781bff588e7b37eWe need access to your camera for video calls.dba3c644993c36696c11b074e67a4078
42538adbdb6240b2b083a000a615d5bdNSMicrophoneUsageDescription9780a7140ed8471d130dc57bcb9b0bd2
98c455a79ddfebb79781bff588e7b37eWe need access to your microphone for video calls.dba3c644993c36696c11b074e67a4078

These entries will display permission prompts when the user first opens the app.

5. Running and Testing Your Video Call App

Once your permissions are set, you can now test your app:

  • Open the .xcworkspace file in Xcode, select your target device, and run the app.
  • Start a video call on one device, then join it from another device using the same room ID to test the feature.

These are just the basics. To add more features to your video call app, explore ZEGOCLOUD’s Express Video SDK documentation. You can also get started with our sample source code!

Conclusion

Building a video call app with ZEGOCLOUD is a straightforward process, whether you're developing for Android or iOS. By following this guide, you can set up your project, integrate essential video calling features, and test the app on real devices. ZEGOCLOUD’s powerful SDK simplifies the implementation, allowing you to focus on user experience rather than complex backend processes.

Start building your custom video call app today and create seamless communication experiences for your users.

以上是如何使用ZEGOCLOUD製作視訊通話應用程式的詳細內容。更多資訊請關注PHP中文網其他相關文章!

陳述:
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn