想要建立自己的視訊通話應用程式嗎?多虧了 ZEGOCLOUD,這比您想像的要容易。本指南將向您展示如何逐步建立視訊通話應用程式。 ZEGOCLOUD 提供的工具可以讓流程變得簡單,即使您是應用程式開發新手。
您將學習如何設定專案、新增視訊通話功能以及如何讓應用程式順利運作。我們將介紹您需要了解的基礎知識,從 ZEGOCLOUD 入門到測試您完成的應用程式。最後,您將擁有一個自己建立的可用視訊通話應用程式。
無論您是初學者還是有一定的編碼經驗,本指南都將幫助您使用ZEGOCLOUD快速輕鬆地創建視訊通話應用程式。
建立應用程式需要時間,確切的持續時間取決於應用程式的複雜性和功能。具有基本功能的簡單應用程式可能需要大約 2-3 個月的時間來開發。這些應用程式通常具有最少的功能,例如幾個螢幕和標準功能。
另一方面,包含用戶身份驗證、資料庫整合或即時更新等功能的更複雜的應用程式可能需要 4-6 個月或更長時間。這些應用程式需要更詳細的規劃、設計和測試,以確保一切順利運作。
影響開發時間的另一個因素是專案團隊的規模。規模較大、經驗豐富的團隊可能會比規模較小的團隊更快完成應用程式。溝通和專案管理的品質也會影響應用程式的完成速度。
還要注意的是,應用程式開發並不會在發布後結束。需要定期更新和維護來修復錯誤並保持應用程式順利運行。
整體而言,建立應用程式可能需要幾個月到一年以上的時間,具體取決於專案的範圍。良好的規劃和對應用程式要求的清晰了解有助於加快流程。
製作行動應用程式時,您可以選擇適用於 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 |
主要區別:
總的來說,這兩個平台都具有獨特的優勢,選擇取決於您的目標受眾和目標。
建立適用於 Android 和 iOS 的視訊通話應用程式可能看起來很棘手,但使用正確的工具,這比您想像的要容易。在本節中,我們將向您展示如何使用 ZEGOCLOUD Express SDK 來完成此操作。
ZEGOCLOUD 是一個強大的平台,可輕鬆地將即時視訊和音訊功能添加到您的應用程式中。它會處理複雜的部分,因此您可以專注於為使用者提供流暢的體驗。透過 ZEGOCLOUD,建立適用於 Android 和 iOS 的視訊通話應用程式既快速又簡單。
先決條件
在我們開始之前,讓我們確保您擁有所需的一切:
1.1 設定 Gradle
要使用 Zego SDK,您必須透過 Gradle 將 ZegoExpress SDK 加入您的 Android 專案。請依照以下步驟操作:
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,啟用視訊通話功能。
依賴項同步後,將 Zego SDK 匯入到您的主要 Activity 中,以便您可以開始實現視訊通話功能。
開啟 MainActivity.java 或 MainActivity.kt 檔案。新增以下導入語句:
import im.zego.zegoexpress.ZegoExpressEngine;
此匯入可讓您使用 Zego SDK 的核心功能。
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); }
為了視訊通話存取您的攝影機和麥克風,您需要在 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); }
設定權限後,您現在可以運行並測試您的 Android 應用程式:
1.1 Setting Up Swift Package Manager
For iOS, you will use Swift Package Manager to add the ZegoUIKitPrebuiltLiveStreaming SDK. Follow the steps below:
https://github.com/zegolibrary/express-video-ios
Select the latest version and add the package to your project.
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.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) }
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.
Once your permissions are set, you can now test your app:
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!
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中文網其他相關文章!