hybrid-mobile-app - How to design a multi platform video conference/chat app?
问题描述
I am a developer who is still learning . I want to design an app which can allow multiple people to have a video conference/chats simultaneously something like zoom . I know i can design native apps like specific for Android as well as iOS but I am still learning Android development and have no idea about iOS code .I searched and found that we can have hybrid apps having React,Node.js or with Angular.js and they work on different platforms .But as I'm a newbie I need suggestions as well as guidance .what I'm expecting in my app are following things :
- Should support all video resolutions and audio quality, should work in low and high network scenarios
- Should be low on usage of power/ processor
- Should not have any external hardware dependency
- Should work on any device
- 会议期间应该有聊天选项,即使是多人会议
- 应该有登录和非登录选项来加入会议
- 可以是基于浏览器和/或应用程序的界面
- 应该有加密的网络通信
- 应该有音频/视频录制功能
- 应具有屏幕/文件共享功能
- 应该允许音频在聊天期间关闭字幕(多语言)
- 应该有能力主持多个并发会议,每个会议有多个参与者我知道涉及我讨论的所有内容是一项乏味的任务,但我需要指导如何做到这一点。
我已经告诉了我的期望,所以现在我想知道我需要执行哪些步骤,如何开始以及从哪里开始,我应该选择什么语言/库,是否有一个混合应用程序是一个好主意或者我应该选择本机应用程序。正如我之前所说,我是一名学习者,所以我将学习每件事来完成我的项目,所以无论是反应、节点还是角度,还是任何有经验的开发人员都会在这里建议/指导。我知道我的问题可能看起来很宽泛甚至含糊,但我仍然只是因为我将堆栈溢出视为一群支持的有成就的编码人员。希望你们能帮助我完成我的项目。谢谢!
解决方案
好的,那么你有很多工作要做。我将为您指出一些参考资料,它们应该会给您一个良好的开端。我会尽量保持简短。
正如您所提到的,WebRTC 是要走的路。
使用 WebRTC,您可以为基于开放标准的应用程序添加实时通信功能。它支持在对等点之间发送视频、语音和通用数据,允许开发人员构建强大的语音和视频通信解决方案。该技术可用于所有现代浏览器以及所有主要平台的本机客户端。
该博客详细解释了 WebRTC 的功能 - https://medium.com/@anto.christo.20/understanding-web-real-time-communication-webrtc-d4cec5a43f2f
该博客解释了如何在 android 中构建 peer2peer 视频通话 - https://medium.com/@anto.christo.20/understanding-web-real-time-communication-webrtc-d4cec5a43f2f
https://webrtc.org/还包含许多包括示例代码在内的入门材料。
完成此操作后,您可以在其上添加其他功能。
现在,这将处理 peer2peer 但如果您想从头开始构建多用户功能,则需要一些额外的工作,如答案中所述 -如何使用 webRTC、node.js 和套接字.io
推荐阅读
- webos - 如何获取 webos 电视上已安装应用程序的列表?
- java - Android Java无法在片段中显示requestPermission
- c++ - 将 slice_array 分配给另一个 slice_array 是否正确?
- embedded - 我如何 JIT 编译代码以跨操作系统和裸机运行?
- asp.net-core - 我在哪里可以找到与用户注册相关的 IdentityErrors 列表?
- javascript - 使用 express/node.js 启动服务器时出错。跟随 The Coding Train YouTube 教程
- sql - 选择日期列,后跟 (DATE)
- google-cloud-platform - Google Cloud - 没有 storage.buckets.get 访问 Google Cloud Storage 存储桶的权限
- swiftui - SwiftUI onAppear/onDisappear 在 Xcode 11.7 (11E801a) iOS 13.7 中不起作用
- r - 在R中的同一直方图上绘制不同的变量